Skip to the content
PCBKitNew board
2 layers120 × 66 mmIo daughterboard, the printed circuit board in 3D

A virtual analog synthesizer with lots of knobs and buttons.

Size
120 × 66 mm
Copper layers
2
Thickness
1.6 mm
Parts
136
Nets
191
Pads
603
Tracks, vias
1,637, 117
Pours
2
Routed
Yes
KiCad
KiCad 4
Created
29 May 2015
Updated
7 Jan 2017

Overview

Io daughterboard is an open-source printed circuit board by kbob, from the kbob/MinimumViableSynth repository on GitHub, published under the GPL-3.0 licence. It is a 2-layer board of 120 × 66 mm with 136 parts on 191 nets, routed with 1,637 tracks and 117 vias.

It is built around the 74HC244D, FAN5333BSX and SN74LV1T34DCKR, with the SPX3819M5-L-3-3, FH12A-40S-0.5SH(55) and MBR0540 among its other parts. Its parts include 35 resistors, 22 connectors, 16 capacitors, 11 ICs and 2 diodes. It belongs with the audio and music boards of this library.

Main components

6

README

README.md

MinimumViableSynth

A virtual analog synthesizer with lots of knobs and buttons.

front panel image

This is a polyphonic, monotimbral, virtual analog synth. The audio engine runs as an Apple Audio Unit on a Macintosh. The control panel, shown here, will provide dedicated controls for most of the synth's functions.

assembly animation

The end goal is a self contained keyboard synth with knobs and buttons with the classic connections: audio out, MIDI in/out, USB MIDI in/out. I am getting there in three phases.

  • Phase 1 (complete 2015-01-01): Softsynth. The audio engine runs as an Audio Unit on a Mac. It accepts MIDI messages and produces beautiful polyphonic analog sounds. Or gritty, disturbing analog sounds. It plugs in to DAW software (I use Logic Pro X).

  • Phase 2 (in progress): Knobs and buttons. I am designing and building a front panel (see above) with knobs, buttons, and an LCD touchscreen. The goal is to make it as easy as possible to understand what the synth is doing at any time.

  • Phase 3 (future): Stand-alone. Build an enclosure that houses a keyboard, the knob and button panel, I/O jacks, and a processor (TBD) that can run the audio engine. I'm looking at FPGAs...

Why?

Learn stuff. Music theory, DSP, PCB layout, CAD and machining, more.

Status

Check out synth-notes.txt for my thoughts as I worked things out.

January 7, 2017:

I built 8 slave modules: the LFOs, the Controllers module, the oscillators, the noise source, mixer, and filter. I've since killed the filter module, and one of the oscillators' LED has burnt out its red component. I have parts and tools to repair those; just haven't done it yet.

I have working UI for the knobs and buttons. Specifically, routing between modulators and targets works, complete with lighting effects.

I made an enclosure from aluminum sheet and melamine end blocks, as illustrated above. It is flimsy, though, so that needs to be re-done.

I had the master, slaves, and LCD panel connected via a breadboard. The breadboard wiring got flaky, so I stopped to design a PCB. The PCB snaps onto the back of the Discovery board, It routes video to the LCD touch screen, SPI to the slaves, and serial MIDI to a future MIDI I/O board.

I am currently designing the graphics for the LCD panel.

(Over a year since the last update. Oops.)

December 17, 2015:

Three slave modules have been built. (LFO1, LFO2, Controllers.) All the slave module PCBs are fabricated.

The master-slave communications are working over SPI. The master generates MIDI events. I can push a button on a slave and hear its effect on the audio engine.

I blew up one of the LFO modules, probably with static discharge. I repaired it (swapped in a new Teensy LC), and it works now. It was an ugly repair.

Current tasks:

  • generating more MIDI events
  • experimenting with the LED animation
  • soldering up the rest of the slave modules
  • designing backing plates for the new slave modules
August 14, 2015:

The audio engine has been stable since January, though it does not exactly match the front panel's feature set.

The front panel was fabricated in July. I used a sheet of acrylic, painted the underside black, then engraved the artwork through the paint with a laser cutter. Then the same laser cutter cut all the holes for the controls. It looks sharp, but not mass produced. I got the work done at InHaus Fabrication.

There is a master microcontroller, an STM32F429, and each module has a slave controller, a Teensy-LC. Each slave directly drives a few knobs, buttons, and LEDs. The master will coordinate all the slaves and provide the MIDI over USB interface. I am currently writing SPI drivers for master-slave communication.

Parts

