Skip to content

Commit b91d3fc

Browse files
authored
Merge pull request #894 from landall/main
add support for orangepi 3b
2 parents 9441d12 + 38fa646 commit b91d3fc

File tree

3 files changed

+97
-0
lines changed

3 files changed

+97
-0
lines changed
Lines changed: 84 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,84 @@
1+
# SPDX-FileCopyrightText: 2024 cst_zf
2+
#
3+
# SPDX-License-Identifier: MIT
4+
"""Pin definitions for the Orangepi 3B."""
5+
6+
from adafruit_blinka.microcontroller.rockchip.rk3566 import pin
7+
8+
# D pin number is ordered by physical pin sequence
9+
# Reference: https://service.robots.org.nz/wiki/Wiki.jsp?page=OrangePi
10+
11+
# D2 = VCC5V0_SYS
12+
D3 = pin.I2C2_SDA_M1
13+
# D4 = VCC5V0_SYS
14+
D5 = pin.I2C2_SCL_M1
15+
# D6 = GND
16+
D7 = pin.GPIO4_C3 # GPIO4_C3/PWM15
17+
D8 = pin.GPIO0_D1
18+
# D9 = GND
19+
D10 = pin.GPIO0_D0
20+
D11 = pin.GPIO3_C6
21+
D12 = pin.GPIO3_C7
22+
D13 = pin.GPIO4_A0
23+
# D14 = GND
24+
D15 = pin.GPIO4_A2
25+
D16 = pin.GPIO4_A3
26+
# D17 = Vcc3V3_SYS
27+
D18 = pin.GPIO4_A1
28+
D19 = pin.SPI3_MOSI_M0
29+
# D20 = GND
30+
D21 = pin.SPI3_MISO_M0
31+
D22 = pin.GPIO4_A4
32+
D23 = pin.SPI3_CLK_M0
33+
D24 = pin.SPI3_CS0_M0
34+
# D25 = GND
35+
D26 = pin.GPIO4_A7
36+
D27 = pin.I2C3_SDA_M0
37+
D28 = pin.I2C3_SCL_M0
38+
D29 = pin.GPIO4_A5
39+
# D30 = GND
40+
D31 = pin.GPIO3_D4
41+
D32 = pin.GPIO4_C0
42+
D33 = pin.GPIO3_D7
43+
# D34 = GND
44+
D35 = pin.GPIO3_D0
45+
D36 = pin.GPIO3_D5
46+
D37 = pin.GPIO3_D3
47+
D38 = pin.GPIO3_D2
48+
# D39 = GND
49+
D40 = pin.GPIO3_D1
50+
51+
# UART
52+
UART2_TX_M0 = pin.GPIO0_D1
53+
UART2_RX_M0 = pin.GPIO0_D0
54+
55+
UART7_TX_M2 = pin.GPIO4_A2
56+
UART7_RX_M2 = pin.GPIO4_A3
57+
58+
UART3_TX_M0 = pin.GPIO1_A1
59+
UART3_RX_M0 = pin.GPIO1_A0
60+
61+
UART9_TX_M2 = pin.GPIO4_A4
62+
UART9_RX_M2 = pin.GPIO4_A5
63+
64+
# I2C
65+
I2C2_SCL_M1 = pin.I2C2_SCL_M1
66+
I2C2_SDA_M1 = pin.I2C2_SDA_M1
67+
I2C3_SCL_M0 = pin.I2C3_SCL_M0
68+
I2C3_SDA_M0 = pin.I2C3_SDA_M0
69+
70+
# Default I2C
71+
SCL = I2C2_SCL_M1
72+
SDA = I2C2_SDA_M1
73+
74+
# SPI
75+
SPI3_MISO = pin.SPI3_MISO_M0
76+
SPI3_MOSI = pin.SPI3_MOSI_M0
77+
SPI3_CLK = pin.SPI3_CLK_M0
78+
SPI3_CS0 = pin.SPI3_CS0_M0
79+
80+
# Default SPI
81+
MOSI = SPI3_MOSI
82+
MISO = SPI3_MISO
83+
SCLK = SPI3_CLK
84+
CS = SPI3_CS0

src/adafruit_blinka/microcontroller/rockchip/rk3566/pin.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,15 @@
9393
GPIO3_D3 = Pin((3, 27))
9494
GPIO3_D4 = Pin((3, 28))
9595
GPIO3_D5 = Pin((3, 29))
96+
GPIO3_D6 = Pin((3, 30))
97+
GPIO3_D7 = Pin((3, 31))
98+
99+
# GPIO4
100+
GPIO4_A0 = Pin((4, 0))
101+
GPIO4_A1 = Pin((4, 1))
102+
GPIO4_A2 = Pin((4, 2))
103+
GPIO4_A3 = Pin((4, 3))
104+
96105
GPIO4_A4 = Pin((4, 4))
97106
GPIO4_A5 = Pin((4, 5))
98107
GPIO4_A6 = Pin((4, 6))
@@ -170,6 +179,7 @@
170179
i2cPorts = [
171180
(1, I2C1_SCL, I2C1_SDA),
172181
(2, I2C2_SCL_M0, I2C2_SDA_M0),
182+
(2, I2C2_SCL_M1, I2C2_SDA_M1),
173183
(3, I2C3_SCL_M0, I2C3_SDA_M0),
174184
(4, I2C4_SCL_M0, I2C4_SDA_M0),
175185
(5, I2C5_SCL_M0, I2C5_SDA_M0),

src/board.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -134,6 +134,9 @@
134134
elif board_id == ap_board.ORANGE_PI_3:
135135
from adafruit_blinka.board.orangepi.orangepi3 import *
136136

137+
elif board_id == ap_board.ORANGE_PI_3B:
138+
from adafruit_blinka.board.orangepi.orangepi3b import *
139+
137140
elif board_id == ap_board.ORANGE_PI_4:
138141
from adafruit_blinka.board.orangepi.orangepi4 import *
139142

0 commit comments

Comments
 (0)