General Purpose Input Output (GPIO)
This page is to identify the alternate functions of the Raspberry Pi GPIO
and to keep Hivetool developers from stepping on each other by reserving pins for Hivetool hardware.
Notes
- GPIO pins are 3.3 volt logic levels and are not tolerant of 5V levels
- These GPIO properties are set as a block, not per pin (GPIO pins 0-27 are in the same block).
- Can interrupt based on high/low/rise/fall/change.
- Schmitt Trigger Input (hysteresis) can be on or off,
- Output slew rate can be fast or limited, and
- Source and sink currents are configurable from 2 mA up to 16 mA.
- ID_SD and ID_SC PINS are reserved for ID EEPROM.
- At boot time this I2C interface will be interrogated to look for an EEPROM that identifes the attached board and allows
- automagic setup of the GPIOs (and optionally, Linux drivers).
- DO NOT USE these pins for anything other than attaching an I2C ID EEPROM. Leave unconnected if ID EEPROM not required.
Color Legend
Color Legend |
---|
3.3 VDC Power | Serial Console/Power |
5 VDC Power | HX711 Scale |
Ground | I2C Sensors |
Unused | I2S Audio |
The first 26 pins on J8 (A+ and B+ models) are the same as H1 on the A and B models.
Hivetool |
---|
Reserved for I2C Sensors |
Reserved for I2C Sensors |
Reserved for I2C Sensors |
Unused |
Reserved for I2C Sensors |
Unused |
Unused |
Unused |
Unused |
Unused |
Unused |
Unused |
Unused |
Reserved ID EEPROM |
Unused |
Unused |
Unused |
Reserved I2S |
Unused |
Unused |
|
R Pi |
---|
3.3 VDC Power |
GPIO 2 I2C |
GPIO 3 I2C |
GPIO 4 GPCLK0 |
Ground |
GPIO 17 |
GPIO 27 |
GPIO 22 |
3.3 VDC Power |
GPIO 10 SPI0 MOSI |
GPIO 09 SPI0 MISO |
GPIO 11 SPI0 SCLK |
Ground |
GPIO 0 I2C0_SDA |
GPIO 5 GPCLK1 |
GPIO 6 GPCLK2 |
GPIO 13 PWM1 |
GPIO 19 PCM_FS |
GPIO 26 |
Ground |
|
J8 |
---|
1 | 2 |
3 | 4 |
5 | 6 |
7 | 8 |
9 | 10 |
11 | 12 |
13 | 14 |
15 | 16 |
17 | 18 |
19 | 20 |
21 | 22 |
23 | 24 |
25 | 26 |
27 | 28 |
29 | 30 |
31 | 32 |
33 | 34 |
35 | 36 |
37 | 38 |
39 | 40 |
|
R Pi |
---|
5 VDC Power |
5 VDC Power |
Ground |
GPIO 14 TXD |
GPIO 15 RXD |
GPIO 18 PCM_CLK |
Ground |
GPIO 23 |
GPIO 24 |
Ground |
GPIO 25 |
GPIO 8 SPI0_CE0 |
GPIO 7 SPI0_CE1 |
GPIO 1 I2C0_SCL |
Ground |
GPIO 12 PWM0 |
Ground |
GPIO 16 |
GPIO 20 PCM_DIN |
GPIO 21 PCM DOUT |
|
Hivetool |
---|
Reserved Power HX711 |
Reserved Power |
Reserved Ground |
Reserved serial console |
Reserved serial console |
Reserved I2S |
Unused |
Reserved HX711 |
Reserved HX711 |
Reserved HX711 |
Unused |
Unused |
Unused |
Reserved ID EEPROM |
Unused |
Unused |
Unused |
Unused |
Reserved I2S |
Reserved I2S |
|
GPIO ordered by Signal Name
Signal | Alt Function | J8 | H1 | H5 |
---|
3.3 VDC Power | | 1 | 1 | 3 |
3.3 VDC Power | | 17 | 17 | |
5 VDC Power | | 2 | 2 | 1 |
5 VDC Power | | 4 | 4 | |
GPIO 0 | I2C0_SDA | 27 | | |
GPIO 1 | I2C0_SCL | 28 | | |
GPIO 2 | I2C1 SDA | 3 | 3 | |
GPIO 3 | I2C1 SCL | 5 | 5 | |
GPIO 4 | GPCLK0 | 7 | 7 | |
GPIO 5 | GPCLK1 | 29 | | |
GPIO 6 | GPCLK2 | 31 | | |
GPIO 7 | SPI0 CE1 | 26 | 26 | |
GPIO 8 | SPI0 CE0 | 24 | 24 | |
GPIO 9 | SPI0 MISO | 21 | 21 | |
GPIO 10 | SPI0 MOSI | 19 | 19 | |
GPIO 11 | SPI0 SCLK | 23 | 23 | |
GPIO 12 | PWM0 | 32 | | |
GPIO 13 | PWM1 | 33 | | |
GPIO 14 | UART0 TXD | 8 | 8 | |
GPIO 15 | UART0 RXD | 10 | 10 | |
GPIO 16 | | 36 | | |
GPIO 17 | | 11 | 11 | |
GPIO 18 | PCM_CLK | 12 | 12 | |
GPIO 19 | PCM_FS | 35 | | |
GPIO 20 | PCM_DIN | 38 | | |
GPIO 21 | PCM DOUT | 40 | | |
GPIO 22 | | 15 | 15 | |
GPIO 23 | | 16 | 16 | |
GPIO 24 | | 18 | 18 | |
GPIO 25 | | 22 | 22 | |
GPIO 26 | | 37 | | |
GPIO 27 | | 13 | 13 | |
GPIO 28 | I2C0_SDA | | | 3 |
GPIO 29 | I2C0_SCL | | | 4 |
GPIO 30 | | | | 5 |
GPIO 31 | | | | 6 |
Ground | | 6 | 6 | 7 |
Ground | | 9 | 9 | 8 |
Ground | | 14 | 14 | |
Ground | | 20 | 20 | |
Ground | | 25 | 25 | |
Ground | | 30 | | |
Ground | | 34 | | |
Ground | | 39 | | |
Resources
- eLinux.org RPi Low-level peripherals
- Raspberry Pi B+ Reduced Schematic
- eLinux.org BCM2835 GPIO functions