Skip to the content
PCBKitNew board
4 layers200 × 130 mmPicoAWG, the printed circuit board in 3D

Arbitrary Waveform Generator for the Raspberry Pi Pico 16 Channels

Size
200 × 130 mm
Copper layers
4
Thickness
1.6 mm
Parts
370
Nets
335
Pads
1,356
Tracks, vias
3,219, 606
Pours
7
Routed
Yes
KiCad
KiCad 8.0 (file 20240108)
Created
31 Mar 2023
Updated
10 May 2024

Overview

PicoAWG is an open-source printed circuit board by Alberta2514640, from the Alberta2514640/EIT-Machine repository on GitHub. It is a 4-layer board of 200 × 130 mm with 370 parts on 335 nets, routed with 3,219 tracks and 606 vias.

It is built around the RP2040, IA0515D and ADA4817-2ACPZ-R7, with the AD9106BCPZ, AD630ARZ and AD7680ARJZ-REEL7 among its other parts. Its parts include 189 capacitors, 128 resistors, 31 ICs, 5 connectors and 4 switches. It belongs with the RP2040 boards of this library.

Main components

12

README

README.md

picoAWG

Arbitrary Waveform Generator for the Raspberry Pi Pico 16 Channels

AWG Desktop Application

Desktop application to interface with Arbitrary Waveform Generator

TODO

  • Implement Control of 16 Channels to Control Amplitude, Frequency, Offset
  • Read Back Output with Monitor to see the output
  • Control LED s as needed

PCB Design

The board design for the waveform generator

TODO

  • Update PCB design to include RP2040 directly and a cheaper OP AMP
  • Update PCB design to shrink the design down to a more reasonable size and add a small status display beyond the current 5 status LEDs.

RP2040 Code

The code loaded onto the Pi Pico.

TODO

  • Monitor Output Needs to be fixed to setup the output
    • Write Values to the Output and Read Corresponding Voltage Changes
  • Control over channels 1-16 with Output Adjustments
    • Split the ADC control and the communication/ led control to seperate cores communicating between one another.
    • Utilize the PIO to drive the SPI peripheral and set the outputs appropriately.
  • Add functions to set the Configuration Register, Offset, Calibration, Data, Registers

Parts

370
QtyValueFootprintReferences
1250.1uCapacitor_SMD:C_0603_1608MetricC10, C11, C12, C100, C101, C102, C103, C108, C109, C110, C115, C116, C117, C118, C119, C124 +109
64499Resistor_SMD:R_0603_1608MetricR10, R11, R12, R13, R14, R15, R16, R17, R18, R19, R20, R21, R31, R32, R33, R34 +48
321.5pCapacitor_SMD:C_0603_1608MetricC27, C28, C29, C30, C36, C37, C38, C39, C111, C112, C113, C114, C120, C121, C122, C123 +16
211kResistor_SMD:R_0603_1608MetricR3, R4, R23, R24, R25, R26, R48, R49, R50, R51, R73, R100, R101, R113, R114, R115 +5
181uCapacitor_SMD:C_0603_1608MetricC4, C7, C48, C49, C50, C51, C76, C77, C104, C105, C106, C107, C132, C133, C134, C135 +2
1649.9Resistor_SMD:R_0603_1608MetricR27, R28, R29, R30, R52, R53, R54, R55, R77, R78, R79, R80, R102, R103, R104, R105
8ADA4817-2ACPZ-R7ADA4817-2ACPZ-R7:CP_16_4_ADIU7, U8, U10, U11, U13, U14, U16, U17
710uCapacitor_SMD:C_0603_1608MetricC16, C17, C19, C20, C21, C22, C23
6240Resistor_SMD:R_0603_1608MetricR119, R120, R121, R122, R126, R127
5100Resistor_SMD:R_0603_1608MetricR123, R124, R125, R129, R131
48.06KResistor_SMD:R_0603_1608MetricR22, R47, R72, R97
4AD9106BCPPackage_CSP:LFCSP-32-1EP_5x5mm_P0.5mm_EP3.6x3.6mmU6, U9, U12, U15
4ADG1406BRUZ-REEL7ADG1406BRUZ:RU_28_ADIU28, U29, U30, U31
31MResistor_SMD:R_0603_1608MetricR106, R107, R109
3TL071HDPackage_SO:SOIC-8_3.9x4.9mm_P1.27mmU19, U20, U23
21nCapacitor_SMD:C_0603_1608MetricC136, C137
227.4Resistor_SMD:R_0603_1608MetricR1, R2
227pCapacitor_SMD:C_0603_1608MetricC1, C2
2500Resistor_SMD:R_0603_1608MetricR116, R117
2M64W202KB40M64W103KB40:POT_2023-08-01_VISRV1, RV2
2NCP1117-3.3_SOT223Package_TO_SOT_SMD:SOT-223-3_TabPin2U3, U4
2PMEG3020CEPDiode_SMD:D_0603_1608MetricD1, D2
2SN74HC595Package_SO:SOIC-16W_5.3x10.2mm_P1.27mmU26, U27
1100kResistor_SMD:R_0603_1608MetricR111
110kResistor_SMD:R_0603_1608MetricR110
110pCapacitor_SMD:C_0603_1608MetricC147
118uInductor_SMD:L_0603_1608MetricL1
12.2uCapacitor_SMD:C_0603_1608MetricC18
14.12kResistor_SMD:R_0603_1608MetricR128
14.7kResistor_SMD:R_0603_1608MetricR5
1470uCapacitor_THT:CP_Radial_D6.3mm_P2.50mmC15
150Resistor_SMD:R_0603_1608MetricR130
1629105150521Connector_USB:USB_Micro-B_Amphenol_10118193-0001LF_HorizontalJ2
1ABLS-12.000MHZ-B4-TCrystal:Crystal_SMD_HC49-SDY1
1AD630ARZPackage_SO:SOIC-20W_7.5x12.8mm_P1.27mmU22
1AD7680ARJZ-REEL7AD7680ARJZ:RJ_6_ADIU18
1AD9512BCPZAD9512BCPZ:CP_48_1_ADIU25
1ANT11SF1CQEANT11SF1CQE:ANT11SF1CQESW3
1BOOT_SELButton_Switch_SMD:SW_Push_SPST_NO_Alps_SKRKSW1
1Barrel_JackConnector_BarrelJack:BarrelJack_GCT_DCJ200-10-A_HorizontalJ4
1CLK4_DIAGConnector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_VerticalJ5
1Conn_02x16Connector_PinHeader_2.54mm:PinHeader_2x16_P2.54mm_VerticalJ3
1F0603E1R25FSTRFuse:Fuse_0603_1608MetricF1
1IA0515DConverter_DCDC:Converter_DCDC_XP_POWER-IAxxxxD_THTPS1
1INA849DRINA849DR:D0008A-IPC_AU21
1M64W103KB40M64W103KB40:POT_2023-08-01_VISRV3
1NCP1117-5.0_SOT223Package_TO_SOT_SMD:SOT-223-3_TabPin2U5
1OPA4228UAOPA4228UA:D14U24
1RP2040Package_DFN_QFN:QFN-56-1EP_7x7mm_P0.4mm_EP3.2x3.2mmU1
1SWD_JPConnector_PinSocket_1.00mm:PinSocket_1x02_P1.00mm_VerticalJ1
1SW_PushButton_Switch_SMD:SW_Push_SPST_NO_Alps_SKRKSW2
1SW_SPDT_321Button_Switch_THT:SW_E-Switch_EG1271_SPDTSW4
1W25Q128JVSPackage_SO:SOIC-8_5.23x5.23mm_P1.27mmU2

