diff --git a/platformio.ini b/platformio.ini index 771ddf0d..985943c7 100644 --- a/platformio.ini +++ b/platformio.ini @@ -9,19 +9,19 @@ ; https://docs.platformio.org/page/projectconf.html [platformio] -extra_configs = +extra_configs = variants/*/platformio.ini [arduino_base] framework = arduino monitor_speed = 115200 -lib_deps = - SPI - Wire - jgromes/RadioLib @ ^7.1.2 - rweather/Crypto @ ^0.4.0 - adafruit/RTClib @ ^2.1.3 - melopero/Melopero RV3028 @ ^1.1.0 +lib_deps = + SPI + Wire + jgromes/RadioLib @ ^7.1.2 + rweather/Crypto @ ^0.4.0 + adafruit/RTClib @ ^2.1.3 + melopero/Melopero RV3028 @ ^1.1.0 build_flags = -w -DNDEBUG -DRADIOLIB_STATIC_ONLY=1 -DRADIOLIB_GODMODE=1 -D LORA_FREQ=869.525 -D LORA_BW=250 @@ -38,1388 +38,25 @@ platform = espressif32 monitor_filters = esp32_exception_decoder extra_scripts = merge-bin.py build_flags = ${arduino_base.build_flags} +; -D ESP32_CPU_FREQ=80 ; change it to your need build_src_filter = ${arduino_base.build_src_filter} [esp32_ota] -lib_deps = - me-no-dev/ESPAsyncWebServer @ ^3.6.0 - file://arch/esp32/AsyncElegantOTA +lib_deps = + me-no-dev/ESPAsyncWebServer @ ^3.6.0 + file://arch/esp32/AsyncElegantOTA +; ----------------- NRF52 --------------------- [nrf52_base] extends = arduino_base platform = nordicnrf52 build_flags = ${arduino_base.build_flags} - -D NRF52_PLATFORM + -D NRF52_PLATFORM [nrf52840_base] extends = nrf52_base build_flags = ${nrf52_base.build_flags} -lib_deps = - ${nrf52_base.lib_deps} - rweather/Crypto @ ^0.4.0 - https://github.com/adafruit/Adafruit_nRF52_Arduino - -[Generic_ESPNOW] -extends = esp32_base -board = esp32-c3-devkitm-1 -build_flags = - ${esp32_base.build_flags} - -I variants/generic_espnow - -D PIN_BOARD_SDA=-1 - -D PIN_BOARD_SCL=-1 - -D PIN_USER_BTN=0 -build_src_filter = ${esp32_base.build_src_filter} - + - +<../variants/generic_espnow> - -[env:Generic_ESPNOW_terminal_chat] -extends = Generic_ESPNOW -build_flags = - ${Generic_ESPNOW.build_flags} - -D MAX_CONTACTS=100 - -D MAX_GROUP_CHANNELS=1 -build_src_filter = ${Generic_ESPNOW.build_src_filter} - +<../examples/simple_secure_chat/main.cpp> -lib_deps = - ${Generic_ESPNOW.lib_deps} - densaugeo/base64 @ ~1.4.0 - -[env:Generic_ESPNOW_repeatr] -extends = Generic_ESPNOW -build_flags = - ${Generic_ESPNOW.build_flags} - -D ADVERT_NAME='"ESPNOW Repeater"' - -D ADVERT_LAT=0.0 - -D ADVERT_LON=0.0 - -D ADMIN_PASSWORD='"password"' -build_src_filter = ${Generic_ESPNOW.build_src_filter} - +<../examples/simple_repeater/main.cpp> -lib_deps = - ${Generic_ESPNOW.lib_deps} - ${esp32_ota.lib_deps} - densaugeo/base64 @ ~1.4.0 - -[env:Generic_ESPNOW_comp_radio_usb] -extends = Generic_ESPNOW -build_flags = - ${Generic_ESPNOW.build_flags} - -D MAX_CONTACTS=100 - -D MAX_GROUP_CHANNELS=8 -build_src_filter = ${Generic_ESPNOW.build_src_filter} - +<../examples/companion_radio/main.cpp> -lib_deps = - ${Generic_ESPNOW.lib_deps} - densaugeo/base64 @ ~1.4.0 - -[env:Generic_ESPNOW_room_svr] -extends = Generic_ESPNOW -build_flags = - ${Generic_ESPNOW.build_flags} - -D ADVERT_NAME='"Heltec Room"' - -D ADVERT_LAT=0.0 - -D ADVERT_LON=0.0 - -D ADMIN_PASSWORD='"password"' - -D ROOM_PASSWORD='"hello"' -build_src_filter = ${Generic_ESPNOW.build_src_filter} - +<../examples/simple_room_server/main.cpp> -lib_deps = - ${Generic_ESPNOW.lib_deps} - ${esp32_ota.lib_deps} - -[Heltec_lora32_v2] -extends = esp32_base -board = heltec_wifi_lora_32_V2 -build_flags = - ${esp32_base.build_flags} - -I variants/heltec_v2 - -D HELTEC_LORA_V2 - -D PIN_BOARD_SDA=4 - -D PIN_BOARD_SCL=15 - -D PIN_USER_BTN=0 - -D PIN_OLED_RESET=16 - -D RADIO_CLASS=CustomSX1276 - -D WRAPPER_CLASS=CustomSX1276Wrapper - -D LORA_TX_POWER=20 - -D P_LORA_TX_LED=25 -build_src_filter = ${esp32_base.build_src_filter} - +<../variants/heltec_v2> -lib_deps = - ${esp32_base.lib_deps} - adafruit/Adafruit SSD1306 @ ^2.5.13 - -[env:Heltec_v2_repeater] -extends = Heltec_lora32_v2 -build_flags = - ${Heltec_lora32_v2.build_flags} - -D DISPLAY_CLASS=SSD1306Display - -D ADVERT_NAME='"Heltec Repeater"' - -D ADVERT_LAT=0.0 - -D ADVERT_LON=0.0 - -D ADMIN_PASSWORD='"password"' -build_src_filter = ${Heltec_lora32_v2.build_src_filter} - +<../examples/simple_repeater> - + -lib_deps = - ${Heltec_lora32_v2.lib_deps} - ${esp32_ota.lib_deps} - -[env:Heltec_v2_room_server] -extends = Heltec_lora32_v2 -build_flags = - ${Heltec_lora32_v2.build_flags} - -D DISPLAY_CLASS=SSD1306Display - -D ADVERT_NAME='"Heltec Room"' - -D ADVERT_LAT=0.0 - -D ADVERT_LON=0.0 - -D ADMIN_PASSWORD='"password"' - -D ROOM_PASSWORD='"hello"' -build_src_filter = ${Heltec_lora32_v2.build_src_filter} - + - +<../examples/simple_room_server> -lib_deps = - ${Heltec_lora32_v2.lib_deps} - ${esp32_ota.lib_deps} - -[env:Heltec_v2_terminal_chat] -extends = Heltec_lora32_v2 -build_flags = - ${Heltec_lora32_v2.build_flags} - -D MAX_CONTACTS=100 - -D MAX_GROUP_CHANNELS=1 -build_src_filter = ${Heltec_lora32_v2.build_src_filter} - +<../examples/simple_secure_chat/main.cpp> -lib_deps = - ${Heltec_lora32_v2.lib_deps} - densaugeo/base64 @ ~1.4.0 - -[env:Heltec_v2_companion_radio_usb] -extends = Heltec_lora32_v2 -build_flags = - ${Heltec_lora32_v2.build_flags} - -D DISPLAY_CLASS=SSD1306Display - -D MAX_CONTACTS=100 - -D MAX_GROUP_CHANNELS=8 -build_src_filter = ${Heltec_lora32_v2.build_src_filter} - + - + - +<../examples/companion_radio> -lib_deps = - ${Heltec_lora32_v2.lib_deps} - densaugeo/base64 @ ~1.4.0 - -[env:Heltec_v2_companion_radio_ble] -extends = Heltec_lora32_v2 -build_flags = - ${Heltec_lora32_v2.build_flags} - -D DISPLAY_CLASS=SSD1306Display - -D MAX_CONTACTS=100 - -D MAX_GROUP_CHANNELS=8 - -D BLE_PIN_CODE=0 - -D BLE_DEBUG_LOGGING=1 -build_src_filter = ${Heltec_lora32_v2.build_src_filter} - + - + - +<../examples/companion_radio> -lib_deps = - ${Heltec_lora32_v2.lib_deps} - densaugeo/base64 @ ~1.4.0 - -[Heltec_lora32_v3] -extends = esp32_base -board = esp32-s3-devkitc-1 -build_flags = - ${esp32_base.build_flags} - -I variants/heltec_v3 - -D HELTEC_LORA_V3 - -D RADIO_CLASS=CustomSX1262 - -D WRAPPER_CLASS=CustomSX1262Wrapper - -D LORA_TX_POWER=22 - -D P_LORA_TX_LED=35 - -D PIN_BOARD_SDA=17 - -D PIN_BOARD_SCL=18 - -D PIN_USER_BTN=0 - -D SX126X_DIO2_AS_RF_SWITCH=true - -D SX126X_DIO3_TCXO_VOLTAGE=1.8 - -D SX126X_CURRENT_LIMIT=130.0f - -D SX126X_RX_BOOSTED_GAIN=1 -build_src_filter = ${esp32_base.build_src_filter} - +<../variants/heltec_v3> -lib_deps = - ${esp32_base.lib_deps} - adafruit/Adafruit SSD1306 @ ^2.5.13 - -[env:Heltec_v3_repeater] -extends = Heltec_lora32_v3 -build_flags = - ${Heltec_lora32_v3.build_flags} - -D DISPLAY_CLASS=SSD1306Display - -D ADVERT_NAME='"Heltec Repeater"' - -D ADVERT_LAT=0.0 - -D ADVERT_LON=0.0 - -D ADMIN_PASSWORD='"password"' - -D MESH_PACKET_LOGGING=1 -build_src_filter = ${Heltec_lora32_v3.build_src_filter} - + - +<../examples/simple_repeater> -lib_deps = - ${Heltec_lora32_v3.lib_deps} - ${esp32_ota.lib_deps} - -[env:Heltec_v3_room_server] -extends = Heltec_lora32_v3 -build_flags = - ${Heltec_lora32_v3.build_flags} - -D DISPLAY_CLASS=SSD1306Display - -D ADVERT_NAME='"Heltec Room"' - -D ADVERT_LAT=0.0 - -D ADVERT_LON=0.0 - -D ADMIN_PASSWORD='"password"' - -D ROOM_PASSWORD='"hello"' -build_src_filter = ${Heltec_lora32_v3.build_src_filter} - + - +<../examples/simple_room_server> -lib_deps = - ${Heltec_lora32_v3.lib_deps} - ${esp32_ota.lib_deps} - -[env:Heltec_v3_terminal_chat] -extends = Heltec_lora32_v3 -build_flags = - ${Heltec_lora32_v3.build_flags} - -D MAX_CONTACTS=100 - -D MAX_GROUP_CHANNELS=1 -build_src_filter = ${Heltec_lora32_v3.build_src_filter} - +<../examples/simple_secure_chat/main.cpp> -lib_deps = - ${Heltec_lora32_v3.lib_deps} - densaugeo/base64 @ ~1.4.0 - -[env:Heltec_v3_companion_radio_usb] -extends = Heltec_lora32_v3 -build_flags = - ${Heltec_lora32_v3.build_flags} - -D MAX_CONTACTS=100 - -D MAX_GROUP_CHANNELS=8 - -D DISPLAY_CLASS=SSD1306Display -build_src_filter = ${Heltec_lora32_v3.build_src_filter} - + - +<../examples/companion_radio> -lib_deps = - ${Heltec_lora32_v3.lib_deps} - densaugeo/base64 @ ~1.4.0 - -[env:Heltec_v3_companion_radio_ble] -extends = Heltec_lora32_v3 -build_flags = - ${Heltec_lora32_v3.build_flags} - -D MAX_CONTACTS=100 - -D MAX_GROUP_CHANNELS=8 - -D DISPLAY_CLASS=SSD1306Display - -D BLE_PIN_CODE=0 - -D BLE_DEBUG_LOGGING=1 -build_src_filter = ${Heltec_lora32_v3.build_src_filter} - + - + - +<../examples/companion_radio> -lib_deps = - ${Heltec_lora32_v3.lib_deps} - densaugeo/base64 @ ~1.4.0 - -[env:Heltec_v3_companion_radio_wifi] -extends = Heltec_lora32_v3 -build_flags = - ${Heltec_lora32_v3.build_flags} - -D MAX_CONTACTS=100 - -D MAX_GROUP_CHANNELS=8 - -D DISPLAY_CLASS=SSD1306Display - -D WIFI_DEBUG_LOGGING=1 - -D WIFI_SSID='"myssid"' - -D WIFI_PWD='"mypwd"' -build_src_filter = ${Heltec_lora32_v3.build_src_filter} - + - + - +<../examples/companion_radio> -lib_deps = - ${Heltec_lora32_v3.lib_deps} - densaugeo/base64 @ ~1.4.0 - -[env:Heltec_WSL3_repeater] -extends = Heltec_lora32_v3 -build_flags = - ${Heltec_lora32_v3.build_flags} - -D ADVERT_NAME='"Heltec Repeater"' - -D ADVERT_LAT=0.0 - -D ADVERT_LON=0.0 - -D ADMIN_PASSWORD='"password"' - -D MESH_PACKET_LOGGING=1 -build_src_filter = ${Heltec_lora32_v3.build_src_filter} - +<../examples/simple_repeater> -lib_deps = - ${Heltec_lora32_v3.lib_deps} - ${esp32_ota.lib_deps} - -[env:Heltec_WSL3_room_server] -extends = Heltec_lora32_v3 -build_src_filter = ${Heltec_lora32_v3.build_src_filter} - +<../examples/simple_room_server> -build_flags = - ${Heltec_lora32_v3.build_flags} - -D ADVERT_NAME='"Heltec Room"' - -D ADVERT_LAT=0.0 - -D ADVERT_LON=0.0 - -D ADMIN_PASSWORD='"password"' - -D ROOM_PASSWORD='"hello"' -lib_deps = - ${Heltec_lora32_v3.lib_deps} - ${esp32_ota.lib_deps} - -[env:Heltec_WSL3_companion_radio_ble] -extends = Heltec_lora32_v3 -build_flags = - ${Heltec_lora32_v3.build_flags} - -D MAX_CONTACTS=100 - -D MAX_GROUP_CHANNELS=8 - -D BLE_PIN_CODE=123456 - -D BLE_DEBUG_LOGGING=1 -build_src_filter = ${Heltec_lora32_v3.build_src_filter} - + - +<../examples/companion_radio> -lib_deps = - ${Heltec_lora32_v3.lib_deps} - densaugeo/base64 @ ~1.4.0 - -[LilyGo_T3S3_sx1262] -extends = esp32_base -board = t3_s3_v1_x -build_flags = - ${esp32_base.build_flags} - -I variants/lilygo_t3s3 - -D LILYGO_T3S3 - -D P_LORA_DIO_1=33 - -D P_LORA_NSS=7 - -D P_LORA_RESET=8 - -D P_LORA_BUSY=34 - -D P_LORA_SCLK=5 - -D P_LORA_MISO=3 - -D P_LORA_MOSI=6 - -D P_LORA_TX_LED=37 - -D PIN_VBAT_READ=1 - -D PIN_USER_BTN=0 - -D PIN_BOARD_SDA=18 - -D PIN_BOARD_SCL=17 - -D P_LORA_TX_LED=37 - -D PIN_OLED_RESET=21 - -D SX126X_DIO2_AS_RF_SWITCH=true - -D SX126X_DIO3_TCXO_VOLTAGE=1.8 - -D SX126X_CURRENT_LIMIT=130 - -D RADIO_CLASS=CustomSX1262 - -D WRAPPER_CLASS=CustomSX1262Wrapper - -D LORA_TX_POWER=22 - -D SX126X_RX_BOOSTED_GAIN=1 -build_src_filter = ${esp32_base.build_src_filter} - +<../variants/lilygo_t3s3> -lib_deps = - ${esp32_base.lib_deps} - adafruit/Adafruit SSD1306 @ ^2.5.13 - -[env:LilyGo_T3S3_sx1262_Repeater] -extends = LilyGo_T3S3_sx1262 -build_flags = - ${LilyGo_T3S3_sx1262.build_flags} - -D DISPLAY_CLASS=SSD1306Display - -D ADVERT_NAME='"T3S3-1262 Repeater"' - -D ADVERT_LAT=0.0 - -D ADVERT_LON=0.0 - -D ADMIN_PASSWORD='"password"' -build_src_filter = ${LilyGo_T3S3_sx1262.build_src_filter} - + - +<../examples/simple_repeater> -lib_deps = - ${LilyGo_T3S3_sx1262.lib_deps} - ${esp32_ota.lib_deps} - -[env:LilyGo_T3S3_sx1262_terminal_chat] -extends = LilyGo_T3S3_sx1262 -build_flags = - ${LilyGo_T3S3_sx1262.build_flags} - -D MAX_CONTACTS=100 - -D MAX_GROUP_CHANNELS=1 -build_src_filter = ${LilyGo_T3S3_sx1262.build_src_filter} - +<../examples/simple_secure_chat/main.cpp> -lib_deps = - ${LilyGo_T3S3_sx1262.lib_deps} - densaugeo/base64 @ ~1.4.0 - -[env:LilyGo_T3S3_sx1262_room_server] -extends = LilyGo_T3S3_sx1262 -build_flags = - ${LilyGo_T3S3_sx1262.build_flags} - -D DISPLAY_CLASS=SSD1306Display - -D ADVERT_NAME='"T3S3-1262 Room"' - -D ADVERT_LAT=0.0 - -D ADVERT_LON=0.0 - -D ADMIN_PASSWORD='"password"' - -D ROOM_PASSWORD='"hello"' -build_src_filter = ${LilyGo_T3S3_sx1262.build_src_filter} - + - +<../examples/simple_room_server> -lib_deps = - ${LilyGo_T3S3_sx1262.lib_deps} - ${esp32_ota.lib_deps} - -[env:LilyGo_T3S3_sx1262_companion_radio_usb] -extends = LilyGo_T3S3_sx1262 -build_flags = - ${LilyGo_T3S3_sx1262.build_flags} - -D DISPLAY_CLASS=SSD1306Display - -D MAX_CONTACTS=100 - -D MAX_GROUP_CHANNELS=8 -build_src_filter = ${LilyGo_T3S3_sx1262.build_src_filter} - + - +<../examples/companion_radio> -lib_deps = - ${LilyGo_T3S3_sx1262.lib_deps} - densaugeo/base64 @ ~1.4.0 - -[env:LilyGo_T3S3_sx1262_companion_radio_ble] -extends = LilyGo_T3S3_sx1262 -build_flags = - ${LilyGo_T3S3_sx1262.build_flags} - -D DISPLAY_CLASS=SSD1306Display - -D MAX_CONTACTS=100 - -D MAX_GROUP_CHANNELS=8 - -D BLE_PIN_CODE=123456 - -D BLE_DEBUG_LOGGING=1 -build_src_filter = ${LilyGo_T3S3_sx1262.build_src_filter} - + - + - +<../examples/companion_radio> -lib_deps = - ${LilyGo_T3S3_sx1262.lib_deps} - densaugeo/base64 @ ~1.4.0 - -[LilyGo_TBeam] -extends = esp32_base -board = ttgo-t-beam -build_flags = - ${esp32_base.build_flags} - -I variants/lilygo_tbeam - -D LILYGO_TBEAM - -D RADIO_CLASS=CustomSX1276 - -D WRAPPER_CLASS=CustomSX1276Wrapper - -D LORA_TX_POWER=20 - -D P_LORA_TX_LED=4 - -D PIN_BOARD_SDA=21 - -D PIN_BOARD_SCL=22 - -D PIN_USER_BTN=38 -build_src_filter = ${esp32_base.build_src_filter} - +<../variants/lilygo_tbeam> -board_build.partitions = min_spiffs.csv -lib_deps = - ${esp32_base.lib_deps} - lewisxhe/XPowersLib@^0.2.7 - adafruit/Adafruit SSD1306 @ ^2.5.13 - -[env:Tbeam_companion_radio_ble] -extends = LilyGo_TBeam -board_build.upload.maximum_ram_size = 2000000 -build_flags = - ${LilyGo_TBeam.build_flags} - -D DISPLAY_CLASS=SSD1306Display - -D MAX_CONTACTS=100 - -D MAX_GROUP_CHANNELS=1 - -D BLE_PIN_CODE=123456 - -D BLE_DEBUG_LOGGING=1 - -D MESH_PACKET_LOGGING=1 - -D MESH_DEBUG=1 - -D RADIOLIB_DEBUG_BASIC=1 -build_src_filter = ${LilyGo_TBeam.build_src_filter} - + - + - +<../examples/companion_radio> -lib_deps = - ${LilyGo_TBeam.lib_deps} - densaugeo/base64 @ ~1.4.0 - -[env:Tbeam_repeater] -extends = LilyGo_TBeam -build_flags = - ${LilyGo_TBeam.build_flags} - -D DISPLAY_CLASS=SSD1306Display - -D ADVERT_NAME='"Tbeam Repeater"' - -D ADVERT_LAT=0.0 - -D ADVERT_LON=0.0 - -D ADMIN_PASSWORD='"password"' - -D MESH_PACKET_LOGGING=1 -build_src_filter = ${LilyGo_TBeam.build_src_filter} - + - +<../examples/simple_repeater> -lib_deps = - ${LilyGo_TBeam.lib_deps} - ${esp32_ota.lib_deps} - -[T_Beam_S3_Supreme_SX1262] -extends = esp32_base -board = t_beams3_supreme -build_flags = - ${esp32_base.build_flags} - -I variants/lilygo_tbeam_supreme_SX1262 - -D LORA_TX_POWER=22 - -D RADIO_CLASS=CustomSX1262 - -D WRAPPER_CLASS=CustomSX1262Wrapper - -D DISPLAY_CLASS=SSD1306Display - -D SX126X_RX_BOOSTED_GAIN=1 -lib_deps = - ${esp32_base.lib_deps} - lewisxhe/PCF8563_Library@^1.0.1 - lewisxhe/XPowersLib @ ^0.2.7 -build_src_filter = ${esp32_base.build_src_filter} - +<../variants/lilygo_tbeam_supreme_SX1262> -board_build.partitions = min_spiffs.csv - -[env:T_Beam_S3_Supreme_SX1262_Repeater] -extends = T_Beam_S3_Supreme_SX1262 -build_flags = - ${T_Beam_S3_Supreme_SX1262.build_flags} - -D ADVERT_NAME='"T-Beam S3 Supreme SX1262 Repeater"' - -D ADVERT_LAT=0 - -D ADVERT_LON=0 - -D ADMIN_PASSWORD='"password"' -build_src_filter = ${T_Beam_S3_Supreme_SX1262.build_src_filter} - + - +<../examples/simple_repeater> -lib_deps = - ${T_Beam_S3_Supreme_SX1262.lib_deps} - ${esp32_ota.lib_deps} - -[LilyGo_TLora_V2_1_1_6] -extends = esp32_base -board = ttgo-lora32-v1 -build_unflags = -Os -build_type = release -board_build.partitions = min_spiffs.csv -build_flags = - ${esp32_base.build_flags} - -I variants/lilygo_tlora_v2_1 - -Os -ffunction-sections -fdata-sections - -D LILYGO_TLORA - -D P_LORA_DIO_0=26 - -D P_LORA_DIO_1=33 - -D P_LORA_NSS=18 - -D P_LORA_RESET=14 - -D P_LORA_SCLK=5 - -D P_LORA_MISO=19 - -D P_LORA_MOSI=27 - -D P_LORA_TX_LED=2 - -D PIN_VBAT_READ=35 - -D PIN_USER_BTN=0 - -D RADIO_CLASS=CustomSX1276 - -D ARDUINO_LOOP_STACK_SIZE=16384 - -D DISPLAY_CLASS=SSD1306Display - -D WRAPPER_CLASS=CustomSX1276Wrapper - -D LORA_TX_POWER=20 -build_src_filter = ${esp32_base.build_src_filter} - +<../variants/lilygo_tlora_v2_1> -lib_deps = - ${esp32_base.lib_deps} - adafruit/Adafruit SSD1306 @ ^2.5.13 - -[env:LilyGo_TLora_V2_1_1_6_Repeater] -extends = LilyGo_TLora_V2_1_1_6 -build_src_filter = ${LilyGo_TLora_V2_1_1_6.build_src_filter} - + - +<../examples/simple_repeater> -build_flags = - ${LilyGo_TLora_V2_1_1_6.build_flags} - -D ADVERT_NAME='"TLora-V2.1-1.6 Repeater"' - -D ADVERT_LAT=0.0 - -D ADVERT_LON=0.0 - -D ADMIN_PASSWORD='"password"' -lib_deps = - ${LilyGo_TLora_V2_1_1_6.lib_deps} - ${esp32_ota.lib_deps} - -[env:LilyGo_TLora_V2_1_1_6_terminal_chat] -extends = LilyGo_TLora_V2_1_1_6 -build_flags = - ${LilyGo_TLora_V2_1_1_6.build_flags} - -D MAX_CONTACTS=100 - -D MAX_GROUP_CHANNELS=8 -build_src_filter = ${LilyGo_TLora_V2_1_1_6.build_src_filter} - + - +<../examples/simple_repeater> -lib_deps = - ${LilyGo_TLora_V2_1_1_6.lib_deps} - densaugeo/base64 @ ~1.4.0 - -[env:LilyGo_TLora_V2_1_1_6_companion_radio_usb] -extends = LilyGo_TLora_V2_1_1_6 -build_flags = - ${LilyGo_TLora_V2_1_1_6.build_flags} - -D MAX_CONTACTS=100 - -D MAX_GROUP_CHANNELS=8 -build_src_filter = ${LilyGo_TLora_V2_1_1_6.build_src_filter} - + - +<../examples/companion_radio> -lib_deps = - ${LilyGo_TLora_V2_1_1_6.lib_deps} - densaugeo/base64 @ ~1.4.0 - -[env:LilyGo_TLora_V2_1_1_6_companion_radio_ble] -extends = LilyGo_TLora_V2_1_1_6 -build_flags = - ${LilyGo_TLora_V2_1_1_6.build_flags} - -D MAX_CONTACTS=100 - -D MAX_GROUP_CHANNELS=8 - -D BLE_PIN_CODE=123456 -build_src_filter = ${LilyGo_TLora_V2_1_1_6.build_src_filter} - + - + - +<../examples/companion_radio> -lib_deps = - ${LilyGo_TLora_V2_1_1_6.lib_deps} - densaugeo/base64 @ ~1.4.0 - -[env:LilyGo_TLora_V2_1_1_6_room_server] -extends = LilyGo_TLora_V2_1_1_6 -build_src_filter = ${LilyGo_TLora_V2_1_1_6.build_src_filter} - + - +<../examples/simple_room_server> -build_flags = - ${LilyGo_TLora_V2_1_1_6.build_flags} - -D ADVERT_NAME='"TLora-V2.1-1.6 Room"' - -D ADVERT_LAT=0.0 - -D ADVERT_LON=0.0 - -D ADMIN_PASSWORD='"password"' - -D ROOM_PASSWORD='"hello"' -lib_deps = - ${LilyGo_TLora_V2_1_1_6.lib_deps} - ${esp32_ota.lib_deps} - -[Faketec] -extends = nrf52840_base -board = promicro_nrf52840 -build_flags = ${nrf52840_base.build_flags} - -I variants/promicro - -D FAKETEC - -D RADIO_CLASS=CustomSX1262 - -D WRAPPER_CLASS=CustomSX1262Wrapper - -D LORA_TX_POWER=22 - -D SX126X_CURRENT_LIMIT=130 - -D SX126X_RX_BOOSTED_GAIN=1 - -D DISPLAY_CLASS=SSD1306Display - -D PIN_BOARD_SCL=7 - -D PIN_BOARD_SDA=8 - -D PIN_OLED_RESET=-1 - -D PIN_USER_BTN=6 -build_src_filter = ${nrf52840_base.build_src_filter} - + - +<../variants/promicro> -lib_deps = - ${nrf52840_base.lib_deps} - adafruit/Adafruit SSD1306 @ ^2.5.13 - -[env:Faketec_Repeater] -extends = Faketec -build_src_filter = ${Faketec.build_src_filter} +<../examples/simple_repeater> + -build_flags = - ${Faketec.build_flags} - -D ADVERT_NAME="\"Faketec Repeater\"" - -D ADVERT_LAT=0.0 - -D ADVERT_LON=0.0 - -D ADMIN_PASSWORD="\"password\"" -lib_deps = - ${Faketec.lib_deps} - adafruit/RTClib @ ^2.1.3 - -[env:Faketec_room_server] -extends = Faketec -build_src_filter = ${Faketec.build_src_filter} +<../examples/simple_room_server> + -build_flags = - ${Faketec.build_flags} - -D ADVERT_NAME="\"Test Room\"" - -D ADVERT_LAT=0.0 - -D ADVERT_LON=0.0 - -D ADMIN_PASSWORD="\"password\"" - -D ROOM_PASSWORD="\"hello\"" -lib_deps = - ${Faketec.lib_deps} - adafruit/RTClib @ ^2.1.3 - -[env:Faketec_terminal_chat] -extends = Faketec -build_flags = - ${Faketec.build_flags} - -D MAX_CONTACTS=100 - -D MAX_GROUP_CHANNELS=1 -build_src_filter = ${Faketec.build_src_filter} +<../examples/simple_secure_chat/main.cpp> -lib_deps = - ${Faketec.lib_deps} - densaugeo/base64 @ ~1.4.0 - adafruit/RTClib @ ^2.1.3 - -[env:Faketec_companion_radio_usb] -extends = Faketec -build_flags = - ${Faketec.build_flags} - -D MAX_CONTACTS=100 - -D MAX_GROUP_CHANNELS=8 -build_src_filter = ${Faketec.build_src_filter} +<../examples/companion_radio> +<../examples/companion_radio> + -lib_deps = - ${Faketec.lib_deps} - adafruit/RTClib @ ^2.1.3 - densaugeo/base64 @ ~1.4.0 - -[env:Faketec_companion_radio_ble] -extends = Faketec -build_flags = - ${Faketec.build_flags} - -D MAX_CONTACTS=100 - -D MAX_GROUP_CHANNELS=8 - -D BLE_PIN_CODE=123456 - -D BLE_DEBUG_LOGGING=1 - -D ENABLE_PRIVATE_KEY_EXPORT=1 - -D ENABLE_PRIVATE_KEY_IMPORT=1 -build_src_filter = ${Faketec.build_src_filter} + +<../examples/companion_radio> + -lib_deps = - ${Faketec.lib_deps} - adafruit/RTClib @ ^2.1.3 - densaugeo/base64 @ ~1.4.0 - -[ProMicroLLCC68] -extends = nrf52840_base -board = promicro_nrf52840 -build_flags = ${nrf52840_base.build_flags} - -I variants/promicro - -D PROMICROLLCC68 - -D RADIO_CLASS=CustomLLCC68 - -D WRAPPER_CLASS=CustomLLCC68Wrapper - -D LORA_TX_POWER=22 - -D SX126X_CURRENT_LIMIT=130 - -D SX126X_RX_BOOSTED_GAIN=1 -build_src_filter = ${nrf52840_base.build_src_filter} - + - +<../variants/promicro> - -[env:ProMicroLLCC68_Repeater] -extends = ProMicroLLCC68 -build_src_filter = ${ProMicroLLCC68.build_src_filter} +<../examples/simple_repeater/main.cpp> -build_flags = - ${ProMicroLLCC68.build_flags} - -D ADVERT_NAME="\"ProMicroLLCC68 Repeater\"" - -D ADMIN_PASSWORD="\"password\"" -lib_deps = - ${ProMicroLLCC68.lib_deps} - adafruit/RTClib @ ^2.1.3 - -[env:ProMicroLLCC68_room_server] -extends = ProMicroLLCC68 -build_src_filter = ${ProMicroLLCC68.build_src_filter} +<../examples/simple_room_server/main.cpp> -build_flags = - ${ProMicroLLCC68.build_flags} - -D ADVERT_NAME="\"ProMicroLLCC68 Room\"" - -D ADMIN_PASSWORD="\"password\"" - -D ROOM_PASSWORD="\"hello\"" -lib_deps = - ${ProMicroLLCC68.lib_deps} - adafruit/RTClib @ ^2.1.3 - -[env:ProMicroLLCC68_terminal_chat] -extends = ProMicroLLCC68 -build_flags = - ${ProMicroLLCC68.build_flags} - -D MAX_CONTACTS=100 - -D MAX_GROUP_CHANNELS=1 -build_src_filter = ${ProMicroLLCC68.build_src_filter} +<../examples/simple_secure_chat/main.cpp> -lib_deps = - ${ProMicroLLCC68.lib_deps} - densaugeo/base64 @ ~1.4.0 - adafruit/RTClib @ ^2.1.3 - -[env:ProMicroLLCC68_companion_radio_usb] -extends = ProMicroLLCC68 -build_flags = - ${ProMicroLLCC68.build_flags} - -D MAX_CONTACTS=100 - -D MAX_GROUP_CHANNELS=8 -build_src_filter = ${ProMicroLLCC68.build_src_filter} +<../examples/companion_radio/main.cpp> -lib_deps = - ${ProMicroLLCC68.lib_deps} - adafruit/RTClib @ ^2.1.3 - densaugeo/base64 @ ~1.4.0 - -[env:ProMicroLLCC68_companion_radio_ble] -extends = ProMicroLLCC68 -build_flags = - ${ProMicroLLCC68.build_flags} - -D MAX_CONTACTS=100 - -D MAX_GROUP_CHANNELS=8 - -D BLE_PIN_CODE=123456 - -D BLE_DEBUG_LOGGING=1 - -D ENABLE_PRIVATE_KEY_EXPORT=1 - -D ENABLE_PRIVATE_KEY_IMPORT=1 -build_src_filter = ${ProMicroLLCC68.build_src_filter} + +<../examples/companion_radio/main.cpp> -lib_deps = - ${ProMicroLLCC68.lib_deps} - adafruit/RTClib @ ^2.1.3 - densaugeo/base64 @ ~1.4.0 - -[rak4631] -extends = nrf52840_base -platform = https://github.com/maxgerhardt/platform-nordicnrf52.git#rak -board = wiscore_rak4631 -board_check = true -build_flags = ${nrf52840_base.build_flags} - -I variants/rak4631 - -D RAK_4631 - -D PIN_USER_BTN=9 - -D RADIO_CLASS=CustomSX1262 - -D WRAPPER_CLASS=CustomSX1262Wrapper - -D LORA_TX_POWER=22 - -D SX126X_CURRENT_LIMIT=130 - -D SX126X_RX_BOOSTED_GAIN=1 -build_src_filter = ${nrf52840_base.build_src_filter} - + - +<../variants/rak4631> -lib_deps = - ${nrf52840_base.lib_deps} - adafruit/Adafruit SSD1306 @ ^2.5.13 - -[env:RAK_4631_Repeater] -extends = rak4631 -build_flags = - ${rak4631.build_flags} - -D DISPLAY_CLASS=SSD1306Display - -D ADVERT_NAME='"RAK4631 Repeater"' - -D ADVERT_LAT=0.0 - -D ADVERT_LON=0.0 - -D ADMIN_PASSWORD='"password"' -build_src_filter = ${rak4631.build_src_filter} - + - +<../examples/simple_repeater> -lib_deps = - me-no-dev/AsyncTCP@^3.3.2 - esp32async/ESPAsyncWebServer@^3.7.5 - rweather/Crypto@^0.4.0 - jgromes/RadioLib@^7.1.2 - adafruit/RTClib@^2.1.4 - melopero/Melopero RV3028@^1.1.0 - lewisxhe/PCF8563_Library@^1.0.1 - adafruit/Adafruit GFX Library@^1.12.0 - adafruit/Adafruit SSD1306@^2.5.13 - -[env:RAK_4631_room_server] -extends = rak4631 -build_flags = - ${rak4631.build_flags} - -D DISPLAY_CLASS=SSD1306Display - -D ADVERT_NAME='"Test Room"' - -D ADVERT_LAT=0.0 - -D ADVERT_LON=0.0 - -D ADMIN_PASSWORD='"password"' - -D ROOM_PASSWORD='"hello"' -build_src_filter = ${rak4631.build_src_filter} - + - +<../examples/simple_room_server> -lib_deps = - me-no-dev/AsyncTCP@^3.3.2 - esp32async/ESPAsyncWebServer@^3.7.5 - rweather/Crypto@^0.4.0 - jgromes/RadioLib@^7.1.2 - adafruit/RTClib@^2.1.4 - melopero/Melopero RV3028@^1.1.0 - lewisxhe/PCF8563_Library@^1.0.1 - adafruit/Adafruit GFX Library@^1.12.0 - adafruit/Adafruit SSD1306@^2.5.13 - -[env:RAK_4631_companion_radio_usb] -extends = rak4631 -build_flags = - ${rak4631.build_flags} - -D DISPLAY_CLASS=SSD1306Display - -D MAX_CONTACTS=100 - -D MAX_GROUP_CHANNELS=8 -build_src_filter = ${rak4631.build_src_filter} - + - +<../examples/companion_radio> -lib_deps = - ${rak4631.lib_deps} - densaugeo/base64 @ ~1.4.0 - -[env:RAK_4631_companion_radio_ble] -extends = rak4631 -build_flags = - ${rak4631.build_flags} - -D DISPLAY_CLASS=SSD1306Display - -D MAX_CONTACTS=100 - -D MAX_GROUP_CHANNELS=8 - -D BLE_PIN_CODE=123456 - -D BLE_DEBUG_LOGGING=1 -build_src_filter = ${rak4631.build_src_filter} - + - + - +<../examples/companion_radio> -lib_deps = - ${rak4631.lib_deps} - densaugeo/base64 @ ~1.4.0 - -[env:RAK_4631_terminal_chat] -extends = rak4631 -build_flags = - ${rak4631.build_flags} - -D MAX_CONTACTS=100 - -D MAX_GROUP_CHANNELS=1 - -D MESH_PACKET_LOGGING=1 - -D MESH_DEBUG=1 -build_src_filter = ${rak4631.build_src_filter} - +<../examples/simple_secure_chat/main.cpp> -lib_deps = - ${rak4631.lib_deps} - densaugeo/base64 @ ~1.4.0 - -[Station_G2] -extends = esp32_base -board = station-g2 -build_flags = - ${esp32_base.build_flags} - -I variants/station_g2 - -D STATION_G2 - -D RADIO_CLASS=CustomSX1262 - -D WRAPPER_CLASS=CustomSX1262Wrapper - -D LORA_TX_POWER=7 - -D PIN_USER_BTN=0 - -D SX126X_DIO2_AS_RF_SWITCH=true - -D SX126X_DIO3_TCXO_VOLTAGE=1.8 - -D SX126X_CURRENT_LIMIT=130.0f -build_src_filter = ${esp32_base.build_src_filter} - +<../variants/station_g2> -lib_deps = - ${esp32_base.lib_deps} - -[env:Station_G2_repeater] -extends = Station_G2 -build_flags = - ${Station_G2.build_flags} - -D ADVERT_NAME='"Station G2 Repeater"' - -D ADVERT_LAT=0.0 - -D ADVERT_LON=0.0 - -D ADMIN_PASSWORD='"password"' - -D MESH_PACKET_LOGGING=1 -build_src_filter = ${Station_G2.build_src_filter} - +<../examples/simple_repeater> -lib_deps = - ${Station_G2.lib_deps} - ${esp32_ota.lib_deps} - -[env:Station_G2_room_server] -extends = Station_G2 -build_src_filter = ${Station_G2.build_src_filter} - +<../examples/simple_room_server> -build_flags = - ${Station_G2.build_flags} - -D ADVERT_NAME='"Station G2 Room"' - -D ADVERT_LAT=0.0 - -D ADVERT_LON=0.0 - -D ADMIN_PASSWORD='"password"' - -D ROOM_PASSWORD='"hello"' -lib_deps = - ${Station_G2.lib_deps} - ${esp32_ota.lib_deps} - -[nrf52840_t1000e] -extends = nrf52_base -platform_packages = framework-arduinoadafruitnrf52 -build_flags = ${nrf52_base.build_flags} - -I src/helpers/nrf52 - -I lib/nrf52/s140_nrf52_7.3.0_API/include - -I lib/nrf52/s140_nrf52_7.3.0_API/include/nrf52 -lib_ignore = - BluetoothOTA - lvgl - lib5b4 -lib_deps = - ${nrf52_base.lib_deps} - rweather/Crypto @ ^0.4.0 - -[t1000-e] -extends = nrf52840_t1000e -board = tracker-t1000-e -board_build.ldscript = boards/nrf52840_s140_v7.ld -build_flags = ${nrf52840_t1000e.build_flags} - -I variants/t1000-e - -D T1000_E - -D PIN_USER_BTN=6 - -D USER_BTN_PRESSED=HIGH - -D PIN_STATUS_LED=24 - -D RADIO_CLASS=CustomLR1110 - -D WRAPPER_CLASS=CustomLR1110Wrapper - -D LORA_TX_POWER=22 -build_src_filter = ${nrf52840_t1000e.build_src_filter} - + - + - +<../variants/t1000-e> -debug_tool = jlink -upload_protocol = nrfutil - -[env:t1000e_companion_radio_ble] -extends = t1000-e -build_flags = ${t1000-e.build_flags} - -D MAX_CONTACTS=100 - -D MAX_GROUP_CHANNELS=8 - -D BLE_PIN_CODE=123456 - -D BLE_DEBUG_LOGGING=1 - -D MESH_PACKET_LOGGING=1 - -D MESH_DEBUG=1 - -D RX_BOOSTED_GAIN=true - -D RF_SWITCH_TABLE - -D HAS_UI -build_src_filter = ${t1000-e.build_src_filter} - + - +<../examples/companion_radio/*.cpp> -lib_deps = ${t1000-e.lib_deps} - densaugeo/base64 @ ~1.4.0 - -[nrf52840_t114] -extends = nrf52_base -platform_packages = framework-arduinoadafruitnrf52 -build_flags = ${nrf52_base.build_flags} - -I src/helpers/nrf52 - -I lib/nrf52/s140_nrf52_6.1.1_API/include - -I lib/nrf52/s140_nrf52_6.1.1_API/include/nrf52 -lib_deps = - ${nrf52_base.lib_deps} - rweather/Crypto @ ^0.4.0 - -[Heltec_t114] -extends = nrf52840_t114 -board = heltec_t114 -board_build.ldscript = boards/nrf52840_s140_v6.ld -build_flags = ${nrf52840_t114.build_flags} - -I variants/t114 - -DHELTEC_T114 - -D P_LORA_TX_LED=35 - -D RADIO_CLASS=CustomSX1262 - -D WRAPPER_CLASS=CustomSX1262Wrapper - -D LORA_TX_POWER=22 - -D SX126X_CURRENT_LIMIT=130 - -D SX126X_RX_BOOSTED_GAIN=1 -build_src_filter = ${nrf52840_t114.build_src_filter} - + - + - +<../variants/t114> -debug_tool = jlink -upload_protocol = nrfutil - -[env:Heltec_t114_repeater] -extends = Heltec_t114 -build_src_filter = ${Heltec_t114.build_src_filter} - +<../examples/simple_repeater/main.cpp> -build_flags = - ${Heltec_t114.build_flags} - -D ADVERT_NAME='"Heltec_T114 Repeater"' - -D ADVERT_LAT=0.0 - -D ADVERT_LON=0.0 - -D ADMIN_PASSWORD='"password"' -lib_deps = - me-no-dev/AsyncTCP@^3.3.2 - esp32async/ESPAsyncWebServer@^3.7.5 - rweather/Crypto@^0.4.0 - jgromes/RadioLib@^7.1.2 - adafruit/RTClib@^2.1.4 - melopero/Melopero RV3028@^1.1.0 - lewisxhe/PCF8563_Library@^1.0.1 - adafruit/Adafruit GFX Library@^1.12.0 - adafruit/Adafruit SSD1306@^2.5.13 - -[env:Heltec_t114_room_server] -extends = Heltec_t114 -build_src_filter = ${Heltec_t114.build_src_filter} - +<../examples/simple_room_server> -build_flags = - ${Heltec_t114.build_flags} - -D ADVERT_NAME='"Heltec_T114 Room"' - -D ADVERT_LAT=0.0 - -D ADVERT_LON=0.0 - -D ADMIN_PASSWORD='"password"' - -D ROOM_PASSWORD='"hello"' -lib_deps = - me-no-dev/AsyncTCP@^3.3.2 - esp32async/ESPAsyncWebServer@^3.7.5 - rweather/Crypto@^0.4.0 - jgromes/RadioLib@^7.1.2 - adafruit/RTClib@^2.1.4 - melopero/Melopero RV3028@^1.1.0 - lewisxhe/PCF8563_Library@^1.0.1 - adafruit/Adafruit GFX Library@^1.12.0 - adafruit/Adafruit SSD1306@^2.5.13 - -[env:Heltec_t114_companion_radio_ble] -extends = Heltec_t114 -build_flags = - ${Heltec_t114.build_flags} - -D MAX_CONTACTS=100 - -D MAX_GROUP_CHANNELS=8 - -D BLE_PIN_CODE=123456 - -D BLE_DEBUG_LOGGING=1 -build_src_filter = ${Heltec_t114.build_src_filter} - + - +<../examples/companion_radio/main.cpp> -lib_deps = - ${Heltec_t114.lib_deps} - densaugeo/base64 @ ~1.4.0 - -[nrf52840_techo] -extends = nrf52_base -platform_packages = framework-arduinoadafruitnrf52 -build_flags = ${nrf52_base.build_flags} - -I src/helpers/nrf52 - -I lib/nrf52/s140_nrf52_6.1.1_API/include - -I lib/nrf52/s140_nrf52_6.1.1_API/include/nrf52 -lib_deps = - ${nrf52_base.lib_deps} - rweather/Crypto @ ^0.4.0 - -[LilyGo_Techo] -extends = nrf52840_techo -board = t-echo -board_build.ldscript = boards/nrf52840_s140_v6.ld -build_flags = ${nrf52840_techo.build_flags} - -I variants/techo - -DLILYGO_TECHO - -D RADIO_CLASS=CustomSX1262 - -D WRAPPER_CLASS=CustomSX1262Wrapper - -D LORA_TX_POWER=22 - -D SX126X_CURRENT_LIMIT=130 - -D SX126X_RX_BOOSTED_GAIN=1 -build_src_filter = ${nrf52840_techo.build_src_filter} - + - + - +<../variants/techo> -debug_tool = jlink -upload_protocol = nrfutil - -[env:LilyGo_T-Echo_repeater] -extends = LilyGo_Techo -build_src_filter = ${LilyGo_Techo.build_src_filter} +<../examples/simple_repeater/main.cpp> -build_flags = - ${LilyGo_Techo.build_flags} - -D ADVERT_NAME='"T-Echo Repeater"' - -D ADVERT_LAT=0.0 - -D ADVERT_LON=0.0 - -D ADMIN_PASSWORD='"password"' -lib_deps = - me-no-dev/AsyncTCP@^3.3.2 - esp32async/ESPAsyncWebServer@^3.7.5 - rweather/Crypto@^0.4.0 - jgromes/RadioLib@^7.1.2 - adafruit/RTClib@^2.1.4 - melopero/Melopero RV3028@^1.1.0 - lewisxhe/PCF8563_Library@^1.0.1 - adafruit/Adafruit GFX Library@^1.12.0 - adafruit/Adafruit SSD1306@^2.5.13 - -[env:LilyGo_T-Echo_room_server] -extends = LilyGo_Techo -build_src_filter = ${LilyGo_Techo.build_src_filter} +<../examples/simple_room_server/main.cpp> -build_flags = - ${LilyGo_Techo.build_flags} - -D ADVERT_NAME='"T-Echo Room"' - -D ADVERT_LAT=0.0 - -D ADVERT_LON=0.0 - -D ADMIN_PASSWORD='"password"' -lib_deps = - me-no-dev/AsyncTCP@^3.3.2 - esp32async/ESPAsyncWebServer@^3.7.5 - rweather/Crypto@^0.4.0 - jgromes/RadioLib@^7.1.2 - adafruit/RTClib@^2.1.4 - melopero/Melopero RV3028@^1.1.0 - lewisxhe/PCF8563_Library@^1.0.1 - adafruit/Adafruit GFX Library@^1.12.0 - adafruit/Adafruit SSD1306@^2.5.13 - -[env:LilyGo_T-Echo_companion_radio_ble] -extends = LilyGo_Techo -build_flags = - ${LilyGo_Techo.build_flags} - -D MAX_CONTACTS=100 - -D MAX_GROUP_CHANNELS=8 - -D BLE_PIN_CODE=123456 - -D BLE_DEBUG_LOGGING=1 -build_src_filter = ${LilyGo_Techo.build_src_filter} - + - +<../examples/companion_radio/main.cpp> -lib_deps = - ${LilyGo_Techo.lib_deps} - densaugeo/base64 @ ~1.4.0 - -[Xiao_esp32_C3] -extends = esp32_base -board = seeed_xiao_esp32c3 -build_flags = - ${esp32_base.build_flags} - -I variants/xiao_c3 - -D LORA_TX_BOOST_PIN=D3 - -D P_LORA_TX_LED=D5 - -D PIN_VBAT_READ=D0 - -D P_LORA_DIO_1=D2 - -D P_LORA_NSS=D4 - -D P_LORA_RESET=RADIOLIB_NC - -D P_LORA_BUSY=D1 - -D PIN_BOARD_SDA=D6 - -D PIN_BOARD_SCL=D7 - -D SX126X_DIO2_AS_RF_SWITCH=true - -D SX126X_DIO3_TCXO_VOLTAGE=1.8 - -D SX126X_CURRENT_LIMIT=130.0f -build_src_filter = ${esp32_base.build_src_filter} - +<../variants/xiao_c3> - -[env:Xiao_C3_Repeater_sx1262] -extends = Xiao_esp32_C3 -build_src_filter = ${Xiao_esp32_C3.build_src_filter} - +<../examples/simple_repeater/main.cpp> -build_flags = - ${Xiao_esp32_C3.build_flags} - -D RADIO_CLASS=CustomSX1262 - -D WRAPPER_CLASS=CustomSX1262Wrapper - -D SX126X_RX_BOOSTED_GAIN=1 - -D LORA_TX_POWER=22 - -D ADVERT_NAME='"Xiao Repeater"' - -D ADVERT_LAT=0.0 - -D ADVERT_LON=0.0 - -D ADMIN_PASSWORD='"password"' -lib_deps = - ${Xiao_esp32_C3.lib_deps} - ${esp32_ota.lib_deps} - -[env:Xiao_C3_Repeater_sx1268] -extends = Xiao_esp32_C3 -build_src_filter = ${Xiao_esp32_C3.build_src_filter} - +<../examples/simple_repeater/main.cpp> -build_flags = - ${Xiao_esp32_C3.build_flags} - -D RADIO_CLASS=CustomSX1268 - -D WRAPPER_CLASS=CustomSX1268Wrapper - -D LORA_TX_POWER=22 - -D ADVERT_NAME='"Xiao Repeater"' - -D ADVERT_LAT=0.0 - -D ADVERT_LON=0.0 - -D ADMIN_PASSWORD='"password"' -lib_deps = - ${Xiao_esp32_C3.lib_deps} - ${esp32_ota.lib_deps} - -[Xiao_S3_WIO] -extends = esp32_base -board = seeed_xiao_esp32s3 -board_check = true -board_build.mcu = esp32s3 -build_flags = ${esp32_base.build_flags} - -I variants/xiao_s3_wio - -D SEEED_XIAO_S3 - -D P_LORA_DIO_1=39 - -D P_LORA_NSS=41 - -D P_LORA_RESET=42 - -D P_LORA_BUSY=40 - -D P_LORA_SCLK=7 - -D P_LORA_MISO=8 - -D P_LORA_MOSI=9 - -D SX126X_DIO2_AS_RF_SWITCH=true - -D SX126X_DIO3_TCXO_VOLTAGE=1.8 - -D SX126X_CURRENT_LIMIT=130 - -D RADIO_CLASS=CustomSX1262 - -D WRAPPER_CLASS=CustomSX1262Wrapper - -D LORA_TX_POWER=22 - -D SX126X_RX_BOOSTED_GAIN=1 -build_src_filter = ${esp32_base.build_src_filter} - +<../variants/xiao_s3_wio> - -[env:Xiao_S3_WIO_Repeater] -extends = Xiao_S3_WIO -build_src_filter = ${Xiao_S3_WIO.build_src_filter} - +<../examples/simple_repeater/main.cpp> -build_flags = - ${Xiao_S3_WIO.build_flags} - -D ADVERT_NAME='"XiaoS3 Repeater"' - -D ADVERT_LAT=0.0 - -D ADVERT_LON=0.0 - -D ADMIN_PASSWORD='"password"' -lib_deps = - ${Xiao_S3_WIO.lib_deps} - ${esp32_ota.lib_deps} - -[env:Xiao_S3_WIO_room_server] -extends = Xiao_S3_WIO -build_src_filter = ${Xiao_S3_WIO.build_src_filter} - +<../examples/simple_room_server> -build_flags = - ${Xiao_S3_WIO.build_flags} - -D ADVERT_NAME='"XiaoS3 Room"' - -D ADVERT_LAT=0.0 - -D ADVERT_LON=0.0 - -D ADMIN_PASSWORD='"password"' - -D ROOM_PASSWORD='"hello"' -lib_deps = - ${Xiao_S3_WIO.lib_deps} - ${esp32_ota.lib_deps} - -[env:Xiao_S3_WIO_terminal_chat] -extends = Xiao_S3_WIO -build_flags = - ${Xiao_S3_WIO.build_flags} - -D MAX_CONTACTS=100 - -D MAX_GROUP_CHANNELS=8 -build_src_filter = ${Xiao_S3_WIO.build_src_filter} - +<../examples/simple_secure_chat/main.cpp> -lib_deps = - ${Xiao_S3_WIO.lib_deps} - densaugeo/base64 @ ~1.4.0 - -[env:Xiao_S3_WIO_companion_radio_ble] -extends = Xiao_S3_WIO -build_flags = - ${Xiao_S3_WIO.build_flags} - -D MAX_CONTACTS=100 - -D MAX_GROUP_CHANNELS=8 - -D BLE_PIN_CODE=123456 -build_src_filter = ${Xiao_S3_WIO.build_src_filter} - + - +<../examples/companion_radio/main.cpp> -lib_deps = - ${Xiao_S3_WIO.lib_deps} - densaugeo/base64 @ ~1.4.0 - -[env:Xiao_S3_WIO_companion_radio_serial] -extends = Xiao_S3_WIO -build_flags = - ${Xiao_S3_WIO.build_flags} - -D MAX_CONTACTS=100 - -D MAX_GROUP_CHANNELS=8 - -D SERIAL_TX=D6 - -D SERIAL_RX=D7 -build_src_filter = ${Xiao_S3_WIO.build_src_filter} - + - +<../examples/companion_radio/main.cpp> -lib_deps = - ${Xiao_S3_WIO.lib_deps} - densaugeo/base64 @ ~1.4.0 - -[env:T_Beam_S3_Supreme_SX1262_companion_radio_ble] -extends = T_Beam_S3_Supreme_SX1262 -build_flags = - ${T_Beam_S3_Supreme_SX1262.build_flags} - -D DISPLAY_CLASS=SSD1306Display - -D MAX_CONTACTS=100 - -D MAX_GROUP_CHANNELS=8 - -D BLE_PIN_CODE=123456 - -D BLE_DEBUG_LOGGING=1 - -D MESH_PACKET_LOGGING=1 - -D MESH_DEBUG=1 -build_src_filter = ${T_Beam_S3_Supreme_SX1262.build_src_filter} - + - + - +<../examples/companion_radio> -lib_deps = - ${T_Beam_S3_Supreme_SX1262.lib_deps} - densaugeo/base64 @ ~1.4.0 - adafruit/Adafruit SSD1306@^2.5.13 +lib_deps = + ${nrf52_base.lib_deps} + rweather/Crypto @ ^0.4.0 + https://github.com/adafruit/Adafruit_nRF52_Arduino \ No newline at end of file diff --git a/src/helpers/TBeamS3SupremeBoard.h b/src/helpers/TBeamS3SupremeBoard.h index ef6d4ccf..2b8232d8 100644 --- a/src/helpers/TBeamS3SupremeBoard.h +++ b/src/helpers/TBeamS3SupremeBoard.h @@ -40,7 +40,7 @@ //I2C Wire addresses #define I2C_BME280_ADD 0x76 //BME280 sensor I2C address on Wire -#define I2C_OLED_ADD 0x3C //SSD1306/SH1106 OLED I2C address on Wire +#define I2C_OLED_ADD 0x3C //SH1106 OLED I2C address on Wire #define I2C_QMC6310U_ADD 0x1C //QMC6310U mag sensor I2C address on Wire //I2C Wire1 addresses diff --git a/variants/lilygo_tbeam_supreme_SX1262/platformio.ini b/variants/lilygo_tbeam_supreme_SX1262/platformio.ini index b2f76ec3..57cc68db 100644 --- a/variants/lilygo_tbeam_supreme_SX1262/platformio.ini +++ b/variants/lilygo_tbeam_supreme_SX1262/platformio.ini @@ -7,7 +7,7 @@ build_flags = -D LORA_TX_POWER=22 -D RADIO_CLASS=CustomSX1262 -D WRAPPER_CLASS=CustomSX1262Wrapper - -D DISPLAY_CLASS=SSD1306Display + ;-D DISPLAY_CLASS=SSD1306Display ;Needs to be modified for SH1106 -D SX126X_RX_BOOSTED_GAIN=1 build_src_filter = ${esp32_base.build_src_filter} +<../variants/lilygo_tbeam_supreme_SX1262> @@ -16,9 +16,10 @@ lib_deps = ${esp32_base.lib_deps} lewisxhe/PCF8563_Library@^1.0.1 lewisxhe/XPowersLib @ ^0.2.7 + ;adafruit/Adafruit SSD1306 @ ^2.5.13 ; === LILYGO T-Beam S3 Supreme with SX1262 environments === -[env:T_Beam_S3_Supreme_SX1262_Repeater] +[env:T_Beam_S3_Supreme_SX1262_repeater] extends = T_Beam_S3_Supreme_SX1262 build_flags = ${T_Beam_S3_Supreme_SX1262.build_flags} @@ -29,29 +30,42 @@ build_flags = ; -D MESH_PACKET_LOGGING=1 ; -D MESH_DEBUG=1 build_src_filter = ${T_Beam_S3_Supreme_SX1262.build_src_filter} - + +<../examples/simple_repeater> lib_deps = ${T_Beam_S3_Supreme_SX1262.lib_deps} ${esp32_ota.lib_deps} +[env:T_Beam_S3_Supreme_SX1262_room_server] +extends = T_Beam_S3_Supreme_SX1262 +build_flags = + ${T_Beam_S3_Supreme_SX1262.build_flags} + -D ADVERT_NAME='"T_Beam_S3_Supreme_SX1262 Room"' + -D ADVERT_LAT=0.0 + -D ADVERT_LON=0.0 + -D ADMIN_PASSWORD='"password"' + -D ROOM_PASSWORD='"hello"' +; -D MESH_PACKET_LOGGING=1 +; -D MESH_DEBUG=1 +build_src_filter = ${T_Beam_S3_Supreme_SX1262.build_src_filter} + +<../examples/simple_room_server> +lib_deps = + ${T_Beam_S3_Supreme_SX1262.lib_deps} + ${esp32_ota.lib_deps} [env:T_Beam_S3_Supreme_SX1262_companion_radio_ble] extends = T_Beam_S3_Supreme_SX1262 build_flags = ${T_Beam_S3_Supreme_SX1262.build_flags} - -D DISPLAY_CLASS=SSD1306Display -D MAX_CONTACTS=100 -D MAX_GROUP_CHANNELS=1 -D BLE_PIN_CODE=123456 -D BLE_DEBUG_LOGGING=1 ; -D ENABLE_PRIVATE_KEY_IMPORT=1 ; -D ENABLE_PRIVATE_KEY_EXPORT=1 - -D MESH_PACKET_LOGGING=1 + -D MESH_PACKET_LOGGING=8 -D MESH_DEBUG=1 build_src_filter = ${T_Beam_S3_Supreme_SX1262.build_src_filter} + - + +<../examples/companion_radio> lib_deps = ${T_Beam_S3_Supreme_SX1262.lib_deps} diff --git a/variants/lilygo_tbeam_supreme_SX1262/target.cpp b/variants/lilygo_tbeam_supreme_SX1262/target.cpp index 6502e4af..c7ab2984 100644 --- a/variants/lilygo_tbeam_supreme_SX1262/target.cpp +++ b/variants/lilygo_tbeam_supreme_SX1262/target.cpp @@ -31,24 +31,31 @@ static void setPMUIntFlag(){ bool power_init() { //Start up Wire1 with PMU address - Wire1.begin(I2C_PMU_ADD); + //Serial.println("Starting Wire1 for PMU"); + //Wire1.begin(I2C_PMU_ADD); + //Wire1.begin(PIN_BOARD_SDA1,PIN_BOARD_SCL1); //Set LED to indicate charge state + Serial.println("Setting charge led"); PMU.setChargingLedMode(XPOWERS_CHG_LED_CTRL_CHG); //Set up PMU interrupts + Serial.println("Setting up PMU interrupts"); pinMode(PIN_PMU_IRQ,INPUT_PULLUP); attachInterrupt(PIN_PMU_IRQ,setPMUIntFlag,FALLING); //GPS + Serial.println("Setting and enabling a-ldo4 for GPS"); PMU.setALDO4Voltage(3300); - PMU.enableALDO3(); //disable to save power + PMU.enableALDO4(); //disable to save power //Lora + Serial.println("Setting and enabling a-ldo3 for LoRa"); PMU.setALDO3Voltage(3300); PMU.enableALDO3(); //To avoid SPI bus issues during power up, reset OLED, sensor, and SD card supplies + Serial.println("Reset a-ldo1&2 and b-ldo1"); if(ESP_SLEEP_WAKEUP_UNDEFINED == esp_sleep_get_wakeup_cause()){ PMU.enableALDO1(); PMU.enableALDO2(); @@ -57,44 +64,55 @@ bool power_init() { } //BME280 and OLED + Serial.println("Setting and enabling a-ldo1 for oled"); PMU.setALDO1Voltage(3300); PMU.enableALDO1(); //QMC6310U + Serial.println("Setting and enabling a-ldo2 for QMC"); PMU.setALDO2Voltage(3300); PMU.enableALDO2(); //disable to save power //SD card + Serial.println("Setting and enabling b-ldo2 for SD card"); PMU.setBLDO1Voltage(3300); PMU.enableBLDO1(); //Out to header pins + Serial.println("Setting and enabling b-ldo2 for output to header"); PMU.setBLDO2Voltage(3300); PMU.enableBLDO2(); + Serial.println("Setting and enabling dcdc4 for output to header"); PMU.setDC4Voltage(XPOWERS_AXP2101_DCDC4_VOL2_MAX); //1.8V PMU.enableDC4(); + Serial.println("Setting and enabling dcdc5 for output to header"); PMU.setDC5Voltage(3300); PMU.enableDC5(); //Other power rails + Serial.println("Setting and enabling dcdc3 for ?"); PMU.setDC3Voltage(3300); //doesn't go anywhere in the schematic?? PMU.enableDC3(); //Unused power rails + Serial.println("Disabling unused supplies dcdc2, dldo1 and dldo2"); PMU.disableDC2(); PMU.disableDLDO1(); PMU.disableDLDO2(); //Set charge current to 300mA + Serial.println("Setting battery charge current limit and voltage"); PMU.setChargerConstantCurr(XPOWERS_AXP2101_CHG_CUR_300MA); PMU.setChargeTargetVoltage(XPOWERS_AXP2101_CHG_VOL_4V2); //enable battery voltage measurement + Serial.println("Enabling battery measurement"); PMU.enableBattVoltageMeasure(); //Reset and re-enable PMU interrupts + Serial.println("Re-enable interrupts"); PMU.disableIRQ(XPOWERS_AXP2101_ALL_IRQ); PMU.clearIrqStatus(); PMU.enableIRQ( @@ -107,10 +125,12 @@ bool power_init() { //Set the power key off press time PMU.setPowerKeyPressOffTime(XPOWERS_POWEROFF_4S); + return true; } bool radio_init() { fallback_clock.begin(); + Wire1.begin(PIN_BOARD_SDA1,PIN_BOARD_SCL1); rtc_clock.begin(Wire1); #ifdef SX126X_DIO3_TCXO_VOLTAGE