Zynthian Hardware

From ZynthianWiki
Revision as of 22:35, 26 February 2021 by Ie51 (talk | contribs)
Jump to navigation Jump to search

A deeper look at Zynthian Hardware architecture

Foreword

The following is based on the kit v4.1 schematics but keep in mind that most of it is optionnal ! One may choose to run an headless Zynthian, or with just a HDMI display and an USB and/or keyboard. Zynthian is modular enough to fits many needs a from pocket sized gear to a customized midi keyboard that will embed your build. All schematics below are from the V4.1 Kit Building Tutorial and can also be found on Github.

The Raspberry Pi

Raspberry PI 2/3/4 40 pins header

The Raspberry Pi is the heart of Zynthian, it runs the all the software and can be used "as is" in a headless setup. But it also communicates with all the hardware add ons that makes a Zynthian Box.

The V4.1 setup use the following pins of your Raspberry Pi:

  • Pins numbers 3 and 5: for the I2C protocol. I2C is used by the MCP23017 port expander and for controlling the Audio sound card.
  • Pins numbers 8 and 10: for the serial interface (UART). This is for MIDI IN and OUT
  • Pins numbers 12, 35, 38 40: for the I2S (or PCM as on the image) digital audio interface. Where pin 40 is for the output signal to the DAC (Digital to Analog Converter) and pin 38 is for the input signal drom the ADC (Analog to Digital Converter) wich are both provided by the Hifiberry ADC+DAC stage soundcard.
  • Pins 19, 21, 23, 26, 26 (SPI interface) and pins 11, 15, 18, 22 for the display and its touch interface.
  • Pins 7 and 13: these are used for providing interrupts to the MCP23017 port expander.
  • Power pins, 5V, 3.3V and GND are also used for powering the different components

Pin numbers given above are the Raspberry pins numbers and as noticed on picture and because Zynthian software makes the use of the WiringPi library, they have also a specific WiringPi number wich does not correspond to the Broadcom chip pin number. So one may find usefull to have this table:

Pins numbers
WiringPi GPIO BCM pin RBPI pin RBPI pin BCM pin WiringPi GPIO
3.3V 1 2 5V
8 2 3 4 5V
9 3 5 6 GND
7 4 7 8 14 15
GND 9 10 15 16
0 17 11 12 18 1
2 27 13 14 GND
3 22 15 16 23 4
3.3V 17 18 24 5
12 10 19 20 GND
13 9 21 22 25 6
14 11 23 24 8 10
GND 25 26 7 11
30 ID_SD 27 28 ID_SC 31
21 5 29 30 GND
22 6 31 32 12 26
23 13 33 34 GND
24 19 35 36 16 27
25 26 37 38 20 28
GND 39 40 21 29


The display

The audio side

The MIDI interface

Controls: Rotary encoders and the switches