Skip to content

Commit 92351c0

Browse files
kuwoyukikuba2k2
andauthored
[boards] Add RTL8710BX AFW121T board (#305)
* feat: afw121t board * Update layout, regenerate with boardgen --------- Co-authored-by: Kuba Szczodrzyński <[email protected]>
1 parent 0f6c313 commit 92351c0

File tree

6 files changed

+456
-0
lines changed

6 files changed

+456
-0
lines changed

boards/_base/pcb/afw121t.json

+90
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,90 @@
1+
{
2+
"pcb": {
3+
"templates": [
4+
"99iot-21p",
5+
"pcb-blue-light",
6+
"rf-type1"
7+
],
8+
"scale": 16,
9+
"vars": {
10+
"TRACE_COLOR": "#FAFD9D"
11+
},
12+
"pinout_hidden": "I2S,TRIG,WAKE,CTS,RTS,SD",
13+
"pinout": {
14+
"1": {
15+
"GND": null
16+
},
17+
"2": {
18+
"CTRL": "RF_O"
19+
},
20+
"3": {
21+
"GND": null
22+
},
23+
"4": {
24+
"NC": null
25+
},
26+
"5": {
27+
"CTRL": "CEN"
28+
},
29+
"6": {
30+
"IC": 13,
31+
"ARD": "D0"
32+
},
33+
"7": {
34+
"IC": 14,
35+
"ARD": "D1"
36+
},
37+
"8": {
38+
"IC": 16,
39+
"ARD": "D2"
40+
},
41+
"9": {
42+
"IC": 17,
43+
"ARD": "D3"
44+
},
45+
"10": {
46+
"GND": null
47+
},
48+
"11": {
49+
"PWR": 3.3
50+
},
51+
"12": {
52+
"GND": null
53+
},
54+
"13": {
55+
"NC": null
56+
},
57+
"14": {
58+
"IC": 28,
59+
"ARD": "D5"
60+
},
61+
"15": {
62+
"IC": 29,
63+
"ARD": "D6"
64+
},
65+
"16": {
66+
"IC": 30,
67+
"ARD": "D7"
68+
},
69+
"17": {
70+
"IC": 31,
71+
"ARD": "D8"
72+
},
73+
"18": {
74+
"IC": 32,
75+
"ARD": "D9"
76+
},
77+
"19": {
78+
"IC": 1,
79+
"ARD": "D10"
80+
},
81+
"20": {
82+
"IC": 2,
83+
"ARD": "D4"
84+
},
85+
"21": {
86+
"GND": null
87+
}
88+
}
89+
}
90+
}
+16
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
{
2+
"build": {
3+
"amb_boot_all": "boot_all_77F7.bin"
4+
},
5+
"flash": {
6+
"ota1": "0x00B000+0x75000",
7+
"ota2": "0x080000+0x75000",
8+
"kvs": "0x0F5000+0x4000",
9+
"userdata": "0x0F9000+0x7000"
10+
},
11+
"upload": {
12+
"flash_size": 1048576,
13+
"maximum_size": 479232
14+
}
15+
}
16+

boards/afw121t.json

+24
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
{
2+
"_base": [
3+
"realtek-ambz",
4+
"realtek-ambz-1mb-468k",
5+
"realtek-ambz-bx",
6+
"ic/rtl8710bn",
7+
"pcb/afw121t"
8+
],
9+
"build": {
10+
"mcu": "rtl8710bx",
11+
"variant": "afw121t"
12+
},
13+
"name": "AFW121T",
14+
"url": "https://item.szlcsc.com/357903.html?fromZone=l_b__%2522brand%2522",
15+
"vendor": "99iot(Shenzhen)co.,ltd",
16+
"pcb": {
17+
"symbol": "AFW121T"
18+
},
19+
"doc": {
20+
"links": {
21+
"Vendor datasheet": "https://item.szlcsc.com/datasheet/AFW121TI-AY1LED1/357903.html"
22+
}
23+
}
24+
}

boards/templates/99iot-21p.json

+142
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,142 @@
1+
{
2+
"name": "99iot-21p",
3+
"title": "99iot 21-pin modules",
4+
"width": 18,
5+
"height": 22,
6+
"vars": {
7+
"PINTYPE_VERT": "pin_vert_cast_nohole",
8+
"PINTYPE_HORZ": "pin_horz_cast_nohole",
9+
"RASTER": 1.2,
10+
"RF_W": 18,
11+
"RF_H": 3.9
12+
},
13+
"front": [
14+
{
15+
"comment": "PCB soldermask",
16+
"type": "rect",
17+
"pos": "0,0",
18+
"size": "18,22",
19+
"preset": "${MASK_PRESET}"
20+
},
21+
{
22+
"comment": "Metal shielding",
23+
"type": "rect",
24+
"pos": "1.105,7",
25+
"size": "15.79,14.58",
26+
"preset": "shield"
27+
},
28+
{
29+
"comment": "Pins (1-3)",
30+
"id": "left_t",
31+
"name": "r_pins_vert",
32+
"repeat": 3,
33+
"pos": "0,3.9",
34+
"vars": {
35+
"PINDIR": "left"
36+
}
37+
},
38+
{
39+
"comment": "Pins (3-10)",
40+
"id": "left_b",
41+
"name": "r_pins_vert",
42+
"repeat": 7,
43+
"pos": "0,12.8",
44+
"vars": {
45+
"PINDIR": "left"
46+
}
47+
},
48+
{
49+
"comment": "Pins (10-20)",
50+
"id": "right_b",
51+
"name": "r_pins_vert",
52+
"repeat": 10,
53+
"pos": "18,9.2",
54+
"vars": {
55+
"PINDIR": "right"
56+
}
57+
},
58+
{
59+
"comment": "Pin 21",
60+
"id": "right_t",
61+
"name": "r_pins_vert",
62+
"repeat": 1,
63+
"pos": "18,7",
64+
"vars": {
65+
"PINDIR": "right"
66+
}
67+
}
68+
],
69+
"back": [
70+
{
71+
"comment": "PCB soldermask",
72+
"type": "rect",
73+
"pos": "0,0",
74+
"size": "18,22",
75+
"preset": "${MASK_PRESET}"
76+
},
77+
{
78+
"comment": "Pins (1-3)",
79+
"id": "left_t",
80+
"name": "r_pins_vert",
81+
"repeat": 3,
82+
"pos": "0,3.9",
83+
"vars": {
84+
"PINDIR": "left"
85+
}
86+
},
87+
{
88+
"comment": "Pins (3-10)",
89+
"id": "left_b",
90+
"name": "r_pins_vert",
91+
"repeat": 7,
92+
"pos": "0,12.8",
93+
"vars": {
94+
"PINDIR": "left"
95+
}
96+
},
97+
{
98+
"comment": "Pins (10-20)",
99+
"id": "right_b",
100+
"name": "r_pins_vert",
101+
"repeat": 10,
102+
"pos": "18,9.2",
103+
"vars": {
104+
"PINDIR": "right"
105+
}
106+
},
107+
{
108+
"comment": "Pin 21",
109+
"id": "right_t",
110+
"name": "r_pins_vert",
111+
"repeat": 1,
112+
"pos": "18,7",
113+
"vars": {
114+
"PINDIR": "right"
115+
}
116+
}
117+
],
118+
"pads": {
119+
"1": "99iot-21p.front.left_t.pin1",
120+
"2": "99iot-21p.front.left_t.pin2",
121+
"3": "99iot-21p.front.left_t.pin3",
122+
"4": "99iot-21p.front.left_b.pin1",
123+
"5": "99iot-21p.front.left_b.pin2",
124+
"6": "99iot-21p.front.left_b.pin3",
125+
"7": "99iot-21p.front.left_b.pin4",
126+
"8": "99iot-21p.front.left_b.pin5",
127+
"9": "99iot-21p.front.left_b.pin6",
128+
"10": "99iot-21p.front.left_b.pin7",
129+
"11": "99iot-21p.front.right_b.pin10",
130+
"12": "99iot-21p.front.right_b.pin9",
131+
"13": "99iot-21p.front.right_b.pin8",
132+
"14": "99iot-21p.front.right_b.pin7",
133+
"15": "99iot-21p.front.right_b.pin6",
134+
"16": "99iot-21p.front.right_b.pin5",
135+
"17": "99iot-21p.front.right_b.pin4",
136+
"18": "99iot-21p.front.right_b.pin3",
137+
"19": "99iot-21p.front.right_b.pin2",
138+
"20": "99iot-21p.front.right_b.pin1",
139+
"21": "99iot-21p.front.right_t.pin1"
140+
},
141+
"test_pads": {}
142+
}

boards/variants/afw121t.c

+48
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
/* This file was auto-generated from afw121t.json using boardgen */
2+
3+
#include <Arduino.h>
4+
5+
#ifdef LT_VARIANT_INCLUDE
6+
#include LT_VARIANT_INCLUDE
7+
#endif
8+
9+
// clang-format off
10+
PinInfo lt_arduino_pin_info_list[PINS_COUNT] = {
11+
// D0: PA14, PWM0, SWCLK
12+
{PA_14, PIN_GPIO | PIN_IRQ | PIN_PWM | PIN_SWD, PIN_NONE, 0},
13+
// D1: PA15, PWM1, SWDIO
14+
{PA_15, PIN_GPIO | PIN_IRQ | PIN_PWM | PIN_SWD, PIN_NONE, 0},
15+
// D2: PA00, PWM2
16+
{PA_0, PIN_GPIO | PIN_IRQ | PIN_PWM, PIN_NONE, 0},
17+
// D3: PA12, PWM3
18+
{PA_12, PIN_GPIO | PIN_IRQ | PIN_PWM, PIN_NONE, 0},
19+
// D4: PA29, UART2_RX, I2C0_SCL, PWM4
20+
{PA_29, PIN_GPIO | PIN_IRQ | PIN_PWM | PIN_I2C | PIN_UART, PIN_NONE, 0},
21+
// D5: PA05, PWM4, WAKE1
22+
{PA_5, PIN_GPIO | PIN_IRQ | PIN_PWM, PIN_NONE, 0},
23+
// D6: PA18, UART0_RX, SPI0_SCK, SPI1_SCK, I2C1_SCL, SD_D2, TMR4_TRIG, I2S0_MCK, WAKE0
24+
{PA_18, PIN_GPIO | PIN_IRQ | PIN_I2C | PIN_I2S | PIN_SPI | PIN_UART, PIN_NONE, 0},
25+
// D7: PA19, ADC1, UART0_CTS, SPI0_CS, SPI1_CS, I2C0_SDA, SD_D3, TMR5_TRIG, I2S0_TX
26+
{PA_19, PIN_GPIO | PIN_IRQ | PIN_I2C | PIN_I2S | PIN_SPI | PIN_UART, PIN_NONE, 0},
27+
// D8: PA22, UART0_RTS, SPI0_MISO, SPI1_MISO, I2C0_SCL, SD_D0, PWM5, I2S0_WS, WAKE2
28+
{PA_22, PIN_GPIO | PIN_IRQ | PIN_PWM | PIN_I2C | PIN_I2S | PIN_SPI | PIN_UART, PIN_NONE, 0},
29+
// D9: PA23, UART0_TX, SPI0_MOSI, SPI1_MOSI, I2C1_SDA, SD_D1, PWM0, WAKE3
30+
{PA_23, PIN_GPIO | PIN_IRQ | PIN_PWM | PIN_I2C | PIN_SPI | PIN_UART, PIN_NONE, 0},
31+
// D10: PA30, UART2_TX, I2C0_SDA, PWM4
32+
{PA_30, PIN_GPIO | PIN_IRQ | PIN_PWM | PIN_I2C | PIN_UART, PIN_NONE, 0},
33+
};
34+
35+
PinInfo *lt_arduino_pin_gpio_map[] = {
36+
[0] = &(lt_arduino_pin_info_list[2]), // PA_0 (D2)
37+
[5] = &(lt_arduino_pin_info_list[5]), // PA_5 (D5)
38+
[12] = &(lt_arduino_pin_info_list[3]), // PA_12 (D3)
39+
[14] = &(lt_arduino_pin_info_list[0]), // PA_14 (D0)
40+
[15] = &(lt_arduino_pin_info_list[1]), // PA_15 (D1)
41+
[18] = &(lt_arduino_pin_info_list[6]), // PA_18 (D6)
42+
[19] = &(lt_arduino_pin_info_list[7]), // PA_19 (D7)
43+
[22] = &(lt_arduino_pin_info_list[8]), // PA_22 (D8)
44+
[23] = &(lt_arduino_pin_info_list[9]), // PA_23 (D9)
45+
[29] = &(lt_arduino_pin_info_list[4]), // PA_29 (D4)
46+
[30] = &(lt_arduino_pin_info_list[10]), // PA_30 (D10)
47+
};
48+
// clang-format on

0 commit comments

Comments
 (0)