Difference between revisions of "Zynthian Hardware"
(Create Zynthian Hardware) |
|||
Line 1: | Line 1: | ||
− | =Zynthian | + | =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 [[Building_a_Zynthian_Box_using_an_official_Kit_v4.1#Technical_Reference|V4.1 Kit Building Tutorial]] and can also be found on Github. | ||
− | + | ==The Raspberry Pi== | |
− | + | [[File:Raspberry-Pi-j8header-2b.png|thumb|right|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: | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | = | + | {| class="wikitable" |
− | + | |+ 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 audio side== | ||
Revision as of 22:35, 26 February 2021
1 A deeper look at Zynthian Hardware architecture
1.1 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.
1.2 The Raspberry Pi
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:
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 |