Skip to the content
PCBKitNew board
2 layers39.3 × 75.7 mmWavetablePi, the printed circuit board in 3D

A wavetable module powered by a Raspberry Pi Zero 2W and mt32-pi

Size
39.3 × 75.7 mm
Copper layers
2
Thickness
1.6 mm
Parts
13
Nets
23
Pads
107
Tracks, vias
169, 20
Pours
2
Routed
Yes
KiCad
KiCad 5 (file 20171130)
Created
16 Jan 2023
Updated
17 Mar 2025

Overview

WavetablePi is an open-source printed circuit board by scrapcomputing, from the scrapcomputing/WavetablePi repository on GitHub, published under the GPL-2.0 licence. It is a 2-layer board of 39.3 × 75.7 mm with 13 parts on 23 nets, routed with 169 tracks and 20 vias.

Its parts include 2 capacitors and 2 resistors. It belongs with the audio and music boards and the Raspberry Pi (Linux) boards of this library.

README

README.md

WavetablePi

WavetablePi is a wavetable module based on the Raspberry Pi Zero 2 W running mt32-pi. It is capable of emulating several midi synthesizers, including mt32, sc55 and general midi with custom sound fonts. For a complete feature list please refer to the mt32-pi project.

For controlling the mt32-pi from DOS, please use mt32-pi-control.

WavetablePi with OLED Display and DAC

WavetablePi PCB Front WavetablePi PCB Back WavetablePi Schematic

Features

  • It currently supports two modes of audio: using the raspberry pi's PWM audio out (which is noisy and sounds pretty bad), and an external Hi-Fi PCM5102A based DAC.
  • You can also attach a 0.91 OLED SSD1306 I2C 128x32 display.
  • Starting from rev 0.3 PWM audio is filtered by a simple low-pass filter (R3-C3 and R4-C4).

I want to build one myself!

  • Please note that the current version of the WavetablePi board is quite tall (76mm x 40mm) so please check if it fits your sound card, especially if it needs to be placed perpendicularly to the ISA slots.
  • Also please make sure that there is enough clearance between the WavetablePi and the sound card. Some cards have large components that may touch the raspberry pi a
  • A WavetablePi with the DAC or the OLED display takes quite a bit of vertical space, so you will end up wasting one ISA slot! There is just no room for a card right next to the sound card, as the OLED display and the DAC will be in the way.
  • Finally please check that the PCM5102A HiFi DAC is in the form factor that fits the board. The one I am using is approximately 32mm x 17mm. Also please check that the pinout matches.
  • For ordering the PCB, you usually just need to upload the zipped gerber files to the fab's website.

Assembly Tips / Troubleshooting

  • For attaching the Pi flush against the board, it may be better to cut the 40-pin header into short sections (like 2x3) before soldering them. This should make it easier to solder and to remove the plastic spacers after soldering.
  • DAC Board: Before soldering, check if the address solder bridges on the back are set: https://github.com/dwhinham/mt32-pi/wiki/GY-PCM5102-DAC-module
  • If the music sounds weird, or slow check mt32-pi.cfg. You may need to set gpio_baud_rate = 31250.
  • Please check out the detailed documentation of the mt32-pi project: https://github.com/dwhinham/mt32-pi

These tips are based on feedback from ThatRed (many thanks!). Feel free to check out the full text: https://github.com/scrapcomputing/WavetablePi/issues/1

Videos

Bill of materials

Item#Description
Raspberry Pi Zero 2 W1The older RPi Zero is not fast enough
40-pin 2x20 male header 2.54mm pitch1For attaching the RPi to the board.
26-pin 2x13 female header 2.54mm pitch1For attaching the board to the wavetable header
6-pin 2x3 pin male header 2.54mm pitch1For the audio select jumpers
Jumper 2.54mm pitch2Jumpers for the audio selection header
Capacitor 10uF through-hole ceramic2
Capacitor 100nF through-hole ceramic2C3 and C4 which form the PWM audio low-pass filter along with R3 and R4. 100nF is for a 1.6KHz cutoff frequency. Use lower values for higher cutoff
Resistor 22K Ohm1
Resistor 10K Ohm1
Resistor 1K Ohm2R3 and R4, which along with C3 and C4 form a low-pass filter of the PWM audio
0.91 OLED SSD1306 I2C 128x32 module1(Optional)
PCM5102A I2S DAC Module (aka GY PCM5120)1(Optional but highly recommended) Please check the PCB for the supported dimensions and form factor!

