platformio.ini 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234
  1. [ThinkNode_M5]
  2. extends = esp32_base
  3. board = ESP32-S3-WROOM-1-N4
  4. build_flags = ${esp32_base.build_flags}
  5. -I variants/thinknode_m5
  6. -I src/helpers/sensors
  7. -D THINKNODE_M5
  8. -D PIN_BUZZER=9
  9. -D PIN_BOARD_SCL=1
  10. -D PIN_BOARD_SDA=2
  11. -D P_LORA_EN=46
  12. -D P_LORA_DIO_1=4
  13. -D P_LORA_NSS=17
  14. -D P_LORA_RESET=6 ; RADIOLIB_NC
  15. -D P_LORA_BUSY=5 ; DIO2 = 38
  16. -D P_LORA_SCLK=16
  17. -D P_LORA_MISO=7
  18. -D P_LORA_MOSI=15
  19. -D PIN_USER_BTN=21
  20. -D PIN_BUTTON2=14
  21. -D EXP_PIN_LED=1 ; led is on bus expander
  22. -D DISPLAY_ROTATION=4
  23. -D DISPLAY_CLASS=GxEPDDisplay
  24. -D EINK_DISPLAY_MODEL=GxEPD2_154_D67
  25. -D EINK_SCALE_X=1.5625f
  26. -D EINK_SCALE_Y=1.5625f
  27. -D EINK_X_OFFSET=0
  28. -D EINK_Y_OFFSET=10
  29. -D BACKLIGHT_BTN=PIN_BUTTON2
  30. -D AUTO_OFF_MILLIS=0
  31. -D DISABLE_DIAGNOSTIC_OUTPUT
  32. -D SX126X_DIO2_AS_RF_SWITCH=true
  33. -D SX126X_DIO3_TCXO_VOLTAGE=3.3
  34. -D SX126X_CURRENT_LIMIT=140
  35. -D USE_SX1262
  36. -D RADIO_CLASS=CustomSX1262
  37. -D WRAPPER_CLASS=CustomSX1262Wrapper
  38. -D LORA_TX_POWER=22
  39. -D SX126X_RX_BOOSTED_GAIN=1
  40. -D MESH_DEBUG=1
  41. -D ENV_INCLUDE_GPS=1
  42. -D PERSISTANT_GPS=1
  43. -D ENV_SKIP_GPS_DETECT=1
  44. build_src_filter = ${esp32_base.build_src_filter}
  45. +<helpers/sensors/EnvironmentSensorManager.cpp>
  46. +<helpers/ui/MomentaryButton.cpp>
  47. +<helpers/ui/GxEPDDisplay.cpp>
  48. +<../variants/thinknode_m5>
  49. lib_deps = ${esp32_base.lib_deps}
  50. zinggjm/GxEPD2 @ 1.6.2
  51. bakercp/CRC32 @ ^2.0.0
  52. maxpromer/PCA9557-arduino
  53. stevemarple/MicroNMEA @ ^2.0.6
  54. [env:ThinkNode_M5_Repeater]
  55. extends = ThinkNode_M5
  56. build_src_filter = ${ThinkNode_M5.build_src_filter}
  57. +<../examples/simple_repeater/*.cpp>
  58. build_flags =
  59. ${ThinkNode_M5.build_flags}
  60. -D ADVERT_NAME='"Thinknode M5 Repeater"'
  61. -D ADVERT_LAT=0.0
  62. -D ADVERT_LON=0.0
  63. -D ADMIN_PASSWORD='"password"'
  64. -D MAX_NEIGHBOURS=8
  65. ; -D MESH_PACKET_LOGGING=1
  66. ; -D MESH_DEBUG=1
  67. lib_deps =
  68. ${ThinkNode_M5.lib_deps}
  69. ${esp32_ota.lib_deps}
  70. ; [env:ThinkNode_M5_Repeater_bridge_rs232]
  71. ; extends = ThinkNode_M5
  72. ; build_src_filter = ${ThinkNode_M5.build_src_filter}
  73. ; +<helpers/bridges/RS232Bridge.cpp>
  74. ; +<../examples/simple_repeater/*.cpp>
  75. ; build_flags =
  76. ; ${ThinkNode_M5.build_flags}
  77. ; -D ADVERT_NAME='"RS232 Bridge"'
  78. ; -D ADVERT_LAT=0.0
  79. ; -D ADVERT_LON=0.0
  80. ; -D ADMIN_PASSWORD='"password"'
  81. ; -D MAX_NEIGHBOURS=8
  82. ; -D WITH_RS232_BRIDGE=Serial2
  83. ; -D WITH_RS232_BRIDGE_RX=5
  84. ; -D WITH_RS232_BRIDGE_TX=6
  85. ; ; -D MESH_PACKET_LOGGING=1
  86. ; ; -D MESH_DEBUG=1
  87. ; lib_deps =
  88. ; ${ThinkNode_M5.lib_deps}
  89. ; ${esp32_ota.lib_deps}
  90. [env:ThinkNode_M5_Repeater_bridge_espnow]
  91. extends = ThinkNode_M5
  92. build_src_filter = ${ThinkNode_M5.build_src_filter}
  93. +<helpers/bridges/ESPNowBridge.cpp>
  94. +<../examples/simple_repeater/*.cpp>
  95. build_flags =
  96. ${ThinkNode_M5.build_flags}
  97. -D ADVERT_NAME='"ESPNow Bridge"'
  98. -D ADVERT_LAT=0.0
  99. -D ADVERT_LON=0.0
  100. -D ADMIN_PASSWORD='"password"'
  101. -D MAX_NEIGHBOURS=8
  102. -D WITH_ESPNOW_BRIDGE=1
  103. -D WITH_ESPNOW_BRIDGE_SECRET='"shared-secret"'
  104. ; -D MESH_PACKET_LOGGING=1
  105. ; -D MESH_DEBUG=1
  106. lib_deps =
  107. ${ThinkNode_M5.lib_deps}
  108. ${esp32_ota.lib_deps}
  109. [env:ThinkNode_M5_room_server]
  110. extends = ThinkNode_M5
  111. build_src_filter = ${ThinkNode_M5.build_src_filter}
  112. +<../examples/simple_room_server>
  113. build_flags =
  114. ${ThinkNode_M5.build_flags}
  115. -D ADVERT_NAME='"Thinknode M5 Room Server"'
  116. -D ADVERT_LAT=0.0
  117. -D ADVERT_LON=0.0
  118. -D ADMIN_PASSWORD='"password"'
  119. -D ROOM_PASSWORD='"hello"'
  120. ; -D MESH_PACKET_LOGGING=1
  121. ; -D MESH_DEBUG=1
  122. lib_deps =
  123. ${ThinkNode_M5.lib_deps}
  124. ${esp32_ota.lib_deps}
  125. [env:ThinkNode_M5_terminal_chat]
  126. extends = ThinkNode_M5
  127. build_flags =
  128. ${ThinkNode_M5.build_flags}
  129. -D MAX_CONTACTS=350
  130. -D MAX_GROUP_CHANNELS=40
  131. ; -D MESH_PACKET_LOGGING=1
  132. ; -D MESH_DEBUG=1
  133. build_src_filter = ${ThinkNode_M5.build_src_filter}
  134. +<../examples/simple_secure_chat/main.cpp>
  135. lib_deps =
  136. ${ThinkNode_M5.lib_deps}
  137. densaugeo/base64 @ ~1.4.0
  138. [env:ThinkNode_M5_companion_radio_ble]
  139. extends = ThinkNode_M5
  140. build_flags =
  141. ${ThinkNode_M5.build_flags}
  142. -I examples/companion_radio/ui-new
  143. -D MAX_CONTACTS=350
  144. -D MAX_GROUP_CHANNELS=40
  145. -D BLE_PIN_CODE=123456
  146. -D OFFLINE_QUEUE_SIZE=256
  147. -D UI_RECENT_LIST_SIZE=9
  148. ; -D BLE_DEBUG_LOGGING=1
  149. ; -D MESH_PACKET_LOGGING=1
  150. ; -D GPS_NMEA_DEBUG
  151. build_src_filter = ${ThinkNode_M5.build_src_filter}
  152. +<helpers/esp32/*.cpp>
  153. +<helpers/ui/MomentaryButton.cpp>
  154. +<../examples/companion_radio/*.cpp>
  155. +<../examples/companion_radio/ui-new/*.cpp>
  156. +<helpers/ui/buzzer.cpp>
  157. lib_deps =
  158. ${ThinkNode_M5.lib_deps}
  159. densaugeo/base64 @ ~1.4.0
  160. end2endzone/NonBlockingRTTTL@^1.3.0
  161. [env:ThinkNode_M5_companion_radio_usb]
  162. extends = ThinkNode_M5
  163. build_flags =
  164. ${ThinkNode_M5.build_flags}
  165. -I examples/companion_radio/ui-new
  166. -D MAX_CONTACTS=350
  167. -D MAX_GROUP_CHANNELS=40
  168. -D OFFLINE_QUEUE_SIZE=256
  169. build_src_filter = ${ThinkNode_M5.build_src_filter}
  170. +<helpers/esp32/*.cpp>
  171. +<helpers/ui/MomentaryButton.cpp>
  172. +<../examples/companion_radio/*.cpp>
  173. +<../examples/companion_radio/ui-new/*.cpp>
  174. +<helpers/ui/buzzer.cpp>
  175. lib_deps =
  176. ${ThinkNode_M5.lib_deps}
  177. densaugeo/base64 @ ~1.4.0
  178. end2endzone/NonBlockingRTTTL@^1.3.0
  179. [env:ThinkNode_M5_companion_radio_wifi]
  180. extends = ThinkNode_M5
  181. build_flags =
  182. ${ThinkNode_M5.build_flags}
  183. -I examples/companion_radio/ui-new
  184. -D MAX_CONTACTS=350
  185. -D MAX_GROUP_CHANNELS=40
  186. -D OFFLINE_QUEUE_SIZE=256
  187. -D WIFI_DEBUG_LOGGING=1
  188. -D WIFI_SSID='"myssid"'
  189. -D WIFI_PWD='"mypwd"'
  190. build_src_filter = ${ThinkNode_M5.build_src_filter}
  191. +<helpers/esp32/*.cpp>
  192. +<helpers/ui/MomentaryButton.cpp>
  193. +<../examples/companion_radio/*.cpp>
  194. +<../examples/companion_radio/ui-new/*.cpp>
  195. +<helpers/ui/buzzer.cpp>
  196. lib_deps =
  197. ${ThinkNode_M5.lib_deps}
  198. densaugeo/base64 @ ~1.4.0
  199. end2endzone/NonBlockingRTTTL@^1.3.0
  200. [env:ThinkNode_M5_companion_radio_serial]
  201. extends = ThinkNode_M5
  202. build_flags =
  203. ${ThinkNode_M5.build_flags}
  204. -I examples/companion_radio/ui-new
  205. -D MAX_CONTACTS=350
  206. -D MAX_GROUP_CHANNELS=40
  207. -D SERIAL_TX=D6
  208. -D SERIAL_RX=D7
  209. ; -D MESH_PACKET_LOGGING=1
  210. ; -D MESH_DEBUG=1
  211. build_src_filter = ${ThinkNode_M5.build_src_filter}
  212. +<helpers/esp32/*.cpp>
  213. +<helpers/ui/MomentaryButton.cpp>
  214. +<../examples/companion_radio/*.cpp>
  215. +<../examples/companion_radio/ui-new/*.cpp>
  216. +<helpers/ui/buzzer.cpp>
  217. lib_deps =
  218. ${ThinkNode_M5.lib_deps}
  219. densaugeo/base64 @ ~1.4.0
  220. end2endzone/NonBlockingRTTTL@^1.3.0
  221. [env:ThinkNode_M5_kiss_modem]
  222. extends = ThinkNode_M5
  223. build_src_filter = ${ThinkNode_M5.build_src_filter}
  224. +<../examples/kiss_modem/>