From 5a34bd54604a62384f7a51418b25785b60821f81 Mon Sep 17 00:00:00 2001 From: liamcottle Date: Sat, 30 Aug 2025 21:54:46 +1200 Subject: [PATCH 01/10] turn off tx led when powering off --- src/helpers/nrf52/ThinkNodeM1Board.h | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/helpers/nrf52/ThinkNodeM1Board.h b/src/helpers/nrf52/ThinkNodeM1Board.h index c1ffcbbf..fc752223 100644 --- a/src/helpers/nrf52/ThinkNodeM1Board.h +++ b/src/helpers/nrf52/ThinkNodeM1Board.h @@ -57,6 +57,14 @@ public: } void powerOff() override { + + // turn off all leds, sd_power_system_off will not do this for us + #ifdef P_LORA_TX_LED + digitalWrite(P_LORA_TX_LED, LOW); + #endif + + // power off board sd_power_system_off(); + } }; From 6172537459ce99dbc7a6988f559d58144298ebeb Mon Sep 17 00:00:00 2001 From: liamcottle Date: Sat, 30 Aug 2025 21:56:00 +1200 Subject: [PATCH 02/10] auto shutdown thinknode m1 at 3.3v --- variants/thinknode_m1/platformio.ini | 1 + 1 file changed, 1 insertion(+) diff --git a/variants/thinknode_m1/platformio.ini b/variants/thinknode_m1/platformio.ini index fa8cd55b..590f2100 100644 --- a/variants/thinknode_m1/platformio.ini +++ b/variants/thinknode_m1/platformio.ini @@ -77,6 +77,7 @@ build_flags = -D DISPLAY_CLASS=GxEPDDisplay -D OFFLINE_QUEUE_SIZE=256 -D PIN_BUZZER=6 + -D AUTO_SHUTDOWN_MILLIVOLTS=3300 ; -D MESH_PACKET_LOGGING=1 ; -D MESH_DEBUG=1 build_src_filter = ${ThinkNode_M1.build_src_filter} From 18ef1ba804862aec15c1ab4617dd7cc007ff0cf8 Mon Sep 17 00:00:00 2001 From: liamcottle Date: Sat, 30 Aug 2025 23:09:01 +1200 Subject: [PATCH 03/10] add low battery shutdown alert for thinknode m1 --- examples/companion_radio/ui-new/UITask.cpp | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/examples/companion_radio/ui-new/UITask.cpp b/examples/companion_radio/ui-new/UITask.cpp index 1920dd26..22f394e7 100644 --- a/examples/companion_radio/ui-new/UITask.cpp +++ b/examples/companion_radio/ui-new/UITask.cpp @@ -551,7 +551,22 @@ void UITask::loop() { if (millis() > next_batt_chck) { uint16_t milliVolts = getBattMilliVolts(); if (milliVolts > 0 && milliVolts < AUTO_SHUTDOWN_MILLIVOLTS) { + + // show low battery shutdown alert + // we should only do this for eink displays, which will persist after power loss + #ifdef THINKNODE_M1 + if (_display != NULL) { + _display->startFrame(); + _display->setTextSize(2); + _display->setColor(DisplayDriver::RED); + _display->drawTextCentered(_display->width() / 2, 20, "Low Battery."); + _display->drawTextCentered(_display->width() / 2, 40, "Shutting Down!"); + _display->endFrame(); + } + #endif + shutdown(); + } next_batt_chck = millis() + 8000; } From 0f23c0120a616d3fae6669dbe1feb0f864eefc4e Mon Sep 17 00:00:00 2001 From: recrof Date: Sun, 31 Aug 2025 12:09:04 +0200 Subject: [PATCH 04/10] fix: migrate meshadventurer to new ui --- variants/meshadventurer/platformio.ini | 10 ++++++++++ variants/meshadventurer/target.cpp | 4 ---- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/variants/meshadventurer/platformio.ini b/variants/meshadventurer/platformio.ini index 60cc55eb..3ea09ba7 100644 --- a/variants/meshadventurer/platformio.ini +++ b/variants/meshadventurer/platformio.ini @@ -82,6 +82,7 @@ build_src_filter = ${Meshadventurer.build_src_filter} + build_flags = ${Meshadventurer.build_flags} + -I examples/companion_radio/ui-new -D RADIO_CLASS=CustomSX1262 -D WRAPPER_CLASS=CustomSX1262Wrapper -D LORA_TX_POWER=22 @@ -99,8 +100,11 @@ build_src_filter = ${Meshadventurer.build_src_filter} +<../examples/companion_radio/*.cpp> + + + +<../examples/companion_radio/*.cpp> + +<../examples/companion_radio/ui-new/*.cpp> build_flags = ${Meshadventurer.build_flags} + -I examples/companion_radio/ui-new -D RADIO_CLASS=CustomSX1262 -D WRAPPER_CLASS=CustomSX1262Wrapper -D LORA_TX_POWER=22 @@ -159,8 +163,11 @@ extends = Meshadventurer build_src_filter = ${Meshadventurer.build_src_filter} +<../examples/companion_radio/*.cpp> + + +<../examples/companion_radio/*.cpp> + +<../examples/companion_radio/ui-new/*.cpp> build_flags = ${Meshadventurer.build_flags} + -I examples/companion_radio/ui-new -D RADIO_CLASS=CustomSX1268 -D WRAPPER_CLASS=CustomSX1268Wrapper -D LORA_TX_POWER=22 @@ -178,8 +185,11 @@ build_src_filter = ${Meshadventurer.build_src_filter} +<../examples/companion_radio/*.cpp> + + + +<../examples/companion_radio/*.cpp> + +<../examples/companion_radio/ui-new/*.cpp> build_flags = ${Meshadventurer.build_flags} + -I examples/companion_radio/ui-new -D RADIO_CLASS=CustomSX1268 -D WRAPPER_CLASS=CustomSX1268Wrapper -D LORA_TX_POWER=22 diff --git a/variants/meshadventurer/target.cpp b/variants/meshadventurer/target.cpp index a1d6dcad..cabcee58 100644 --- a/variants/meshadventurer/target.cpp +++ b/variants/meshadventurer/target.cpp @@ -18,10 +18,6 @@ MASensorManager sensors = MASensorManager(nmea); DISPLAY_CLASS display; #endif -#ifndef LORA_CR - #define LORA_CR 5 -#endif - bool radio_init() { fallback_clock.begin(); rtc_clock.begin(Wire); From 7854244026d712dc4014e2a93fe0abe8bd1c29e9 Mon Sep 17 00:00:00 2001 From: recrof Date: Sun, 31 Aug 2025 12:11:07 +0200 Subject: [PATCH 05/10] fix: add xiao s3 wio serial companion to new ui --- variants/xiao_s3_wio/platformio.ini | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/variants/xiao_s3_wio/platformio.ini b/variants/xiao_s3_wio/platformio.ini index fe4670b5..6288dded 100644 --- a/variants/xiao_s3_wio/platformio.ini +++ b/variants/xiao_s3_wio/platformio.ini @@ -103,15 +103,21 @@ lib_deps = extends = Xiao_S3_WIO build_flags = ${Xiao_S3_WIO.build_flags} + -I examples/companion_radio/ui-new -D MAX_CONTACTS=100 -D MAX_GROUP_CHANNELS=8 + -D DISPLAY_CLASS=SSD1306Display -D SERIAL_TX=D6 -D SERIAL_RX=D7 ; -D MESH_PACKET_LOGGING=1 ; -D MESH_DEBUG=1 build_src_filter = ${Xiao_S3_WIO.build_src_filter} + + + + + +<../examples/companion_radio/*.cpp> + +<../examples/companion_radio/ui-new/*.cpp> lib_deps = ${Xiao_S3_WIO.lib_deps} densaugeo/base64 @ ~1.4.0 + adafruit/Adafruit SSD1306 @ ^2.5.13 From 50cab444735b814ebcfbc10c35e0d50d4e0d19ba Mon Sep 17 00:00:00 2001 From: recrof Date: Sun, 31 Aug 2025 14:27:44 +0200 Subject: [PATCH 06/10] set companion radios with esp32c3 esp32c6 and esp32s3 boards to max 300 contacts --- variants/generic_espnow/platformio.ini | 4 +- variants/heltec_ct62/platformio.ini | 4 +- variants/heltec_tracker/platformio.ini | 2 +- variants/heltec_v3/platformio.ini | 2 +- .../heltec_vision_master_e213/platformio.ini | 2 +- .../heltec_vision_master_e290/platformio.ini | 4 +- .../heltec_vision_master_t190/platformio.ini | 6 +- variants/heltec_wireless_paper/platformio.ini | 4 +- variants/lilygo_t3s3/platformio.ini | 6 +- variants/lilygo_t3s3_sx1276/platformio.ini | 6 +- .../platformio.ini | 4 +- variants/lilygo_tlora_c6/platformio.ini | 2 +- variants/station_g2/platformio.ini | 4 +- variants/xiao_c3/platformio.ini | 69 +------------------ variants/xiao_c6/platformio.ini | 6 +- variants/xiao_s3_wio/platformio.ini | 6 +- 16 files changed, 33 insertions(+), 98 deletions(-) diff --git a/variants/generic_espnow/platformio.ini b/variants/generic_espnow/platformio.ini index cf3e4c94..1c14dfee 100644 --- a/variants/generic_espnow/platformio.ini +++ b/variants/generic_espnow/platformio.ini @@ -26,7 +26,7 @@ build_src_filter = ${esp32_base.build_src_filter} extends = Generic_ESPNOW build_flags = ${Generic_ESPNOW.build_flags} - -D MAX_CONTACTS=100 + -D MAX_CONTACTS=300 -D MAX_GROUP_CHANNELS=1 build_src_filter = ${Generic_ESPNOW.build_src_filter} +<../examples/simple_secure_chat/main.cpp> @@ -54,7 +54,7 @@ lib_deps = extends = Generic_ESPNOW build_flags = ${Generic_ESPNOW.build_flags} - -D MAX_CONTACTS=100 + -D MAX_CONTACTS=300 -D MAX_GROUP_CHANNELS=8 ; NOTE: DO NOT ENABLE --> -D MESH_PACKET_LOGGING=1 ; NOTE: DO NOT ENABLE --> -D MESH_DEBUG=1 diff --git a/variants/heltec_ct62/platformio.ini b/variants/heltec_ct62/platformio.ini index 9721d037..0dc512b9 100644 --- a/variants/heltec_ct62/platformio.ini +++ b/variants/heltec_ct62/platformio.ini @@ -55,7 +55,7 @@ build_flags = ${Heltec_ct62.build_flags} ; -D ARDUINO_USB_MODE=1 ; -D ARDUINO_USB_CDC_ON_BOOT=1 - -D MAX_CONTACTS=100 + -D MAX_CONTACTS=300 -D MAX_GROUP_CHANNELS=8 -D OFFLINE_QUEUE_SIZE=256 ; -D MESH_PACKET_LOGGING=1 @@ -73,7 +73,7 @@ build_flags = ${Heltec_ct62.build_flags} ; -D ARDUINO_USB_MODE=1 ; -D ARDUINO_USB_CDC_ON_BOOT=1 - -D MAX_CONTACTS=100 + -D MAX_CONTACTS=300 -D MAX_GROUP_CHANNELS=8 -D OFFLINE_QUEUE_SIZE=256 -D BLE_PIN_CODE=123456 diff --git a/variants/heltec_tracker/platformio.ini b/variants/heltec_tracker/platformio.ini index 357ab854..f1477e9f 100644 --- a/variants/heltec_tracker/platformio.ini +++ b/variants/heltec_tracker/platformio.ini @@ -43,7 +43,7 @@ build_flags = -D ARDUINO_USB_CDC_ON_BOOT=1 ; need for Serial -D DISPLAY_ROTATION=1 -D DISPLAY_CLASS=ST7735Display - -D MAX_CONTACTS=100 + -D MAX_CONTACTS=300 -D MAX_GROUP_CHANNELS=8 -D BLE_PIN_CODE=123456 ; HWT will use display for pin -D OFFLINE_QUEUE_SIZE=256 diff --git a/variants/heltec_v3/platformio.ini b/variants/heltec_v3/platformio.ini index 32673b1f..ba34cead 100644 --- a/variants/heltec_v3/platformio.ini +++ b/variants/heltec_v3/platformio.ini @@ -72,7 +72,7 @@ lib_deps = extends = Heltec_lora32_v3 build_flags = ${Heltec_lora32_v3.build_flags} - -D MAX_CONTACTS=100 + -D MAX_CONTACTS=300 -D MAX_GROUP_CHANNELS=1 ; -D MESH_PACKET_LOGGING=1 ; -D MESH_DEBUG=1 diff --git a/variants/heltec_vision_master_e213/platformio.ini b/variants/heltec_vision_master_e213/platformio.ini index 9ca9b5ad..c6b68724 100644 --- a/variants/heltec_vision_master_e213/platformio.ini +++ b/variants/heltec_vision_master_e213/platformio.ini @@ -38,7 +38,7 @@ extends = Heltec_Vision_Master_E213_base build_flags = ${Heltec_Vision_Master_E213_base.build_flags} -I examples/companion_radio/ui-new - -D MAX_CONTACTS=100 + -D MAX_CONTACTS=300 -D MAX_GROUP_CHANNELS=8 -D DISPLAY_CLASS=E213Display -D BLE_PIN_CODE=123456 ; dynamic, random PIN diff --git a/variants/heltec_vision_master_e290/platformio.ini b/variants/heltec_vision_master_e290/platformio.ini index d52dcc0d..4150adc8 100644 --- a/variants/heltec_vision_master_e290/platformio.ini +++ b/variants/heltec_vision_master_e290/platformio.ini @@ -22,7 +22,7 @@ build_flags = -D PIN_BOARD_SCL=38 -D Vision_Master_E290 build_src_filter = ${esp32_base.build_src_filter} - +<../variants/heltec_vision_master_e290> + +<../variants/heltec_vision_master_e290> lib_deps = ${esp32_base.lib_deps} https://github.com/Quency-D/heltec-eink-modules/archive/563dd41fd850a1bc3039b8723da4f3a20fe1c800.zip @@ -32,7 +32,7 @@ extends = Heltec_Vision_Master_E290_base build_flags = ${Heltec_Vision_Master_E290_base.build_flags} -I examples/companion_radio/ui-new - -D MAX_CONTACTS=100 + -D MAX_CONTACTS=300 -D MAX_GROUP_CHANNELS=8 -D DISPLAY_CLASS=E290Display -D BLE_PIN_CODE=123456 ; dynamic, random PIN diff --git a/variants/heltec_vision_master_t190/platformio.ini b/variants/heltec_vision_master_t190/platformio.ini index ecf71409..e8492335 100644 --- a/variants/heltec_vision_master_t190/platformio.ini +++ b/variants/heltec_vision_master_t190/platformio.ini @@ -31,11 +31,11 @@ build_flags = -D ST7789 -D DISPLAY_CLASS=ST7789Display build_src_filter = ${esp32_base.build_src_filter} - +<../variants/heltec_vision_master_t190> + +<../variants/heltec_vision_master_t190> + + + - + + + lib_deps = ${esp32_base.lib_deps} adafruit/Adafruit GFX Library @ ^1.12.1 @@ -45,7 +45,7 @@ extends = Heltec_Vision_Master_T190_base build_flags = ${Heltec_Vision_Master_T190_base.build_flags} -I examples/companion_radio/ui-new - -D MAX_CONTACTS=100 + -D MAX_CONTACTS=300 -D MAX_GROUP_CHANNELS=8 -D BLE_PIN_CODE=123456 ; dynamic, random PIN -D BLE_DEBUG_LOGGING=1 diff --git a/variants/heltec_wireless_paper/platformio.ini b/variants/heltec_wireless_paper/platformio.ini index adb24676..8de826e4 100644 --- a/variants/heltec_wireless_paper/platformio.ini +++ b/variants/heltec_wireless_paper/platformio.ini @@ -28,7 +28,7 @@ build_flags = -D ARDUINO_heltec_wifi_lora_32_V3 -D WIRELESS_PAPER build_src_filter = ${esp32_base.build_src_filter} - +<../variants/heltec_wireless_paper> + +<../variants/heltec_wireless_paper> lib_deps = ${esp32_base.lib_deps} https://github.com/todd-herbert/heltec-eink-modules/archive/9207eb6ab2b96f66298e0488740218c17b006af7.zip @@ -38,7 +38,7 @@ extends = Heltec_Wireless_Paper_base build_flags = ${Heltec_Wireless_Paper_base.build_flags} -I examples/companion_radio/ui-new - -D MAX_CONTACTS=100 + -D MAX_CONTACTS=300 -D MAX_GROUP_CHANNELS=8 -D DISPLAY_CLASS=E213Display -D BLE_PIN_CODE=123456 ; dynamic, random PIN diff --git a/variants/lilygo_t3s3/platformio.ini b/variants/lilygo_t3s3/platformio.ini index 722a3243..637cc123 100644 --- a/variants/lilygo_t3s3/platformio.ini +++ b/variants/lilygo_t3s3/platformio.ini @@ -56,7 +56,7 @@ lib_deps = extends = LilyGo_T3S3_sx1262 build_flags = ${LilyGo_T3S3_sx1262.build_flags} - -D MAX_CONTACTS=100 + -D MAX_CONTACTS=300 -D MAX_GROUP_CHANNELS=1 ; -D MESH_PACKET_LOGGING=1 ; -D MESH_DEBUG=1 @@ -91,7 +91,7 @@ build_flags = ${LilyGo_T3S3_sx1262.build_flags} -I examples/companion_radio/ui-new -D DISPLAY_CLASS=SSD1306Display - -D MAX_CONTACTS=100 + -D MAX_CONTACTS=300 -D MAX_GROUP_CHANNELS=8 ; NOTE: DO NOT ENABLE --> -D MESH_PACKET_LOGGING=1 ; NOTE: DO NOT ENABLE --> -D MESH_DEBUG=1 @@ -110,7 +110,7 @@ build_flags = ${LilyGo_T3S3_sx1262.build_flags} -I examples/companion_radio/ui-new -D DISPLAY_CLASS=SSD1306Display - -D MAX_CONTACTS=100 + -D MAX_CONTACTS=300 -D MAX_GROUP_CHANNELS=8 -D BLE_PIN_CODE=123456 -D BLE_DEBUG_LOGGING=1 diff --git a/variants/lilygo_t3s3_sx1276/platformio.ini b/variants/lilygo_t3s3_sx1276/platformio.ini index 8f1c00e4..23c58fb8 100644 --- a/variants/lilygo_t3s3_sx1276/platformio.ini +++ b/variants/lilygo_t3s3_sx1276/platformio.ini @@ -54,7 +54,7 @@ lib_deps = extends = LilyGo_T3S3_sx1276 build_flags = ${LilyGo_T3S3_sx1276.build_flags} - -D MAX_CONTACTS=100 + -D MAX_CONTACTS=300 -D MAX_GROUP_CHANNELS=1 ; -D MESH_PACKET_LOGGING=1 ; -D MESH_DEBUG=1 @@ -90,7 +90,7 @@ build_flags = ${LilyGo_T3S3_sx1276.build_flags} -I examples/companion_radio/ui-new -D DISPLAY_CLASS=SSD1306Display - -D MAX_CONTACTS=100 + -D MAX_CONTACTS=300 -D MAX_GROUP_CHANNELS=8 -D MESH_PACKET_LOGGING=1 -D MESH_DEBUG=1 @@ -109,7 +109,7 @@ build_flags = ${LilyGo_T3S3_sx1276.build_flags} -I examples/companion_radio/ui-new -D DISPLAY_CLASS=SSD1306Display - -D MAX_CONTACTS=100 + -D MAX_CONTACTS=300 -D MAX_GROUP_CHANNELS=8 -D BLE_PIN_CODE=123456 -D BLE_DEBUG_LOGGING=1 diff --git a/variants/lilygo_tbeam_supreme_SX1262/platformio.ini b/variants/lilygo_tbeam_supreme_SX1262/platformio.ini index 9b10f459..e6135872 100644 --- a/variants/lilygo_tbeam_supreme_SX1262/platformio.ini +++ b/variants/lilygo_tbeam_supreme_SX1262/platformio.ini @@ -25,7 +25,7 @@ build_src_filter = ${esp32_base.build_src_filter} +<../variants/lilygo_tbeam_supreme_SX1262> + + - + + + board_build.partitions = min_spiffs.csv ; get around 4mb flash limit lib_deps = ${esp32_base.lib_deps} @@ -74,7 +74,7 @@ extends = T_Beam_S3_Supreme_SX1262 build_flags = ${T_Beam_S3_Supreme_SX1262.build_flags} -I examples/companion_radio/ui-new - -D MAX_CONTACTS=100 + -D MAX_CONTACTS=300 -D MAX_GROUP_CHANNELS=8 -D BLE_PIN_CODE=123456 -D OFFLINE_QUEUE_SIZE=256 diff --git a/variants/lilygo_tlora_c6/platformio.ini b/variants/lilygo_tlora_c6/platformio.ini index 5aab2213..76a897d6 100644 --- a/variants/lilygo_tlora_c6/platformio.ini +++ b/variants/lilygo_tlora_c6/platformio.ini @@ -67,7 +67,7 @@ lib_deps = [env:LilyGo_Tlora_C6_companion_radio_ble] extends = tlora_c6 build_flags = ${tlora_c6.build_flags} - -D MAX_CONTACTS=100 + -D MAX_CONTACTS=300 -D MAX_GROUP_CHANNELS=8 -D BLE_PIN_CODE=123456 -D BLE_DEBUG_LOGGING=1 diff --git a/variants/station_g2/platformio.ini b/variants/station_g2/platformio.ini index 756ff5f3..0e1631a8 100644 --- a/variants/station_g2/platformio.ini +++ b/variants/station_g2/platformio.ini @@ -87,7 +87,7 @@ build_flags = ${Station_G2.build_flags} -I examples/companion_radio/ui-new -D DISPLAY_CLASS=SH1106Display - -D MAX_CONTACTS=100 + -D MAX_CONTACTS=300 -D MAX_GROUP_CHANNELS=8 ; NOTE: DO NOT ENABLE --> -D MESH_PACKET_LOGGING=1 ; NOTE: DO NOT ENABLE --> -D MESH_DEBUG=1 @@ -105,7 +105,7 @@ build_flags = ${Station_G2.build_flags} -I examples/companion_radio/ui-new -D DISPLAY_CLASS=SH1106Display - -D MAX_CONTACTS=100 + -D MAX_CONTACTS=300 -D MAX_GROUP_CHANNELS=8 -D BLE_PIN_CODE=123456 -D BLE_DEBUG_LOGGING=1 diff --git a/variants/xiao_c3/platformio.ini b/variants/xiao_c3/platformio.ini index 659313db..de79fb10 100644 --- a/variants/xiao_c3/platformio.ini +++ b/variants/xiao_c3/platformio.ini @@ -19,28 +19,6 @@ build_flags = build_src_filter = ${esp32_base.build_src_filter} +<../variants/xiao_c3> -[Xiao_esp32_C3_custom] -extends = esp32_base -board = seeed_xiao_esp32c3 -build_flags = - ${esp32_base.build_flags} - -I variants/xiao_c3 - -D ESP32_CPU_FREQ=80 - -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=140 -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} @@ -74,7 +52,7 @@ build_flags = -D WRAPPER_CLASS=CustomSX1262Wrapper -D SX126X_RX_BOOSTED_GAIN=1 -D LORA_TX_POWER=22 - -D MAX_CONTACTS=100 + -D MAX_CONTACTS=300 -D MAX_GROUP_CHANNELS=8 -D BLE_PIN_CODE=123456 -D OFFLINE_QUEUE_SIZE=256 @@ -97,7 +75,7 @@ build_flags = -D WRAPPER_CLASS=CustomSX1262Wrapper -D SX126X_RX_BOOSTED_GAIN=1 -D LORA_TX_POWER=22 - -D MAX_CONTACTS=100 + -D MAX_CONTACTS=300 -D MAX_GROUP_CHANNELS=8 -D OFFLINE_QUEUE_SIZE=256 ; -D BLE_DEBUG_LOGGING=1 @@ -107,46 +85,3 @@ lib_deps = ${Xiao_esp32_C3.lib_deps} ${esp32_ota.lib_deps} densaugeo/base64 @ ~1.4.0 - -[env:Xiao_C3_Repeater_sx1262_custom] -extends = Xiao_esp32_C3_custom -build_src_filter = ${Xiao_esp32_C3_custom.build_src_filter} - +<../examples/simple_repeater/main.cpp> -build_flags = - ${Xiao_esp32_C3_custom.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"' - -D MAX_NEIGHBOURS=8 -; -D MESH_PACKET_LOGGING=1 -; -D MESH_DEBUG=1 -lib_deps = - ${Xiao_esp32_C3_custom.lib_deps} - ${esp32_ota.lib_deps} - bakercp/CRC32 @ ^2.0.0 - -[env:Xiao_C3_Repeater_sx1268_custom] -extends = Xiao_esp32_C3_custom -build_src_filter = ${Xiao_esp32_C3_custom.build_src_filter} - +<../examples/simple_repeater/main.cpp> -build_flags = - ${Xiao_esp32_C3_custom.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"' - -D MAX_NEIGHBOURS=8 - ; -D MESH_PACKET_LOGGING=1 - ; -D MESH_DEBUG=1 -lib_deps = - ${Xiao_esp32_C3_custom.lib_deps} - ${esp32_ota.lib_deps} - bakercp/CRC32 @ ^2.0.0 diff --git a/variants/xiao_c6/platformio.ini b/variants/xiao_c6/platformio.ini index 602bd6ae..24a17e06 100644 --- a/variants/xiao_c6/platformio.ini +++ b/variants/xiao_c6/platformio.ini @@ -50,7 +50,7 @@ lib_deps = [env:Xiao_C6_companion_radio_ble] extends = Xiao_C6 build_flags = ${Xiao_C6.build_flags} - -D MAX_CONTACTS=100 + -D MAX_CONTACTS=300 -D MAX_GROUP_CHANNELS=8 -D BLE_PIN_CODE=123456 -D BLE_DEBUG_LOGGING=1 @@ -107,7 +107,7 @@ lib_deps = [env:Meshimi_companion_radio_ble] extends = Meshimi build_flags = ${Meshimi.build_flags} - -D MAX_CONTACTS=100 + -D MAX_CONTACTS=300 -D MAX_GROUP_CHANNELS=8 -D BLE_PIN_CODE=123456 -D BLE_DEBUG_LOGGING=1 @@ -167,7 +167,7 @@ lib_deps = [env:WHY2025_badge_companion_radio_ble] extends = WHY2025_badge build_flags = ${WHY2025_badge.build_flags} - -D MAX_CONTACTS=100 + -D MAX_CONTACTS=300 -D MAX_GROUP_CHANNELS=8 -D BLE_PIN_CODE=123456 -D BLE_DEBUG_LOGGING=1 diff --git a/variants/xiao_s3_wio/platformio.ini b/variants/xiao_s3_wio/platformio.ini index fe4670b5..e9ac05e0 100644 --- a/variants/xiao_s3_wio/platformio.ini +++ b/variants/xiao_s3_wio/platformio.ini @@ -65,7 +65,7 @@ lib_deps = extends = Xiao_S3_WIO build_flags = ${Xiao_S3_WIO.build_flags} - -D MAX_CONTACTS=100 + -D MAX_CONTACTS=300 -D MAX_GROUP_CHANNELS=8 ; -D MESH_PACKET_LOGGING=1 ; -D MESH_DEBUG=1 @@ -80,7 +80,7 @@ extends = Xiao_S3_WIO build_flags = ${Xiao_S3_WIO.build_flags} -I examples/companion_radio/ui-new - -D MAX_CONTACTS=100 + -D MAX_CONTACTS=300 -D MAX_GROUP_CHANNELS=8 -D BLE_PIN_CODE=123456 -D DISPLAY_CLASS=SSD1306Display @@ -103,7 +103,7 @@ lib_deps = extends = Xiao_S3_WIO build_flags = ${Xiao_S3_WIO.build_flags} - -D MAX_CONTACTS=100 + -D MAX_CONTACTS=300 -D MAX_GROUP_CHANNELS=8 -D SERIAL_TX=D6 -D SERIAL_RX=D7 From 7a00f3060e59fbe9b7d1750c3fdfebe8da7bd68e Mon Sep 17 00:00:00 2001 From: recrof Date: Sun, 31 Aug 2025 14:33:49 +0200 Subject: [PATCH 07/10] downgrading pioarduino because build issues --- platformio.ini | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/platformio.ini b/platformio.ini index e935d77e..c7d4eff8 100644 --- a/platformio.ini +++ b/platformio.ini @@ -68,7 +68,7 @@ lib_deps = ; esp32c6 uses arduino framework 3.x [esp32c6_base] extends = esp32_base -platform = https://github.com/pioarduino/platform-espressif32/releases/download/54.03.21/platform-espressif32.zip +platform = https://github.com/pioarduino/platform-espressif32/releases/download/53.03.12/platform-espressif32.zip ; ----------------- NRF52 --------------------- From 7c7faaab0594b51b0f96d496bdf1355020ea5e61 Mon Sep 17 00:00:00 2001 From: Scott Powell Date: Sun, 31 Aug 2025 23:15:56 +1000 Subject: [PATCH 08/10] * agc.reset.interval rounding warning --- src/helpers/CommonCLI.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/helpers/CommonCLI.cpp b/src/helpers/CommonCLI.cpp index 443fcc30..45dfe29b 100644 --- a/src/helpers/CommonCLI.cpp +++ b/src/helpers/CommonCLI.cpp @@ -268,7 +268,7 @@ void CommonCLI::handleCommand(uint32_t sender_timestamp, const char* command, ch } else if (memcmp(config, "agc.reset.interval ", 19) == 0) { _prefs->agc_reset_interval = atoi(&config[19]) / 4; savePrefs(); - strcpy(reply, "OK"); + sprintf(reply, "OK - interval rounded to %d", ((uint32_t) _prefs->agc_reset_interval) * 4); } else if (memcmp(config, "multi.acks ", 11) == 0) { _prefs->multi_acks = atoi(&config[11]); savePrefs(); From 8b3c16c497311a98bfef4ff6451ee0d5466c8367 Mon Sep 17 00:00:00 2001 From: Scott Powell Date: Sun, 31 Aug 2025 23:42:15 +1000 Subject: [PATCH 09/10] * ver bump --- examples/companion_radio/MyMesh.h | 4 ++-- examples/simple_repeater/main.cpp | 4 ++-- examples/simple_room_server/main.cpp | 4 ++-- examples/simple_sensor/SensorMesh.h | 4 ++-- 4 files changed, 8 insertions(+), 8 deletions(-) diff --git a/examples/companion_radio/MyMesh.h b/examples/companion_radio/MyMesh.h index 0a5057ea..89ee8133 100644 --- a/examples/companion_radio/MyMesh.h +++ b/examples/companion_radio/MyMesh.h @@ -8,11 +8,11 @@ #define FIRMWARE_VER_CODE 7 #ifndef FIRMWARE_BUILD_DATE -#define FIRMWARE_BUILD_DATE "24 Jul 2025" +#define FIRMWARE_BUILD_DATE "31 Aug 2025" #endif #ifndef FIRMWARE_VERSION -#define FIRMWARE_VERSION "v1.7.4" +#define FIRMWARE_VERSION "v1.8.0" #endif #if defined(NRF52_PLATFORM) || defined(STM32_PLATFORM) diff --git a/examples/simple_repeater/main.cpp b/examples/simple_repeater/main.cpp index 81c4d455..2fda6b85 100644 --- a/examples/simple_repeater/main.cpp +++ b/examples/simple_repeater/main.cpp @@ -22,11 +22,11 @@ /* ------------------------------ Config -------------------------------- */ #ifndef FIRMWARE_BUILD_DATE - #define FIRMWARE_BUILD_DATE "24 Jul 2025" + #define FIRMWARE_BUILD_DATE "31 Aug 2025" #endif #ifndef FIRMWARE_VERSION - #define FIRMWARE_VERSION "v1.7.4" + #define FIRMWARE_VERSION "v1.8.0" #endif #ifndef LORA_FREQ diff --git a/examples/simple_room_server/main.cpp b/examples/simple_room_server/main.cpp index 712d02a5..77e59d99 100644 --- a/examples/simple_room_server/main.cpp +++ b/examples/simple_room_server/main.cpp @@ -22,11 +22,11 @@ /* ------------------------------ Config -------------------------------- */ #ifndef FIRMWARE_BUILD_DATE - #define FIRMWARE_BUILD_DATE "24 Jul 2025" + #define FIRMWARE_BUILD_DATE "31 Aug 2025" #endif #ifndef FIRMWARE_VERSION - #define FIRMWARE_VERSION "v1.7.4" + #define FIRMWARE_VERSION "v1.8.0" #endif #ifndef LORA_FREQ diff --git a/examples/simple_sensor/SensorMesh.h b/examples/simple_sensor/SensorMesh.h index 62c1867e..ddcdf685 100644 --- a/examples/simple_sensor/SensorMesh.h +++ b/examples/simple_sensor/SensorMesh.h @@ -49,11 +49,11 @@ struct ContactInfo { }; #ifndef FIRMWARE_BUILD_DATE - #define FIRMWARE_BUILD_DATE "24 Jul 2025" + #define FIRMWARE_BUILD_DATE "31 Aug 2025" #endif #ifndef FIRMWARE_VERSION - #define FIRMWARE_VERSION "v1.7.4" + #define FIRMWARE_VERSION "v1.8.0" #endif #define FIRMWARE_ROLE "sensor" From 3aa57780f10f8831c0ca39259e09998b324c8bc3 Mon Sep 17 00:00:00 2001 From: fdlamotte Date: Sun, 31 Aug 2025 17:30:31 +0200 Subject: [PATCH 10/10] Update library.json version --- library.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/library.json b/library.json index 982983a3..572c55b0 100644 --- a/library.json +++ b/library.json @@ -1,6 +1,6 @@ { "name": "MeshCore", - "version" : "1.7.4", + "version" : "1.8.0", "dependencies": { "SPI": "*", "Wire": "*", @@ -13,4 +13,4 @@ "build": { "extraScript": "build_as_lib.py" } -} \ No newline at end of file +}