platformio.ini 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386
  1. ; PlatformIO Project Configuration File
  2. ;
  3. ; Build options: build flags, source filter
  4. ; Upload options: custom upload port, speed and extra flags
  5. ; Library options: dependencies, extra library storages
  6. ; Advanced options: extra scripting
  7. ;
  8. ; Please visit documentation for the other options and examples
  9. ; https://docs.platformio.org/page/projectconf.html
  10. [arduino_base]
  11. framework = arduino
  12. monitor_speed = 115200
  13. lib_deps =
  14. SPI
  15. Wire
  16. jgromes/RadioLib @ ^6.3.0
  17. rweather/Crypto @ ^0.4.0
  18. build_flags = -w -DNDEBUG -DRADIOLIB_STATIC_ONLY=1
  19. -D LORA_FREQ=867.5
  20. -D LORA_BW=250
  21. -D LORA_SF=10
  22. build_src_filter = +<*.cpp> +<helpers/*.cpp>
  23. [esp32_base]
  24. extends = arduino_base
  25. platform = espressif32
  26. monitor_filters = esp32_exception_decoder
  27. extra_scripts = merge-bin.py
  28. build_src_filter = ${arduino_base.build_src_filter}
  29. [Heltec_stick_lite]
  30. extends = esp32_base
  31. board = heltec_wireless_stick_lite
  32. [Heltec_lora32_v2]
  33. extends = esp32_base
  34. board = heltec_wifi_lora_32_V2
  35. ; ================
  36. [Heltec_lora32_v3]
  37. extends = esp32_base
  38. board = esp32-s3-devkitc-1
  39. build_flags =
  40. ${esp32_base.build_flags}
  41. -D HELTEC_LORA_V3
  42. -D RADIO_CLASS=CustomSX1262
  43. -D WRAPPER_CLASS=CustomSX1262Wrapper
  44. -D LORA_TX_POWER=22
  45. -D P_LORA_TX_LED=35
  46. -D SX126X_DIO2_AS_RF_SWITCH=true
  47. -D SX126X_DIO3_TCXO_VOLTAGE=1.8
  48. -D SX126X_CURRENT_LIMIT=130.0f ; for best TX power!
  49. build_src_filter = ${esp32_base.build_src_filter}
  50. [env:Heltec_v3_ping_server]
  51. extends = Heltec_lora32_v3
  52. build_src_filter = ${Heltec_lora32_v3.build_src_filter} +<../examples/ping_server/main.cpp>
  53. [env:Heltec_v3_ping_client]
  54. extends = Heltec_lora32_v3
  55. build_src_filter = ${Heltec_lora32_v3.build_src_filter} +<../examples/ping_client/main.cpp>
  56. [env:Heltec_v3_repeater]
  57. extends = Heltec_lora32_v3
  58. build_flags =
  59. ${Heltec_lora32_v3.build_flags}
  60. -D ADVERT_NAME="\"Heltec Repeater\""
  61. -D ADVERT_LAT=-37.0
  62. -D ADVERT_LON=145.0
  63. -D ADMIN_PASSWORD="\"password\""
  64. ; -D MESH_PACKET_LOGGING=1
  65. ; -D MESH_DEBUG=1
  66. build_src_filter = ${Heltec_lora32_v3.build_src_filter} +<../examples/simple_repeater/main.cpp>
  67. lib_deps =
  68. ${Heltec_lora32_v3.lib_deps}
  69. adafruit/RTClib @ ^2.1.3
  70. [env:Heltec_v3_room_server]
  71. extends = Heltec_lora32_v3
  72. build_src_filter = ${Heltec_lora32_v3.build_src_filter} +<../examples/simple_room_server/main.cpp>
  73. build_flags =
  74. ${Heltec_lora32_v3.build_flags}
  75. -D ADVERT_NAME="\"Heltec Room\""
  76. -D ADVERT_LAT=-37.0
  77. -D ADVERT_LON=145.0
  78. -D ADMIN_PASSWORD="\"password\""
  79. -D ROOM_PASSWORD="\"hello\""
  80. ; -D MESH_PACKET_LOGGING=1
  81. ; -D MESH_DEBUG=1
  82. lib_deps =
  83. ${Heltec_lora32_v3.lib_deps}
  84. adafruit/RTClib @ ^2.1.3
  85. [env:Heltec_v3_terminal_chat]
  86. extends = Heltec_lora32_v3
  87. build_flags =
  88. ${Heltec_lora32_v3.build_flags}
  89. -D MAX_CONTACTS=100
  90. -D MAX_GROUP_CHANNELS=1
  91. ; -D MESH_PACKET_LOGGING=1
  92. ; -D MESH_DEBUG=1
  93. build_src_filter = ${Heltec_lora32_v3.build_src_filter} +<../examples/simple_secure_chat/main.cpp>
  94. lib_deps =
  95. ${Heltec_lora32_v3.lib_deps}
  96. adafruit/RTClib @ ^2.1.3
  97. densaugeo/base64 @ ~1.4.0
  98. [env:Heltec_v3_companion_radio_usb]
  99. extends = Heltec_lora32_v3
  100. build_flags =
  101. ${Heltec_lora32_v3.build_flags}
  102. -D MAX_CONTACTS=100
  103. -D MAX_GROUP_CHANNELS=1
  104. ; -D MESH_PACKET_LOGGING=1
  105. ; -D MESH_DEBUG=1
  106. build_src_filter = ${Heltec_lora32_v3.build_src_filter} +<../examples/companion_radio/main.cpp>
  107. lib_deps =
  108. ${Heltec_lora32_v3.lib_deps}
  109. adafruit/RTClib @ ^2.1.3
  110. densaugeo/base64 @ ~1.4.0
  111. [env:Heltec_v3_companion_radio_ble]
  112. extends = Heltec_lora32_v3
  113. build_flags =
  114. ${Heltec_lora32_v3.build_flags}
  115. -D MAX_CONTACTS=100
  116. -D MAX_GROUP_CHANNELS=1
  117. -D BLE_PIN_CODE=123456
  118. -D BLE_DEBUG_LOGGING=1
  119. ; -D MESH_PACKET_LOGGING=1
  120. ; -D MESH_DEBUG=1
  121. build_src_filter = ${Heltec_lora32_v3.build_src_filter} +<helpers/esp32/*.cpp> +<../examples/companion_radio/main.cpp>
  122. lib_deps =
  123. ${Heltec_lora32_v3.lib_deps}
  124. adafruit/RTClib @ ^2.1.3
  125. densaugeo/base64 @ ~1.4.0
  126. [env:Heltec_v3_test_admin]
  127. extends = Heltec_lora32_v3
  128. build_flags =
  129. ${Heltec_lora32_v3.build_flags}
  130. build_src_filter = ${Heltec_lora32_v3.build_src_filter} +<../examples/test_admin/main.cpp>
  131. ; ================
  132. [Xiao_esp32_C3]
  133. extends = esp32_base
  134. board = seeed_xiao_esp32c3
  135. build_flags =
  136. ${esp32_base.build_flags}
  137. -D LORA_TX_BOOST_PIN=D3
  138. -D P_LORA_TX_LED=D5
  139. -D PIN_VBAT_READ=D0
  140. -D P_LORA_DIO_1=D2
  141. -D P_LORA_NSS=D4
  142. -D P_LORA_RESET=RADIOLIB_NC
  143. -D P_LORA_BUSY=D1
  144. -D SX126X_DIO2_AS_RF_SWITCH=true
  145. -D SX126X_DIO3_TCXO_VOLTAGE=1.8
  146. -D SX126X_CURRENT_LIMIT=130.0f ; for best TX power!
  147. [env:Xiao_C3_Repeater_sx1262]
  148. extends = Xiao_esp32_C3
  149. build_src_filter = ${Xiao_esp32_C3.build_src_filter} +<../examples/simple_repeater/main.cpp>
  150. build_flags =
  151. ${Xiao_esp32_C3.build_flags}
  152. -D RADIO_CLASS=CustomSX1262
  153. -D WRAPPER_CLASS=CustomSX1262Wrapper
  154. -D LORA_TX_POWER=22
  155. -D ADVERT_NAME="\"Xiao Repeater\""
  156. -D ADVERT_LAT=-37.0
  157. -D ADVERT_LON=145.0
  158. -D ADMIN_PASSWORD="\"password\""
  159. ; -D MESH_PACKET_LOGGING=1
  160. ; -D MESH_DEBUG=1
  161. lib_deps =
  162. ${Xiao_esp32_C3.lib_deps}
  163. adafruit/RTClib @ ^2.1.3
  164. [env:Xiao_C3_Repeater_sx1268]
  165. extends = Xiao_esp32_C3
  166. build_src_filter = ${Xiao_esp32_C3.build_src_filter} +<../examples/simple_repeater/main.cpp>
  167. build_flags =
  168. ${Xiao_esp32_C3.build_flags}
  169. -D RADIO_CLASS=CustomSX1268
  170. -D WRAPPER_CLASS=CustomSX1268Wrapper
  171. -D LORA_TX_POWER=22
  172. -D ADVERT_NAME="\"Xiao Repeater\""
  173. -D ADVERT_LAT=-37.0
  174. -D ADVERT_LON=145.0
  175. -D ADMIN_PASSWORD="\"password\""
  176. ; -D MESH_PACKET_LOGGING=1
  177. ; -D MESH_DEBUG=1
  178. lib_deps =
  179. ${Xiao_esp32_C3.lib_deps}
  180. adafruit/RTClib @ ^2.1.3
  181. ; =============
  182. [Xiao_S3_WIO]
  183. extends = esp32_base
  184. board = seeed_xiao_esp32s3
  185. board_check = true
  186. board_build.mcu = esp32s3
  187. build_flags = ${esp32_base.build_flags}
  188. -D SEEED_XIAO_S3
  189. -D P_LORA_DIO_1=39
  190. -D P_LORA_NSS=41
  191. -D P_LORA_RESET=42 ; RADIOLIB_NC
  192. -D P_LORA_BUSY=40 ; DIO2 = 38
  193. -D P_LORA_SCLK=7
  194. -D P_LORA_MISO=8
  195. -D P_LORA_MOSI=9
  196. -D SX126X_DIO2_AS_RF_SWITCH=true
  197. -D SX126X_DIO3_TCXO_VOLTAGE=1.8
  198. -D SX126X_CURRENT_LIMIT=130
  199. -D RADIO_CLASS=CustomSX1262
  200. -D WRAPPER_CLASS=CustomSX1262Wrapper
  201. -D LORA_TX_POWER=22
  202. [env:Xiao_S3_WIO_Repeater]
  203. extends = Xiao_S3_WIO
  204. build_src_filter = ${Xiao_S3_WIO.build_src_filter} +<../examples/simple_repeater/main.cpp>
  205. build_flags =
  206. ${Xiao_S3_WIO.build_flags}
  207. -D ADVERT_NAME="\"XiaoS3 Repeater\""
  208. -D ADVERT_LAT=-37.0
  209. -D ADVERT_LON=145.0
  210. -D ADMIN_PASSWORD="\"password\""
  211. ; -D MESH_PACKET_LOGGING=1
  212. ; -D MESH_DEBUG=1
  213. lib_deps =
  214. ${Xiao_S3_WIO.lib_deps}
  215. adafruit/RTClib @ ^2.1.3
  216. [env:Xiao_S3_WIO_terminal_chat]
  217. extends = Xiao_S3_WIO
  218. build_flags =
  219. ${Xiao_S3_WIO.build_flags}
  220. -D MAX_CONTACTS=100
  221. -D MAX_GROUP_CHANNELS=1
  222. ; -D MESH_PACKET_LOGGING=1
  223. ; -D MESH_DEBUG=1
  224. build_src_filter = ${Xiao_S3_WIO.build_src_filter} +<../examples/simple_secure_chat/main.cpp>
  225. lib_deps =
  226. ${Xiao_S3_WIO.lib_deps}
  227. adafruit/RTClib @ ^2.1.3
  228. densaugeo/base64 @ ~1.4.0
  229. ; =============
  230. [LilyGo_T3S3_sx1262]
  231. extends = esp32_base
  232. board = t3_s3_v1_x
  233. build_flags = ${esp32_base.build_flags}
  234. -D LILYGO_T3S3
  235. -D P_LORA_DIO_1=33
  236. -D P_LORA_NSS=7
  237. -D P_LORA_RESET=8 ; RADIOLIB_NC
  238. -D P_LORA_BUSY=34
  239. -D P_LORA_SCLK=5
  240. -D P_LORA_MISO=3
  241. -D P_LORA_MOSI=6
  242. -D P_LORA_TX_LED=37
  243. -D PIN_VBAT_READ=1
  244. -D SX126X_DIO2_AS_RF_SWITCH=true
  245. -D SX126X_DIO3_TCXO_VOLTAGE=1.8
  246. -D SX126X_CURRENT_LIMIT=130
  247. -D RADIO_CLASS=CustomSX1262
  248. -D WRAPPER_CLASS=CustomSX1262Wrapper
  249. -D LORA_TX_POWER=22
  250. [env:LilyGo_T3S3_sx1262_Repeater]
  251. extends = LilyGo_T3S3_sx1262
  252. build_src_filter = ${LilyGo_T3S3_sx1262.build_src_filter} +<../examples/simple_repeater/main.cpp>
  253. build_flags =
  254. ${LilyGo_T3S3_sx1262.build_flags}
  255. -D ADVERT_NAME="\"T3S3 Repeater\""
  256. -D ADVERT_LAT=-37.0
  257. -D ADVERT_LON=145.0
  258. -D ADMIN_PASSWORD="\"password\""
  259. ; -D MESH_PACKET_LOGGING=1
  260. ; -D MESH_DEBUG=1
  261. lib_deps =
  262. ${LilyGo_T3S3_sx1262.lib_deps}
  263. adafruit/RTClib @ ^2.1.3
  264. [env:LilyGo_T3S3_sx1262_terminal_chat]
  265. extends = LilyGo_T3S3_sx1262
  266. build_flags =
  267. ${LilyGo_T3S3_sx1262.build_flags}
  268. -D MAX_CONTACTS=100
  269. -D MAX_GROUP_CHANNELS=1
  270. ; -D MESH_PACKET_LOGGING=1
  271. ; -D MESH_DEBUG=1
  272. build_src_filter = ${LilyGo_T3S3_sx1262.build_src_filter} +<../examples/simple_secure_chat/main.cpp>
  273. lib_deps =
  274. ${LilyGo_T3S3_sx1262.lib_deps}
  275. adafruit/RTClib @ ^2.1.3
  276. densaugeo/base64 @ ~1.4.0
  277. ; ----------------- NRF52 ---------------------
  278. [nrf52_base]
  279. extends = arduino_base
  280. platform = nordicnrf52
  281. build_flags = ${arduino_base.build_flags}
  282. -D NRF52_PLATFORM
  283. [nrf52840_base]
  284. extends = nrf52_base
  285. build_flags = ${nrf52_base.build_flags}
  286. lib_deps =
  287. ${nrf52_base.lib_deps}
  288. rweather/Crypto @ ^0.4.0
  289. https://github.com/adafruit/Adafruit_nRF52_Arduino
  290. [rak4631]
  291. extends = nrf52840_base
  292. platform = https://github.com/maxgerhardt/platform-nordicnrf52.git#rak
  293. board = wiscore_rak4631
  294. board_check = true
  295. build_src_filter = ${nrf52840_base.build_src_filter} +<helpers/nrf52/*.cpp>
  296. build_flags = ${nrf52840_base.build_flags}
  297. -D RAK_4631
  298. -D RADIO_CLASS=CustomSX1262
  299. -D WRAPPER_CLASS=CustomSX1262Wrapper
  300. -D LORA_TX_POWER=22
  301. -D SX126X_CURRENT_LIMIT=130
  302. [env:RAK_4631_Repeater]
  303. extends = rak4631
  304. build_src_filter = ${rak4631.build_src_filter} +<../examples/simple_repeater/main.cpp>
  305. build_flags =
  306. ${rak4631.build_flags}
  307. -D ADVERT_NAME="\"RAK4631 Repeater\""
  308. -D ADVERT_LAT=-37.0
  309. -D ADVERT_LON=145.0
  310. -D ADMIN_PASSWORD="\"password\""
  311. ; -D MESH_PACKET_LOGGING=1
  312. ; -D MESH_DEBUG=1
  313. lib_deps =
  314. ${rak4631.lib_deps}
  315. adafruit/RTClib @ ^2.1.3
  316. [env:RAK_4631_room_server]
  317. extends = rak4631
  318. build_src_filter = ${rak4631.build_src_filter} +<../examples/simple_room_server/main.cpp>
  319. build_flags =
  320. ${rak4631.build_flags}
  321. -D ADVERT_NAME="\"Test Room\""
  322. -D ADVERT_LAT=-37.0
  323. -D ADVERT_LON=145.0
  324. -D ADMIN_PASSWORD="\"password\""
  325. -D ROOM_PASSWORD="\"hello\""
  326. ; -D MESH_PACKET_LOGGING=1
  327. ; -D MESH_DEBUG=1
  328. lib_deps =
  329. ${rak4631.lib_deps}
  330. adafruit/RTClib @ ^2.1.3
  331. [env:RAK_4631_terminal_chat]
  332. extends = rak4631
  333. build_flags =
  334. ${rak4631.build_flags}
  335. -D MAX_CONTACTS=100
  336. -D MAX_GROUP_CHANNELS=1
  337. -D MESH_PACKET_LOGGING=1
  338. -D MESH_DEBUG=1
  339. build_src_filter = ${rak4631.build_src_filter} +<../examples/simple_secure_chat/main.cpp>
  340. lib_deps =
  341. ${rak4631.lib_deps}
  342. densaugeo/base64 @ ~1.4.0
  343. adafruit/RTClib @ ^2.1.3
  344. [env:RAK_4631_companion_radio_usb]
  345. extends = rak4631
  346. build_flags =
  347. ${rak4631.build_flags}
  348. -D MAX_CONTACTS=100
  349. -D MAX_GROUP_CHANNELS=1
  350. ; -D MESH_PACKET_LOGGING=1
  351. ; -D MESH_DEBUG=1
  352. build_src_filter = ${rak4631.build_src_filter} +<../examples/companion_radio/main.cpp>
  353. lib_deps =
  354. ${rak4631.lib_deps}
  355. adafruit/RTClib @ ^2.1.3
  356. densaugeo/base64 @ ~1.4.0