Parts

13
QtyValueFootprintReferences
210uFCapacitor_THT:C_Rect_L7.0mm_W2.0mm_P5.00mm10uF, 10uF
21KResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_HorizontalR3, R4
1100nFCapacitor_THT:C_Rect_L7.0mm_W2.0mm_P5.00mmC3
110KResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_Horizontal10K
122KResistor_THT:R_Axial_DIN0207_L6.3mm_D2.5mm_P7.62mm_Horizontal22K
1CCapacitor_THT:C_Rect_L7.0mm_W2.0mm_P5.00mmC4
1Conn_02x03_Odd_EvenConnector_PinHeader_2.54mm:PinHeader_2x03_P2.54mm_VerticalAudio Select
1Conn_02x13_Odd_EvenConnector_PinSocket_2.54mm:PinSocket_2x13_P2.54mm_VerticalWavetable1
1GY_PCM5102ACustom:GY_PCM5102ADAC1
1LCD_0.91_OLEDCustom:LCD_0.91_OLEDLCD1
1RPiZero2WCustom:RPiZero2WRaspberry Pi Zero 2 W

Questions

How big is the WavetablePi PCB?

It measures 39.3 × 75.7 mm and has 2 copper layers, 1.6 mm thick.

What parts does the WavetablePi use?

13 parts. 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 WavetablePi KiCad files?

From the scrapcomputing/WavetablePi repository on GitHub, at the commit this page was made from: the board is kicad/WavetablePi.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.

Can I use the WavetablePi design in my own project?

Its repository publishes it under the GPL-2.0 licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).

Similar boards

  • 2 layers40 × 20 mmUsb uart, the printed circuit board in 3D

    Usb uart

    earthtojake/text-to-cad

    Design physical products with AI

    13 parts26kMIT
  • 2 layers35 × 29 mmMagSpoofTC, the printed circuit board in 3D

    MagSpoofTC

    samyk/magspoof

    A portable device that can spoof/emulate any magnetic stripe, credit card or hotel card "wirelessly", even on standard magstripe (non-NFC/RFID) readers.

    13 parts4.2k
  • 2 layers20.6 × 23.6 mmAO-03 signal amplifier, the printed circuit board in 3D

    AO-03 signal amplifier

    fossasia/pslab-scripts

    Pocket Science Lab - Scripts for Sensor Experiments

    13 parts1.6kApache-2.0
  • 2 layers47 × 35.6 mmMX7-C-35PL C11, the printed circuit board in 3D

    MX7-C-35PL C11

    rusefi/rusefi

    rusefi - GPL internal combustion engine control unit

    13 parts1.2k
  • 2 layers95 × 95 mmCube batteryboard, the printed circuit board in 3D

    Cube batteryboard

    willem-pennings/balancing-cube

    A cube that balances itself in a corner or edge using reaction wheels

    13 parts1.1kGPL-3.0
  • 2 layers15.2 × 20.3 mmPt100stick, the printed circuit board in 3D

    Pt100stick

    VoronDesign/Voron-Hardware

    Cool Hardware designed by the Voron Design group

    13 parts1.1kGPL-3.0
  • 2 layers53.9 × 23.2 mmBuffer, the printed circuit board in 3D

    Buffer

    hoglet67/RGBtoHDMI

    Bare-metal Raspberry Pi project that provides pixel-perfect sampling of Retro Computer RGB/YUV video and conversion to HDMI

    13 parts1kGPL-3.0