136
QtyValueFootprintReferences
2110KResistors_SMD:R_0603R1, R2, R3, R4, R10, R11, R17, R18, R20, R21, R23, R24, R26, R27, R29, R30 +5
10100nFCapacitors_SMD:C_0603C1, C2, C3, C4, C5, C6, C7, C8, C9, C12
674HC244Housings_SSOP:TSSOP-20_4.4x6.5mm_Pitch0.65mmU3, U4, U5, U7, U8, U9
4100KResistors_SMD:R_0603R32, R33, R34, R35
44K7Resistors_SMD:R_0603R15, R16, R19, R22
2100Resistors_SMD:R_0603R25, R31
21MResistors_SMD:R_0603R14, R28
21nFCapacitors_SMD:C_0603C15, C16
21µFCapacitors_SMD:C_0805C10, C11
2CONN_02X32daughterfeet:Socket_Strip_Reversed_2x32P1, P2
2SN74LV1T34DCKRTO_SOT_Packages_SMD:SOT-23-5U10, U11
110nFCapacitors_SMD:C_0603C13
110µHInductors:Inductor_Taiyo-Yuden_NR-60xxL1
11µFCapacitors_SMD:C_0603C14
124VDiodes_SMD:SOD-323D2
14.3Resistors_SMD:R_0603_HandSolderingR12
1BARREL_JACKdaughterfeet:BARREL_JACKCON1
1FAN5333BSXTO_SOT_Packages_SMD:SOT-23-5U1
1FH12A-40S-0.5SHdaughterfeet:FH12A-40SJ2
1LOGOdaughterfeet:MVS-logoG***
1MBR0540Diodes_SMD:SOD-123D1
1MIDIConnectors_Molex:Molex_PicoBlade_53047-0410_04x1.25mm_StraightP19
1N/Cdaughterfeet:R_0603_HandSoldering_no_pasteR13
1Resetdaughterfeet:WS-TASVSW1
1SPX3819M5-L-3-3TO_SOT_Packages_SMD:SOT-23-5U2
1STMPE811QTRHousings_DFN_QFN:QFN-16-1EP_3x3mm_Pitch0.5mmU6
1Slave 1Adaughterfeet:Molex_PicoBlade_53047-0610_06x1.25mm_StraightP3
1Slave 1Bdaughterfeet:Molex_PicoBlade_53047-0610_06x1.25mm_StraightP7
1Slave 1Cdaughterfeet:Molex_PicoBlade_53047-0610_06x1.25mm_StraightP11
1Slave 1Ddaughterfeet:Molex_PicoBlade_53047-0610_06x1.25mm_StraightP15
1Slave 3Adaughterfeet:Molex_PicoBlade_53047-0610_06x1.25mm_StraightP4
1Slave 3Bdaughterfeet:Molex_PicoBlade_53047-0610_06x1.25mm_StraightP8
1Slave 3Cdaughterfeet:Molex_PicoBlade_53047-0610_06x1.25mm_StraightP12
1Slave 3Ddaughterfeet:Molex_PicoBlade_53047-0610_06x1.25mm_StraightP16
1Slave 4Adaughterfeet:Molex_PicoBlade_53047-0610_06x1.25mm_StraightP5
1Slave 4Bdaughterfeet:Molex_PicoBlade_53047-0610_06x1.25mm_StraightP9
1Slave 4Cdaughterfeet:Molex_PicoBlade_53047-0610_06x1.25mm_StraightP13
1Slave 4Ddaughterfeet:Molex_PicoBlade_53047-0610_06x1.25mm_StraightP17
1Slave 5Adaughterfeet:Molex_PicoBlade_53047-0610_06x1.25mm_StraightP6
1Slave 5Bdaughterfeet:Molex_PicoBlade_53047-0610_06x1.25mm_StraightP10
1Slave 5Cdaughterfeet:Molex_PicoBlade_53047-0610_06x1.25mm_StraightP14
1Slave 5Ddaughterfeet:Molex_PicoBlade_53047-0610_06x1.25mm_StraightP18
1Userdaughterfeet:WS-TASVSW2
1XF2L-0625-1Adaughterfeet:XF2L-0625J1

The 90 most common of 136 parts.

Questions

How big is the Io daughterboard PCB?

It measures 120 × 66 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Io daughterboard use?

136 parts, built around the 74HC244D, FAN5333BSX, SN74LV1T34DCKR and SPX3819M5-L-3-3. 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 Io daughterboard KiCad files?

From the kbob/MinimumViableSynth repository on GitHub, at the commit this page was made from: the board is ECAD/io_daughterboard/pcb/io_daughterboard.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.

Can I use the Io daughterboard design in my own project?

Its repository publishes it under the GPL-3.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 layers71.9 × 98.6 mmArk, the printed circuit board in 3D

    Ark

    tmtrcreations/The_Ark

    PCB design files and configuration files for a Raspberry Pi CM3L based tablet.

    112 parts9MIT
  • 4 layers166.6 × 94 mmPanel, the printed circuit board in 3D

    Panel

    nrdsp/rvPhone

    The goal of the this project is to develop a privacy enhanced, simple and fully featured mobile phone.

    319 parts
  • 4 layers67 × 140.3 mmUnkey, the printed circuit board in 3D

    Unkey

    natecermak/unkey

    Swimmie-Textie

    139 parts
  • 2 layers36 × 42.7 mmKeynjector, the printed circuit board in 3D

    Keynjector

    jhagmar/keynjector

    There are several bad solutions to managing passwords securely, e.g.,

    44 partsGPL-2.0
  • 4 layers70.1 × 122.2 mmGbc cm4-aio, the printed circuit board in 3D

    Gbc cm4-aio

    will-tm/gbc-cm4-aio

    This project is a drop-in replacement board that fits and Gameboy Color shell and use the same IPS display as used in GBC kits.

    130 parts2
  • 2 layers96 × 34.1 mmDABO2, the printed circuit board in 3D

    DABO2

    lkesteloot/alice

    Website documenting a hardware project from the 1990s.

    62 parts79Apache-2.0
  • 4 layers17.8 × 51.6 mmBonsai C4, the printed circuit board in 3D

    Bonsai C4

    customMK/Bonsai-C

    An open-source ARM-based microcontroller board

    59 parts71