Please enable javascript, or click here to visit my ecommerce web site powered by Shopify.
Jump to: navigation, search

RockpiS/hardware/gpio

< RockpiS‎ | hardware
Revision as of 02:01, 9 January 2020 by Stephen (Talk | contribs)

    ROCK Pi S >  Hardware >  GPIO

General purpose input-output (GPIO) connector

ROCK Pi S has two 26-pin expansion header. Each pin is distinguished by color.


Hardware V10

26-pin Header 1

GPIO number Func4 Func3 Func2 Func1 Pin# Pin# Func1 Func2 Func3 Func4 GPIO number
+3.3V 1 2 +5.0V
12 I2C1_SCL GPIO0_B4 3 4 +5.0V
11 I2C1_SDA GPIO0_B3 5 6 GND
69 I2S0_SCLK_TX GPIO2_A5 7 8 GPIO4_D3 SDMMC_D3 UART2_TX_M1 PMU_ST3 155
64 SPI0_MISO UART0_RX GPIO2_A0 9 10 GPIO4_D2 SDMMC_D2 UART2_RX_M1 PMU_ST2 154
65 SPI0_MOSI UART0_TX GPIO2_A1 11 12 GPIO0_C0 PWM3 I2C3_SCL_M0 16
66 I2C2_SDA SPI0_CLK UART0_CTSN GPIO2_A2 13 14 GND
67 I2C2_SCL SPI0_CSN0 UART0_RTSN GPIO2_A3 15 16 GPIO2_A7 I2S0_8CH_LRCK_TX 71
+3.3V 17 18 GPIO2_B1 I2S0_8CH_SDO0 73
55 SPI2_MOSI UART2_TX_M0 UART1_RTSN GPIO1_C7 19 20 GND
54 SPI2_MISO UART2_RX_M0 UART1_CTSN GPIO1_C6 21 22 GPIO0_B6 PWM1 14
56 SPI2_CLK I2C0_SDA UART1_RX GPIO1_D0 23 24 GPIO1_D1 UART1_TX I2C0_SCL SPI2_CSN0 57
GND 25 26 GPIO0_B7 PWM2 I2C3_SDA_M0 15

Warning

  • Pin#8 and Pin#10 cannot be used as GPIO, UART function pins since they are the data pins of SDMMC.

26-pin Header 2

GPIO number Func3 Func2 Func1 Pin# Pin# Func1 Func2 Func3 GPIO number
GND 1 2 GPIO2_A6 I2S0_8CH_SCLK_RX PDM_CLK_S_M2 70
ADC_KEY_IN1 3 4 GPIO2_B5 I2S0_8CH_SDI0 PDM_SDI0_M2 77
MICBIAS2 5 6 GPIO2_B6 I2S0_8CH_SDI1 PDM_SDI1_M2 78
MICBIAS1 7 8 GPIO2_B7 I2S0_8CH_SDI2 PDM_SDI2_M2 79
MICN8 9 10 MCIP8
MICN7 11 12 MCIP7
MICN6 13 14 MCIP6
MICN5 15 16 MCIP5
MICN4 17 18 MCIP4
MICN3 19 20 MCIP3
MICN2 21 22 MCIP2
MICN1 23 24 MCIP1
LINEOUT_R 25 26 LINEOUT_L


Hardware V11

26-pin Header 1

GPIO number Func4 Func3 Func2 Func1 Pin# Pin# Func1 Func2 Func3 Func4 GPIO number
+3.3V 1 2 +5.0V
11 I2C1_SDA GPIO0_B3 3 4 +5.0V
12 I2C1_SCL GPIO0_B4 5 6 GND
69 I2S0_SCLK_TX GPIO2_A5 7 8 GPIO2_A1 UART0_TX SPI0_MOSI 65
GND 9 10 GPIO2_A0 UART0_RX SPI0_MISO 64
15 I2C3_SDA_M0 PWM2 GPIO0_B7 11 12 GPIO2_A2 UART0_CTSN SPI0_CLK I2C2_SDA 66
16 I2C3_SCL_M0 PWM3 GPIO0_C0 13 14 GND
17 SPDIF_TX GPIO0_C1 15 16 GPIO2_A3 UART0_RTSN SPI0_CSN0 I2C2_SCL 67
+3.3V 17 18 GPIO2_B1 I2S0_8CH_SDO0 73
55 SPI2_MOSI UART2_TX_M0 UART1_RTSN GPIO1_C7 19 20 GND
54 SPI2_MISO UART2_RX_M0 UART1_CTSN GPIO1_C6 21 22 GPIO0_B6 PWM1 14
56 SPI2_CLK I2C0_SDA UART1_RX GPIO1_D0 23 24 GPIO1_D1 UART1_TX I2C0_SCL SPI2_CSN0 57
GND 25 26 ADC_IN0

26-pin Header 2

