Vaaman GPIO Description

Vicharak Vaaman board features a 40-pin GPIO (General-Purpose Input/Output) header that provides flexible options for connecting and controlling external devices. Through software settings, you can configure these pins as either input or output, making them adaptable for various applications.

Out of the 40 pins on the header, 27 are dedicated GPIO pins. These GPIO pins can also be repurposed for SPI (Serial Peripheral Interface), UART (Universal Asynchronous Receiver-Transmitter), and I2C (Inter-Integrated Circuit) functions.

This versatility opens up a wide array of possibilities for interfacing with different components and facilitating communication with other devices.

Tip

What? you want more GPIOs?

Fear not, we have a solution for you. Vaaman board has additional 40-FPGA GPIOs available to the user.
These GPIOs are accessible from the FPGA and can be configured to be used inside your project and applications

GPIO Voltage Level

RK3399 SoC has three multiple GPIO voltage levels. Below table shows the voltage level of vaaman GPIOs.

GPIO

Voltage Level

Tolerance

ADC_IN0

1.8V

~1.98V

GPIO3_C0 (Pin 32)

3.3V

~3.46V

Other GPIOs

3.0V

~3.15V

Available GPIOs on Vaaman

Vicharak Vaaman board has total 80 GPIOs available for user. 40 GPIOs are accessible on 40 pin header and 40 GPIOs are accessible from FPGA. Below table shows the GPIOs available on Vaaman board.

Warning

Not all functions can be used at the same time. Only one function can be used or assigned to a GPIO at a time.

SoC GPIOs Header

GPIO number

Function2

Function1

GPIO

Pin#

Pin#

GPIO

Function1

GPIO number

+3.3V

1

2

+5.0V

I2C7_SDA

3

4

+5.0V

I2C7_SCL

5

6

GND

75

SPI2_CLK

GPIO2_B3

7

8

GPIO4_C4

UART2_TXD

148

GND

9

10

GPIO4_C3

UART2_RXD

147

146

PWM0

GPIO4_C2

11

12

GPIO4_A3

I2S1_SCLK

131

150

PWM1

GPIO4_C6

13

14

GND

149

SPDIF_TX

GPIO4_C5

15

16

GPIO4_D2

154

+3.3V

17

18

GPIO4_D4

156

+5V

19

20

GND

GND

21

22

GPIO4_D5

157

+5V

23

24

GND

GND

25

26

ADC_IN0

64

I2C2_SDA

GPIO2_A0

27

28

GPIO2_A1

I2C2_CLK

65

74

I2C6_SCL

SPI2_TXD

GPIO2_B2

29

30

GND

73

I2C6_SDA

SPI2_RXD

GPIO2_B1

31

32

GPIO3_C0

SPDIF_TX

112

76

SPI2_CSn

GPIO2_B4

33

34

GND

133

I2S1_LRCK_TX

GPIO4_A5

35

36

GPIO4_A4

I2S1_LRCK_RX

132

158

GPIO4_D6

37

38

GPIO4_A6

I2S1_SDI

134

GND

39

40

GPIO4_A7

I2S1_SDO

135

Note

  • The default function of pins marked in orange are specific to this board. For example, Pins 3 and 5 cannot be used as GPIOs because they are connected to the I2C bus and are already in use.

  • All pins, except those for power supply, are directly connected to the System-on-Chip (SoC).

  • Pin 7 is directly connected to the MIPI CSI pin on the board. Instructions to use UART2 as serial console can be found in Serial Console, and to disable it, refer to Vicharak Config Device tree overlays section.

  • Both UART2 and UART4 support a wide range of baud rates, including 115200bps, 500000bps, 1500000bps, and more.

FGPA Header

Function

GPIO

Pin#

Pin#

GPIO

Function

+5.0V

1

2

+3.3V

+5.0V

3

4

+3.3V

LVDS/GPIO

GPIOT_RX28_P

5

6

GPIOT_RX28_N

LVDS/GPIO

GPIO

GPIO_73

7

8

GPIO_75

GPIO

GPIO

GPIO_173

9

10

GPIO_72

GPIO

GPIO

GPIO_174

11

12

GPIO_178

GPIO

LED

USER_LEDS3

13

14

GPIO_183

GPIO

LED

USER_LEDS2

15

16

USER_LED0

LED

GPIO

GPIO_63

17

18

USER_LED1

LED

GND

19

20

GND

GND

21

22

GND

LVDS/GPIO

RX29_CLK2_N

23

24

RX29_CLK2_P

LVDS/GPIO

CDI

CDI6

25

26

GND

GND

27

28

GND

GPIO

GPIO_168

29

30

GPIO_187

GPIO

GPIO

GPIO_17

31

32

CDI7

CDI

CDI

CDI5

33

34

GPIO_66

GPIO

CDI

CDI4

35

36

GPIO_62

GPIO

GND

37

38

GND

+3.3V

39

40

+3.3V

::{note}

  • The default function of pins marked in orange is specific to this board. For example, pin 13, 15, 16 and 16 are used as LEDs and they cannot be used as GPIOs.

  • The pins layout from 29 to 40 follows the standard PMOD pinout. Check the PMOD page for more information.

  • LVDS/GPIO pins can either be used as GPIOs or as LVDS pins. To use them as GPIOs, refer to Vicharak FPGA LVDS. section.

  • CDI can be normally used as GPIOs.

GPIO Numbers translation

GPIO0

Number

GPIO1

Number

GPIO2

Number

GPIO3

Number

GPIO4

Number

A0

0

A0

32

A0

64

A0

96

A0

128

A1

1

A1

33

A1

65

A1

97

A1

129

A2

2

A2

34

A2

66

A2

98

A2

130

A3

3

A3

35

A3

67

A3

99

A3

131

A4

4

A4

36

A4

68

A4

100

A4

132

A5

5

A5

37

A5

69

A5

101

A5

133

A6

6

A6

38

A6

70

A6

102

A6

134

A7

7

A7

39

A7

71

A7

103

A7

135

B0

8

B0

40

B0

72

B0

104

B0

136

B1

9

B1

41

B1

73

B1

105

B1

137

B2

10

B2

42

B2

74

B2

106

B2

138

B3

11

B3

43

B3

75

B3

107

B3

139

B4

12

B4

44

B4

76

B4

108

B4

140

B5

13

B5

45

B5

77

B5

109

B5

141

B6

14

B6

46

B6

78

B6

110

B6

142

B7

15

B7

47

B7

79

B7

111

B7

143

C0

16

C0

48

C0

80

C0

112

C0

144

C1

17

C1

49

C1

81

C1

113

C1

145

C2

18

C2

50

C2

82

C2

114

C2

146

C3

19

C3

51

C3

83

C3

115

C3

147

C4

20

C4

52

C4

84

C4

116

C4

148

C5

21

C5

53

C5

85

C5

117

C5

149

C6

22

C6

54

C6

86

C6

118

C6

150

C7

23

C7

55

C7

87

C7

119

C7

151

D0

24

D0

56

D0

88

D0

120

D0

152

D1

25

D1

57

D1

89

D1

121

D1

153

D2

26

D2

58

D2

90

D2

122

D2

154

D3

27

D3

59

D3

91

D3

123

D3

155

D4

28

D4

60

D4

92

D4

124

D4

156

D5

29

D5

61

D5

93

D5

125

D5

157

D6

30

D6

62

D6

94

D6

126

D6

158

D7

31

D7

63

D7

95

D7

127

D7

159