Zynthian Revisited – Part 3

Following on from my prototype IO boards for my Zynthian, here is a PCB design that will hopefully work much better.

RPi-Zynthian-IOBoard-3d

Update:

Warning! I strongly recommend using old or second hand equipment for your experiments.  I am not responsible for any damage to expensive instruments!

These are the key tutorials for the main concepts used in this project:

If you are new to microcontrollers, see the Getting Started pages.

The Circuit

RPi-Zynthian-IOBoard-sch

The circuit has to support the following:

  • MIDI IN and OUT ideally with a proper buffered OUT.
  • PCM5102 DAC
  • Connections for four switched rotary encoders to be connected with debouncing capacitors.
  • Mounting holes for connection to the Raspberry Pi V3 or 4.
  • Mounting holes to allow the Waveshare 4″ screen I’m using to be attached.

PCB Design

RPi-Zynthian-IOBoard-pcb

The first consideration was the mounting of the PCB with attachment to both the Pi and the Waveshare screen.  I’ve opted for cut-outs in the PCB to allow it to be mounted “around” the USB and Ethernet ports.

I initially thought I would be adding MIDI sockets and encoders to the PCB but then decided it would be better to just have header pins for external connections.  This means I was able to utilise two spare buffers from the 74HCT14 to add connections for a hardware MIDI THRU port.

Some physical experimentation was required, with paper printouts as models, to try to get the GPIO connectors and mounting holes all in the correct place for connection to the Waveshare display.

I noticed that there were unused GPIO pins that would allow headers for I2C too, so I added this too to enable future expansion if required.

The final use of GPIO is as follows.

Zynthian-GPIO-Pinout3

Where the rotary encoders are numbered as follows with respect to the display:

RE1  +-----------------+ RE3
     |                 |
RE2  +-----------------+ RE4

This configuration is mirrored by the placement of headers on the PCB.

RPi-Zynthian-IOBoard-ger

Closing Thoughts

This is another slightly risky design – in that I think the physical dimensions are right for what I need, and I’ve used paper printouts to confirm as best I can, but the only real test is to send it off and see what I get back!

But I’m hoping this will make building an actual Zynthian-in-a-box a real possibility as the IO (encoders and MIDI) is provided by breakout headers.

This is the third board in my latest round supported by some discount vouchers from Seeed Fusion.

Kevin

Leave a comment