|
1 | | -[nrf52840_xiao] |
| 1 | +[ikoka_nano_nrf] |
2 | 2 | extends = nrf52_base |
3 | | -platform_packages = |
4 | | - toolchain-gccarmnoneeabi@~1.100301.0 |
5 | | - framework-arduinoadafruitnrf52 |
6 | 3 | board = seeed-xiao-afruitnrf52-nrf52840 |
7 | 4 | board_build.ldscript = boards/nrf52840_s140_v7.ld |
8 | 5 | build_flags = ${nrf52_base.build_flags} |
| 6 | + ${sensor_base.build_flags} |
9 | 7 | -D NRF52_PLATFORM -D XIAO_NRF52 |
10 | 8 | -I lib/nrf52/s140_nrf52_7.3.0_API/include |
11 | 9 | -I lib/nrf52/s140_nrf52_7.3.0_API/include/nrf52 |
12 | | -lib_ignore = |
13 | | - BluetoothOTA |
14 | | - lvgl |
15 | | - lib5b4 |
16 | | -lib_deps = |
17 | | - ${nrf52_base.lib_deps} |
18 | | - rweather/Crypto @ ^0.4.0 |
19 | | - adafruit/Adafruit INA3221 Library @ ^1.0.1 |
20 | | - adafruit/Adafruit INA219 @ ^1.2.3 |
21 | | - adafruit/Adafruit AHTX0 @ ^2.0.5 |
22 | | - adafruit/Adafruit BME280 Library @ ^2.3.0 |
23 | | - adafruit/Adafruit SSD1306 @ ^2.5.13 |
24 | | - |
25 | | -[ikoka_nano_nrf_baseboard] |
26 | | -extends = nrf52840_xiao |
27 | | -;board_build.ldscript = boards/nrf52840_s140_v7.ld |
28 | | -build_flags = ${nrf52840_xiao.build_flags} |
29 | | - -D P_LORA_TX_LED=11 |
30 | 10 | -I variants/ikoka_nano_nrf |
31 | 11 | -I src/helpers/nrf52 |
| 12 | + -D P_LORA_TX_LED=11 |
32 | 13 | -D DISPLAY_CLASS=NullDisplayDriver |
33 | 14 | -D RADIO_CLASS=CustomSX1262 |
34 | 15 | -D WRAPPER_CLASS=CustomSX1262Wrapper |
35 | 16 | -D P_LORA_DIO_1=D1 |
36 | | -; -D P_LORA_BUSY=D3 |
37 | | - -D P_LORA_BUSY=D2 ; specific to ikoka nano variant. |
38 | | -; -D P_LORA_RESET=D2 |
39 | | - -D P_LORA_RESET=D3 ; specific to ikoka nano variant. |
40 | | -; -D P_LORA_NSS=D4 |
41 | | - -D P_LORA_NSS=D0 ; specific to ikoka nano variant. |
42 | | -; -D SX126X_RXEN=D5 |
| 17 | + -D P_LORA_BUSY=D2 |
| 18 | + -D P_LORA_RESET=D3 |
| 19 | + -D P_LORA_NSS=D0 |
43 | 20 | -D SX126X_RXEN=D7 |
44 | 21 | -D SX126X_TXEN=RADIOLIB_NC |
45 | 22 | -D SX126X_DIO2_AS_RF_SWITCH=1 |
46 | 23 | -D SX126X_DIO3_TCXO_VOLTAGE=1.8 |
47 | 24 | -D SX126X_CURRENT_LIMIT=140 |
48 | 25 | -D SX126X_RX_BOOSTED_GAIN=1 |
49 | | - -D PIN_WIRE_SCL=5 ; specific to ikoka nano variant. |
50 | | - -D PIN_WIRE_SDA=4 ; specific to ikoka nano variant. |
51 | | - -D ENV_INCLUDE_AHTX0=1 |
52 | | - -D ENV_INCLUDE_BME280=1 |
53 | | - -D ENV_INCLUDE_INA3221=1 |
54 | | - -D ENV_INCLUDE_INA219=1 |
| 26 | + -D PIN_WIRE_SCL=5 |
| 27 | + -D PIN_WIRE_SDA=4 |
| 28 | + -UENV_INCLUDE_GPS |
55 | 29 | debug_tool = jlink |
56 | 30 | upload_protocol = nrfutil |
57 | | - |
58 | | - |
59 | | -;;; abstracted hardware variants |
| 31 | +lib_deps = ${nrf52_base.lib_deps} |
| 32 | + ${sensor_base.lib_deps} |
60 | 33 |
|
61 | 34 | [ikoka_nano_nrf_e22_22dbm] |
62 | | -extends = ikoka_nano_nrf_baseboard |
| 35 | +extends = ikoka_nano_nrf |
63 | 36 | ; No PA in this model, full 22dBm |
64 | 37 | build_flags = |
65 | | - ${ikoka_nano_nrf_baseboard.build_flags} |
| 38 | + ${ikoka_nano_nrf.build_flags} |
66 | 39 | -D MANUFACTURER_STRING='"Ikoka Nano-E22-22dBm (Xiao_nrf52)"' |
67 | 40 | -D LORA_TX_POWER=22 |
68 | | -build_src_filter = ${nrf52840_xiao.build_src_filter} |
| 41 | +build_src_filter = ${ikoka_nano_nrf.build_src_filter} |
69 | 42 | +<helpers/*.cpp> |
70 | 43 | +<helpers/sensors> |
71 | 44 | +<helpers/ui/NullDisplayDriver.cpp> |
72 | 45 | +<../variants/ikoka_nano_nrf> |
73 | 46 |
|
74 | 47 | [ikoka_nano_nrf_e22_30dbm] |
75 | | -extends = ikoka_nano_nrf_baseboard |
| 48 | +extends = ikoka_nano_nrf |
76 | 49 | ; limit txpower to 20dBm on E22-900M30S. Anything higher will |
77 | 50 | ; cause distortion in the PA output. 20dBm in -> 30dBm out |
78 | 51 | build_flags = |
79 | | - ${ikoka_nano_nrf_baseboard.build_flags} |
| 52 | + ${ikoka_nano_nrf.build_flags} |
80 | 53 | -D MANUFACTURER_STRING='"Ikoka Nano-E22-30dBm (Xiao_nrf52)"' |
81 | 54 | -D LORA_TX_POWER=20 |
82 | | -build_src_filter = ${nrf52840_xiao.build_src_filter} |
| 55 | +build_src_filter = ${ikoka_nano_nrf.build_src_filter} |
83 | 56 | +<helpers/*.cpp> |
84 | 57 | +<helpers/sensors> |
85 | 58 | +<helpers/ui/NullDisplayDriver.cpp> |
86 | 59 | +<../variants/ikoka_nano_nrf> |
87 | 60 |
|
88 | 61 | [ikoka_nano_nrf_e22_33dbm] |
89 | | -extends = ikoka_nano_nrf_baseboard |
| 62 | +extends = ikoka_nano_nrf |
90 | 63 | ; limit txpower to 9dBm on E22-900M33S to avoid hardware damage |
91 | 64 | ; to the rf amplifier frontend. 9dBm in -> 33dBm out |
92 | 65 | build_flags = |
93 | | - ${ikoka_nano_nrf_baseboard.build_flags} |
| 66 | + ${ikoka_nano_nrf.build_flags} |
94 | 67 | -D MANUFACTURER_STRING='"Ikoka Nano-E22-33dBm (Xiao_nrf52)"' |
95 | 68 | -D LORA_TX_POWER=9 |
96 | | -build_src_filter = ${nrf52840_xiao.build_src_filter} |
| 69 | +build_src_filter = ${ikoka_nano_nrf.build_src_filter} |
97 | 70 | +<helpers/*.cpp> |
98 | 71 | +<helpers/sensors> |
99 | 72 | +<helpers/ui/NullDisplayDriver.cpp> |
100 | 73 | +<../variants/ikoka_nano_nrf> |
101 | 74 |
|
102 | | -;;; abstracted firmware roles |
103 | | - |
104 | 75 | [ikoka_nano_nrf_companion_radio_ble] |
105 | | -extends = ikoka_nano_nrf_baseboard |
| 76 | +extends = ikoka_nano_nrf |
106 | 77 | board_build.ldscript = boards/nrf52840_s140_v7_extrafs.ld |
107 | 78 | board_upload.maximum_size = 708608 |
108 | 79 | build_flags = |
109 | | - ${ikoka_nano_nrf_baseboard.build_flags} |
| 80 | + ${ikoka_nano_nrf.build_flags} |
110 | 81 | -D MAX_CONTACTS=350 |
111 | 82 | -D MAX_GROUP_CHANNELS=40 |
112 | 83 | -D BLE_PIN_CODE=123456 |
113 | 84 | -D OFFLINE_QUEUE_SIZE=256 |
114 | 85 | -I examples/companion_radio/ui-new |
| 86 | + -D QSPIFLASH=1 |
115 | 87 | ; -D BLE_DEBUG_LOGGING=1 |
116 | 88 | ; -D MESH_PACKET_LOGGING=1 |
117 | 89 | ; -D MESH_DEBUG=1 |
118 | | -build_src_filter = ${ikoka_nano_nrf_baseboard.build_src_filter} |
| 90 | +build_src_filter = ${ikoka_nano_nrf.build_src_filter} |
119 | 91 | +<helpers/nrf52/SerialBLEInterface.cpp> |
120 | 92 | +<../examples/companion_radio/*.cpp> |
121 | 93 | +<../examples/companion_radio/ui-new/*.cpp> |
122 | 94 | lib_deps = |
123 | | - ${ikoka_nano_nrf_baseboard.lib_deps} |
| 95 | + ${ikoka_nano_nrf.lib_deps} |
124 | 96 | densaugeo/base64 @ ~1.4.0 |
125 | 97 |
|
126 | 98 | [ikoka_nano_nrf_companion_radio_usb] |
127 | | -extends = ikoka_nano_nrf_baseboard |
| 99 | +extends = ikoka_nano_nrf |
128 | 100 | board_build.ldscript = boards/nrf52840_s140_v7_extrafs.ld |
129 | 101 | board_upload.maximum_size = 708608 |
130 | 102 | build_flags = |
131 | | - ${ikoka_nano_nrf_baseboard.build_flags} |
| 103 | + ${ikoka_nano_nrf.build_flags} |
132 | 104 | -D MAX_CONTACTS=350 |
133 | 105 | -D MAX_GROUP_CHANNELS=40 |
134 | 106 | -I examples/companion_radio/ui-new |
| 107 | + -D QSPIFLASH=1 |
135 | 108 | ; -D MESH_PACKET_LOGGING=1 |
136 | 109 | ; -D MESH_DEBUG=1 |
137 | | -build_src_filter = ${ikoka_nano_nrf_baseboard.build_src_filter} |
| 110 | +build_src_filter = ${ikoka_nano_nrf.build_src_filter} |
138 | 111 | +<helpers/nrf52/SerialBLEInterface.cpp> |
139 | 112 | +<../examples/companion_radio/*.cpp> |
140 | 113 | +<../examples/companion_radio/ui-new/*.cpp> |
141 | 114 | lib_deps = |
142 | | - ${ikoka_nano_nrf_baseboard.lib_deps} |
| 115 | + ${ikoka_nano_nrf.lib_deps} |
143 | 116 | densaugeo/base64 @ ~1.4.0 |
144 | 117 |
|
145 | 118 | [ikoka_nano_nrf_repeater] |
146 | | -extends = ikoka_nano_nrf_baseboard |
| 119 | +extends = ikoka_nano_nrf |
147 | 120 | build_flags = |
148 | | - ${ikoka_nano_nrf_baseboard.build_flags} |
| 121 | + ${ikoka_nano_nrf.build_flags} |
149 | 122 | -D ADVERT_NAME='"Ikoka Nano Repeater"' |
150 | 123 | -D ADVERT_LAT=0.0 |
151 | 124 | -D ADVERT_LON=0.0 |
152 | 125 | -D ADMIN_PASSWORD='"password"' |
153 | 126 | -D MAX_NEIGHBOURS=50 |
154 | 127 | ; -D MESH_PACKET_LOGGING=1 |
155 | 128 | ; -D MESH_DEBUG=1 |
156 | | -build_src_filter = ${ikoka_nano_nrf_baseboard.build_src_filter} |
| 129 | +build_src_filter = ${ikoka_nano_nrf.build_src_filter} |
157 | 130 | +<../examples/simple_repeater/*.cpp> |
158 | 131 |
|
159 | 132 | [ikoka_nano_nrf_room_server] |
160 | | -extends = ikoka_nano_nrf_baseboard |
| 133 | +extends = ikoka_nano_nrf |
161 | 134 | build_flags = |
162 | | - ${ikoka_nano_nrf_baseboard.build_flags} |
| 135 | + ${ikoka_nano_nrf.build_flags} |
163 | 136 | -D ADVERT_NAME='"Ikoka Nano Room"' |
164 | 137 | -D ADVERT_LAT=0.0 |
165 | 138 | -D ADVERT_LON=0.0 |
166 | 139 | -D ADMIN_PASSWORD='"password"' |
167 | 140 | ; -D MESH_PACKET_LOGGING=1 |
168 | 141 | ; -D MESH_DEBUG=1 |
169 | | -build_src_filter = ${ikoka_nano_nrf_baseboard.build_src_filter} |
| 142 | +build_src_filter = ${ikoka_nano_nrf.build_src_filter} |
170 | 143 | +<../examples/simple_room_server/*.cpp> |
171 | 144 |
|
172 | | -;;; hardware + firmware variants |
173 | | - |
174 | 145 | ;;; 22dBm EBYTE E22-900M22 variants |
175 | | - |
176 | 146 | [env:ikoka_nano_nrf_22dbm_companion_radio_usb] |
177 | 147 | extends = |
178 | 148 | ikoka_nano_nrf_e22_22dbm |
@@ -219,7 +189,6 @@ build_src_filter = |
219 | 189 |
|
220 | 190 |
|
221 | 191 | ;;; 30dBm EBYTE E22-900M30 variants |
222 | | - |
223 | 192 | [env:ikoka_nano_nrf_30dbm_companion_radio_usb] |
224 | 193 | extends = |
225 | 194 | ikoka_nano_nrf_e22_30dbm |
@@ -266,7 +235,6 @@ build_src_filter = |
266 | 235 |
|
267 | 236 |
|
268 | 237 | ;;; 33dBm EBYTE E22-900M33 variants |
269 | | - |
270 | 238 | [env:ikoka_nano_nrf_33dbm_companion_radio_usb] |
271 | 239 | extends = |
272 | 240 | ikoka_nano_nrf_e22_33dbm |
|
0 commit comments