GPIO number Func3 Func2 Func1 Pin# Pin# Func1 Func2 Func3 GPIO number
GND 1 2 GPIO2_A6 I2S0_8CH_SCLK_RX PDM_CLK_S_M2 70
ADC_KEY_IN1 3 4 GPIO2_B5 I2S0_8CH_SDI0 PDM_SDI0_M2 77
MICBIAS2 5 6 GPIO2_B6 I2S0_8CH_SDI1 PDM_SDI1_M2 78
MICBIAS1 7 8 GPIO2_B7 I2S0_8CH_SDI2 PDM_SDI2_M2 79
MICN8 9 10 MCIP8
MICN7 11 12 MCIP7
MICN6 13 14 MCIP6
MICN5 15 16 MCIP5
MICN4 17 18 MCIP4
MICN3 19 20 MCIP3
MICN2 21 22 MCIP2
MICN1 23 24 MCIP1
LINEOUT_R 25 26 LINEOUT_L

More details about V11 Headers

  • Pins marked with color orange are designed for default debug console.
  • PWM: x3, PWM1/PWM2/PWM3
  • SPI: x2, SPI0/SPI2
  • I2C: x4, I2C0/I2C1/I2C2/I2C3
  • UART: x3, UART0/UART1/UART2
  • ADC: x1, ADC_IN0

Hardware V12

26-pin Header 1

GPIO number Func4 Func3 Func2 Func1 Pin# Pin# Func1 Func2 Func3 Func4 GPIO number
+3.3V 1 2 +5.0V
11 I2C1_SDA GPIO0_B3 3 4 +5.0V
12 I2C1_SCL GPIO0_B4 5 6 GND
68 PDM_CLK_M_M2 I2S0_8CH_MCLK GPIO2_A4 7 8 GPIO2_A1 UART0_TX SPI0_MOSI 65
GND 9 10 GPIO2_A0 UART0_RX SPI0_MISO 64
15 I2C3_SDA_M0 PWM2 GPIO0_B7 11 12 GPIO2_A5 I2S0_8CH_SCLK_TX 69
16 I2C3_SCL_M0 PWM3 GPIO0_C0 13 14 GND
17 SPDIF_TX GPIO0_C1 15 16 GPIO2_B2 I2S0_8CH_SDO1 74
+3.3V 17 18 GPIO2_B1 I2S0_8CH_SDO0 73
55 SPI2_MOSI UART2_TX_M0 UART1_RTSN GPIO1_C7 19 20 GND
54 SPI2_MISO UART2_RX_M0 UART1_CTSN GPIO1_C6 21 22 GPIO2_A7 I2S0_8CH_LRCK_TX 14
56 SPI2_CLK I2C0_SDA UART1_RX GPIO1_D0 23 24 GPIO1_D1 UART1_TX I2C0_SCL SPI2_CSN0 57
GND 25 26 ADC_IN0

26-pin Header 2

GPIO number Func3 Func2 Func1 Pin# Pin# Func1 Func2 Func3 GPIO number
GND 1 2 GPIO2_B5 I2S0_8CH_SDI0 PDM_SDI0_M2 77
ADC_KEY_IN1 3 4 GPIO2_B6 I2S0_8CH_SDI1 PDM_SDI1_M2 78
MICBIAS2 5 6 GPIO2_B7 I2S0_8CH_SDI2 PDM_SDI2_M2 79
MICBIAS1 7 8 GPIO2_C0 I2S0_8CH_SDI3 PDM_SDI3_M2 80
MICN8 9 10 MCIP8
MICN7 11 12 MCIP7
MICN6 13 14 MCIP6
MICN5 15 16 MCIP5
76 I2S0_SDO3 GPIO2_B4 17 18 GPIO2_B3 I2S0_8CH_SDO1 75
72 I2S0_LRCK_RX GPIO2_B0 19 20 GPIO2_A6 I2S0_8CH_SCLK_RX PDM_CLK_S_M2 70
MICN2 21 22 MCIP2
MICN1 23 24 MCIP1
LINEOUT_R 25 26 LINEOUT_L

More details about V12 Headers

  • Pins marked with color orange are designed for default debug console.
  • PWM: x2, PWM2/PWM3
  • SPI: x1, SPI2
  • I2C: x3, I2C0/I2C1/I2C3
  • UART: x3, UART0/UART1/UART2
  • ADC: x1, ADC_IN0

IO Voltage

RK3308 have two IO voltages, 1.8V/3.3V. For ROCK Pi S, the voltage level of GPIOs showed in the tables above are 3.3V and tolerance of those are 3.63V.

GPIO number

Rockchip RK3308 GPIO has 5 banks, GPIO0 to GPIO4, each bank has 32pins, naming as below:

   GPIO0_A0 ~ A7 
   GPIO0_B0 ~ B7
   GPIO0_C0 ~ C7
   GPIO0_D0 ~ D7
   
   GPIO1_A0 ~ A7
   ....
   GPIO1_D0 ~ D7

For Rockchip 4.4 kernel, the GPIO number can be calculated as below, take GPIO4_D3(PIN8 on 26PIN GPIO) as an example:

   GPIO4_D3 = 32*4 + 8*3 + 3 = 155

To set GPIO4_D3 output

   cd /sys/class/gpio
   echo 155 > export
   cd gpio155
   echo out > direction
   echo 1 > value     # output high
   echo 0 > value     # output low