Zynthian Revisited – Part 4

This is the build guide for my Zynthian IO Board PCB.

IMG_6551

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.

Bill of Materials

This is what is required to build the PCB.

  • Zynthian IO Board PCB (GitHub link below)
  • 1x 40-way extended GPIO header
  • 1x GY-PCM1502 module
  • 1x H11L1 optoisolator
  • 1x 74HCT14 hex inverter (must be HCT version, not the HC version)
  • 5x 220Ω resistors
  • 1x 470Ω resistor
  • 1x 9N419 or 1N4148 signal diode
  • 12x 10nF ceramic capacitors
  • 3x 100nF ceramic capacitors
  • 1x 6-way DIP socket
  • 1x 14-way DIP socket
  • pin headers – either straight or right angle

IMG_6528

To build a Zynthian synth, the following will also be required:

  • Raspberry Pi V3 or V4 with heatsinks and power supply, etc
  • Waveshare 4″ HDMI Resistive Touchscreen LCD display
  • 4x KY040 Rotary Encoder modules
  • Short Micro HDMI to HDMI cable
  • Up to 3x 5 pin (180 degree) DIN sockets
  • 4x 2.5mm mounting posts (12mm)
  • 8x 2.5mm nuts
  • 4x 2.5mm screws
  • 4x 3mm mounting posts (15mm)
  • 8x 3mm nuts
  • 4x 3mm screws
  • Cables and jumper wires

I’ve used right-angled pin headers. If you are using straight headers then you might need more space between the boards, requiring a larger (or two) GPIO header and longer stand-offs between the IO board and the display.

You may also wish to consider longer standoffs (and a double GPIO header) between the Pi and the IO board too if you want more separation for additional cooling of the Pi.

Build Steps

This should be a relatively straight forward through-hole soldering build, so I took a “low to high” approach and assembled it in the following order:

  • Resistors
  • DIP sockets
  • Capacitors
  • GY-PCM5102 module – IMPORTANT: Check the hardware configuration before soldering (see below).
  • Straight or right-angled pin headers
  • GPIO header

There is one additional link required (see errata) which can be left to the end.

Here are some photos of the build steps.

The extra link should be made as shown below.

IMG_6549

PCM5102 Configuration

The GY-PCM5102 modules I’m using, as shown in the photos, as the same as used for the Clumsy MIDI project and you have to be sure the configuration jumpers on the back of the modules are correctly set up before soldering in place.  Full details of what is required can be found on the Clumsy MIDI pages here (see the important note about the “DAC solder bridges”): https://github.com/gmcn42/clumsyMIDI.

Testing

I recommend performing the general tests described here – PCBs – prior to final assembly.

Assembly Instructions

The IO board can be fixed to the Raspberry Pi using 2.5mm stand-off mounting posts.  The Waveshare display can then be fixed to the IO board using 3mm stand-off mounting posts.  To get better spacing, I’ve used an additional nut on the end of each screw thread prior to inserting into the PCB for both the Rpi to IO board, and IO board to display mountings.

IMG_6538

Note that it might be easier to connect the rotary encoders prior to final assembly (it is possible afterwards, but a bit fiddly).

IMG_6539IMG_6545IMG_6548

Finally, the additional connections can be made:

  • Rotary encoders
  • MIDI sockets (if required)
  • HDMI cable
  • Audio output from the PCM5102
  • Raspberry Pi power

Zynthian Configuration

Using the web user interface, the following is the configuration I’m using with this PCB.  This largely the same as described previously, but with the GPIO pin configuration for the encoders as described in Part 3.

Zynthian-Config-HWZynthian-Config-Wiring3.jpg

PCB Errata

Note that the use of GPIO 20 (pin 38) for RE3 means that pin can’t be used with the I2S interface.  For this build that was not an issue but it would be a problem if you were using a DAC that supported audio input rather than the onboard PCM5102.  Some HifiBerry DAC boards also using GPIO16 (pin 36) too.

There is a mistake on the board.  One of the ground zones on the rear of the board is not connected to the GPIO header GND pins!  Fortunately, a relatively simple fix can be made linking two GND connections on the rear of the board, between the 74HCT14 and the PCM5102 module thereby connecting the zone.

IMG_6549 - Detail

If I was to redo the board I might also consider the following:

  • I would put RE3 onto different GPIO pins to allow for the use of I2S for input if so desired and to retain compatibility with other DACs that might be used.
  • I might swap the MIDI pin ordering from 4-G-5 to 5-G-4.
  • I might fiddle about with the location of the mounting holes and GPIO to align the board slightly differently to make the use of the Pi’s own IO connections more “panel friendly”.

An enhancement might be to switch to using an IO expander on the PCB and therefore allowing the use of extra buttons in addition to the rotary encoders.

Find it on GitHub here.

Closing Thoughts

I’m really pleased with this board (mistake not withstanding).  This is now at the point where I think I can cut out a panel for my CD Rack Synthesizer and actually mount the Zynthian and start using it!

These boards have been manufactured using the Seeed Fusion PCB service, which I am happy to continue to recommend. They have been supported with discount vouchers that I’ve been sent by Seeed for my previous projects.

Kevin

2 thoughts on “Zynthian Revisited – Part 4

  1. Very very nice board. I built it and now busy with the config of the wiring.
    Can you post or email me the custom profile for the wiring, somehow the custom wiring advanced view does not work in my web UI for Zynthian.

    Like

    1. Oh that’s a little odd… I wonder why? Might be worth asking on the Zynthian forums?

      Anyway, ping me an email diyelectromusic at gmail and I’ll see if I can figure out how to grab it off the board (I assume its just on the SD card somewhere)…

      Oh and do let me see some photos of your build – I’d love to see how my board fits in 🙂

      Like

Leave a comment