The 366 most common of 370 parts.

Questions

How big is the PicoAWG PCB?

It measures 200 × 130 mm and has 4 copper layers, 1.6 mm thick.

What parts does the PicoAWG use?

370 parts, built around the RP2040, IA0515D, ADA4817-2ACPZ-R7 and AD9106BCPZ. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the PicoAWG KiCad files?

From the Alberta2514640/EIT-Machine repository on GitHub, at the commit this page was made from: the board is PCB_Design/picoAWG.kicad_pcb and its schematic PCB_Design/analog.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the PicoAWG design in my own project?

Its repository states no licence, so its author keeps all rights: ask Alberta2514640 before reusing the design.

Similar boards

  • 2 layers67 × 42 mmFuncGen, the printed circuit board in 3D

    FuncGen

    velechit/HomeLAB

    A miniature electronics lab (Oscilloscope + FuncGen + Breadboard + Arduino) for hobbyists

    72 partsGPL-3.0
  • 4 layers82.6 × 82.5 mmJumperless2, the printed circuit board in 3D

    Jumperless2

    Architeuthis-Flux/Jumperless

    A jumperless breadboard

    208 parts914
  • 4 layers102.9 × 96.7 mmPicoGUS chipdown, the printed circuit board in 3D

    PicoGUS chipdown

    polpo/picogus

    Emulation of ISA sound cards and CD-ROM on Raspberry Pi Pico (GUS, SB/Adlib, MPU-401, Tandy, CMS, Panasonic CD-ROM) with USB mouse/joystick support

    99 parts805
  • 2 layers99.1 × 72.9 mmTone ale, the printed circuit board in 3D

    Tone ale

    lxschwalb/tone_ale

    rp2040 based guitar pedal

    57 parts19
  • 2 layers475 × 139.9 mmSkogaslider main pcb, the printed circuit board in 3D

    Skogaslider main pcb

    skogaby/skogaslider

    Firmware, CAD, and PCB files for the skogaslider, an RP2040-based controller to simulate Chunithm's gameplay experience

    175 parts18MIT
  • 2 layers30.1 × 65.1 mmRPi 0 RP2040, the printed circuit board in 3D

    RPi 0 RP2040

    Hugoyhu/Pico2040ZeroW

    Raspberry Pi Form Factor, RP2040, Wireless support with ESP-01

    46 parts7Apache-2.0
  • 2 layers210.1 × 98.3 mmGranola trailmix, the printed circuit board in 3D

    Granola trailmix

    michaelswitzer/granola-trailmix

    The TrailMix is a low-cost professional grade button box style arcade controller.

    48 parts6MIT
  • 2 layers64 × 48.4 mmRp2040-ble, the printed circuit board in 3D

    Rp2040-ble

    kartik2406/rp2040-ble

    A PCB that uses RP2040 MCU and HM-BT4502 BLE passthrough module. This enables the RP2040 to communicated with other devices using Bluetooth. The bluetooth module is connected via UART(0)

    42 parts5