From 74e7af3f57035545b9a168beabfa7553f5148eda Mon Sep 17 00:00:00 2001 From: James Hall Date: Thu, 27 Mar 2025 09:21:29 -0400 Subject: [PATCH 01/15] TBeam: Added Repeater --- variants/lilygo_tbeam/platformio.ini | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/variants/lilygo_tbeam/platformio.ini b/variants/lilygo_tbeam/platformio.ini index f754896f..155c2b7e 100644 --- a/variants/lilygo_tbeam/platformio.ini +++ b/variants/lilygo_tbeam/platformio.ini @@ -43,4 +43,22 @@ build_src_filter = ${LilyGo_TBeam.build_src_filter} +<../examples/companion_radio> lib_deps = ${LilyGo_TBeam.lib_deps} - densaugeo/base64 @ ~1.4.0 \ No newline at end of file + 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=-37.0 + -D ADVERT_LON=145.0 + -D ADMIN_PASSWORD='"password"' + -D MESH_PACKET_LOGGING=1 +; -D MESH_DEBUG=1 +build_src_filter = ${LilyGo_TBeam.build_src_filter} + + + +<../examples/simple_repeater> +lib_deps = + ${LilyGo_TBeam.lib_deps} + ${esp32_ota.lib_deps} \ No newline at end of file From 01e98caea74f46a24caa53e072f58f63d6d8775e Mon Sep 17 00:00:00 2001 From: taco Date: Sun, 30 Mar 2025 15:52:25 +1100 Subject: [PATCH 02/15] Refactor: FaketecBoard to PromicroBoard --- .../{FaketecBoard.cpp => PromicroBoard.cpp} | 8 ++-- .../nrf52/{FaketecBoard.h => PromicroBoard.h} | 4 +- variants/promicro/platformio.ini | 46 +++++++++---------- variants/promicro/target.cpp | 2 +- variants/promicro/target.h | 4 +- 5 files changed, 32 insertions(+), 32 deletions(-) rename src/helpers/nrf52/{FaketecBoard.cpp => PromicroBoard.cpp} (93%) rename src/helpers/nrf52/{FaketecBoard.h => PromicroBoard.h} (95%) diff --git a/src/helpers/nrf52/FaketecBoard.cpp b/src/helpers/nrf52/PromicroBoard.cpp similarity index 93% rename from src/helpers/nrf52/FaketecBoard.cpp rename to src/helpers/nrf52/PromicroBoard.cpp index 4b9ff023..58710509 100644 --- a/src/helpers/nrf52/FaketecBoard.cpp +++ b/src/helpers/nrf52/PromicroBoard.cpp @@ -1,12 +1,12 @@ #include -#include "FaketecBoard.h" +#include "PromicroBoard.h" #include #include static BLEDfu bledfu; -void FaketecBoard::begin() { +void PromicroBoard::begin() { // for future use, sub-classes SHOULD call this from their begin() startup_reason = BD_STARTUP_NORMAL; btn_prev_state = HIGH; @@ -39,7 +39,7 @@ static void disconnect_callback(uint16_t conn_handle, uint8_t reason) { MESH_DEBUG_PRINTLN("BLE client disconnected"); } -bool FaketecBoard::startOTAUpdate(const char* id, char reply[]) { +bool PromicroBoard::startOTAUpdate(const char* id, char reply[]) { // Config the peripheral connection with maximum bandwidth // more SRAM required by SoftDevice // Note: All config***() function must be called before begin() @@ -50,7 +50,7 @@ bool FaketecBoard::startOTAUpdate(const char* id, char reply[]) { // Set max power. Accepted values are: -40, -30, -20, -16, -12, -8, -4, 0, 4 Bluefruit.setTxPower(4); // Set the BLE device name - Bluefruit.setName("Faketec_OTA"); + Bluefruit.setName("ProMicro_OTA"); Bluefruit.Periph.setConnectCallback(connect_callback); Bluefruit.Periph.setDisconnectCallback(disconnect_callback); diff --git a/src/helpers/nrf52/FaketecBoard.h b/src/helpers/nrf52/PromicroBoard.h similarity index 95% rename from src/helpers/nrf52/FaketecBoard.h rename to src/helpers/nrf52/PromicroBoard.h index f407958b..89e71755 100644 --- a/src/helpers/nrf52/FaketecBoard.h +++ b/src/helpers/nrf52/PromicroBoard.h @@ -19,7 +19,7 @@ #define PIN_VBAT_READ 17 #define ADC_MULTIPLIER (1.815f) // dependent on voltage divider resistors. TODO: more accurate battery tracking -class FaketecBoard : public mesh::MainBoard { +class PromicroBoard : public mesh::MainBoard { protected: uint8_t startup_reason; uint8_t btn_prev_state; @@ -43,7 +43,7 @@ public: } const char* getManufacturerName() const override { - return "Faketec DIY"; + return "ProMicro DIY"; } int buttonStateChanged() { diff --git a/variants/promicro/platformio.ini b/variants/promicro/platformio.ini index f99a427d..ce1b7b99 100644 --- a/variants/promicro/platformio.ini +++ b/variants/promicro/platformio.ini @@ -1,4 +1,4 @@ -[faketec] +[Faketec] extends = nrf52840_base board = promicro_nrf52840 build_flags = ${nrf52840_base.build_flags} @@ -15,17 +15,17 @@ build_flags = ${nrf52840_base.build_flags} -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> + +extends = Faketec +build_src_filter = ${Faketec.build_src_filter} +<../examples/simple_repeater> + build_flags = - ${faketec.build_flags} + ${Faketec.build_flags} -D ADVERT_NAME="\"Faketec Repeater\"" -D ADVERT_LAT=-37.0 -D ADVERT_LON=145.0 @@ -33,14 +33,14 @@ build_flags = ; -D MESH_PACKET_LOGGING=1 ; -D MESH_DEBUG=1 lib_deps = - ${faketec.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> + +extends = Faketec +build_src_filter = ${Faketec.build_src_filter} +<../examples/simple_room_server> + build_flags = - ${faketec.build_flags} + ${Faketec.build_flags} -D ADVERT_NAME="\"Test Room\"" -D ADVERT_LAT=-37.0 -D ADVERT_LON=145.0 @@ -49,41 +49,41 @@ build_flags = ; -D MESH_PACKET_LOGGING=1 ; -D MESH_DEBUG=1 lib_deps = - ${faketec.lib_deps} + ${Faketec.lib_deps} adafruit/RTClib @ ^2.1.3 [env:Faketec_terminal_chat] -extends = faketec +extends = Faketec build_flags = - ${faketec.build_flags} + ${Faketec.build_flags} -D MAX_CONTACTS=100 -D MAX_GROUP_CHANNELS=1 ; -D MESH_PACKET_LOGGING=1 ; -D MESH_DEBUG=1 -build_src_filter = ${faketec.build_src_filter} +<../examples/simple_secure_chat/main.cpp> +build_src_filter = ${Faketec.build_src_filter} +<../examples/simple_secure_chat/main.cpp> lib_deps = - ${faketec.lib_deps} + ${Faketec.lib_deps} densaugeo/base64 @ ~1.4.0 adafruit/RTClib @ ^2.1.3 [env:Faketec_companion_radio_usb] -extends = faketec +extends = Faketec build_flags = - ${faketec.build_flags} + ${Faketec.build_flags} -D MAX_CONTACTS=100 -D MAX_GROUP_CHANNELS=8 ; NOTE: DO NOT ENABLE --> -D MESH_PACKET_LOGGING=1 ; NOTE: DO NOT ENABLE --> -D MESH_DEBUG=1 -build_src_filter = ${faketec.build_src_filter} +<../examples/companion_radio> +<../examples/companion_radio> + +build_src_filter = ${Faketec.build_src_filter} +<../examples/companion_radio> +<../examples/companion_radio> + lib_deps = - ${faketec.lib_deps} + ${Faketec.lib_deps} adafruit/RTClib @ ^2.1.3 densaugeo/base64 @ ~1.4.0 [env:Faketec_companion_radio_ble] -extends = faketec +extends = Faketec build_flags = - ${faketec.build_flags} + ${Faketec.build_flags} -D MAX_CONTACTS=100 -D MAX_GROUP_CHANNELS=8 -D BLE_PIN_CODE=123456 @@ -92,9 +92,9 @@ build_flags = -D ENABLE_PRIVATE_KEY_IMPORT=1 ; -D MESH_PACKET_LOGGING=1 ; -D MESH_DEBUG=1 -build_src_filter = ${faketec.build_src_filter} + +<../examples/companion_radio> + +build_src_filter = ${Faketec.build_src_filter} + +<../examples/companion_radio> + lib_deps = - ${faketec.lib_deps} + ${Faketec.lib_deps} adafruit/RTClib @ ^2.1.3 densaugeo/base64 @ ~1.4.0 @@ -110,7 +110,7 @@ build_flags = ${nrf52840_base.build_flags} -D SX126X_CURRENT_LIMIT=130 -D SX126X_RX_BOOSTED_GAIN=1 build_src_filter = ${nrf52840_base.build_src_filter} - + + + +<../variants/promicro> [env:ProMicroLLCC68_Repeater] diff --git a/variants/promicro/target.cpp b/variants/promicro/target.cpp index 9958c9eb..059bd552 100644 --- a/variants/promicro/target.cpp +++ b/variants/promicro/target.cpp @@ -2,7 +2,7 @@ #include "target.h" #include -FaketecBoard board; +PromicroBoard board; RADIO_CLASS radio = new Module(P_LORA_NSS, P_LORA_DIO_1, P_LORA_RESET, P_LORA_BUSY, SPI); diff --git a/variants/promicro/target.h b/variants/promicro/target.h index b66020d4..79d0862f 100644 --- a/variants/promicro/target.h +++ b/variants/promicro/target.h @@ -3,12 +3,12 @@ #define RADIOLIB_STATIC_ONLY 1 #include #include -#include +#include #include #include #include -extern FaketecBoard board; +extern PromicroBoard board; extern WRAPPER_CLASS radio_driver; extern AutoDiscoverRTCClock rtc_clock; From b8f09531c4d2e39a87f98fcfd3b8f29ec81c8fbd Mon Sep 17 00:00:00 2001 From: taco Date: Sun, 30 Mar 2025 15:57:20 +1100 Subject: [PATCH 03/15] fix: give ProMicroLLCC68 a different definition --- variants/promicro/platformio.ini | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/variants/promicro/platformio.ini b/variants/promicro/platformio.ini index ce1b7b99..f2cecad1 100644 --- a/variants/promicro/platformio.ini +++ b/variants/promicro/platformio.ini @@ -103,7 +103,7 @@ extends = nrf52840_base board = promicro_nrf52840 build_flags = ${nrf52840_base.build_flags} -I variants/promicro - -D FAKETEC + -D PROMICROLLCC68 -D RADIO_CLASS=CustomLLCC68 -D WRAPPER_CLASS=CustomLLCC68Wrapper -D LORA_TX_POWER=22 From 3a6b8fda9314eb2c7f0878f6afcd875e143998a4 Mon Sep 17 00:00:00 2001 From: Scott Powell Date: Mon, 31 Mar 2025 14:01:49 +1100 Subject: [PATCH 04/15] * room server: faster sync of unread posts, MAX_UNSYNCED_POSTS now 32 (was 16) --- examples/simple_room_server/main.cpp | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/examples/simple_room_server/main.cpp b/examples/simple_room_server/main.cpp index c91765fc..34c8ebdf 100644 --- a/examples/simple_room_server/main.cpp +++ b/examples/simple_room_server/main.cpp @@ -62,7 +62,7 @@ #endif #ifndef MAX_UNSYNCED_POSTS - #define MAX_UNSYNCED_POSTS 16 + #define MAX_UNSYNCED_POSTS 32 #endif #ifdef DISPLAY_CLASS @@ -111,7 +111,7 @@ struct PostInfo { #define REPLY_DELAY_MILLIS 1500 #define PUSH_NOTIFY_DELAY_MILLIS 2000 -#define SYNC_PUSH_INTERVAL 2000 +#define SYNC_PUSH_INTERVAL 1200 #define PUSH_ACK_TIMEOUT_FLOOD 12000 #define PUSH_TIMEOUT_BASE 4000 @@ -782,6 +782,7 @@ public: } // check next Round-Robin client, and sync next new post auto client = &known_clients[next_client_idx]; + bool did_push = false; if (client->pending_ack == 0 && client->last_activity != 0 && client->push_failures < 3) { // not already waiting for ACK, AND not evicted, AND retries not max MESH_DEBUG_PRINTLN("loop - checking for client %02X", (uint32_t) client->id.pub_key[0]); for (int k = 0, idx = next_post_idx; k < MAX_UNSYNCED_POSTS; k++) { @@ -789,6 +790,7 @@ public: && !posts[idx].author.matches(client->id)) { // don't push posts to the author // push this post to Client, then wait for ACK pushPostToClient(client, posts[idx]); + did_push = true; MESH_DEBUG_PRINTLN("loop - pushed to client %02X: %s", (uint32_t) client->id.pub_key[0], posts[idx].text); break; } @@ -799,7 +801,12 @@ public: } next_client_idx = (next_client_idx + 1) % num_clients; // round robin polling for each client - next_push = futureMillis(SYNC_PUSH_INTERVAL); + if (did_push) { + next_push = futureMillis(SYNC_PUSH_INTERVAL); + } else { + // were no unsynced posts for curr client, so proccess next client much quicker! (in next loop()) + next_push = futureMillis(SYNC_PUSH_INTERVAL / 8); + } } if (next_flood_advert && millisHasNowPassed(next_flood_advert)) { From 87443ad43f0b032074a9df05cdd00a624345be62 Mon Sep 17 00:00:00 2001 From: liamcottle Date: Tue, 1 Apr 2025 14:46:48 +1300 Subject: [PATCH 05/15] clear display on init to avoid static --- examples/companion_radio/main.cpp | 1 + src/helpers/ui/DisplayDriver.h | 1 + src/helpers/ui/SSD1306Display.cpp | 5 +++++ src/helpers/ui/SSD1306Display.h | 1 + 4 files changed, 8 insertions(+) diff --git a/examples/companion_radio/main.cpp b/examples/companion_radio/main.cpp index ef50d1ca..d6a6e990 100644 --- a/examples/companion_radio/main.cpp +++ b/examples/companion_radio/main.cpp @@ -1442,6 +1442,7 @@ void setup() { #ifdef DISPLAY_CLASS if (display.begin()) { disp = &display; + disp->clear(); } #endif #endif diff --git a/src/helpers/ui/DisplayDriver.h b/src/helpers/ui/DisplayDriver.h index 1c8bebc7..7086b807 100644 --- a/src/helpers/ui/DisplayDriver.h +++ b/src/helpers/ui/DisplayDriver.h @@ -15,6 +15,7 @@ public: virtual bool isOn() = 0; virtual void turnOn() = 0; virtual void turnOff() = 0; + virtual void clear() = 0; virtual void startFrame(Color bkg = DARK) = 0; virtual void setTextSize(int sz) = 0; virtual void setColor(Color c) = 0; diff --git a/src/helpers/ui/SSD1306Display.cpp b/src/helpers/ui/SSD1306Display.cpp index 4c2699ac..911dd6fa 100644 --- a/src/helpers/ui/SSD1306Display.cpp +++ b/src/helpers/ui/SSD1306Display.cpp @@ -20,6 +20,11 @@ void SSD1306Display::turnOff() { _isOn = false; } +void SSD1306Display::clear() { + display.clearDisplay(); + display.display(); +} + void SSD1306Display::startFrame(Color bkg) { display.clearDisplay(); // TODO: apply 'bkg' _color = SSD1306_WHITE; diff --git a/src/helpers/ui/SSD1306Display.h b/src/helpers/ui/SSD1306Display.h index c90a336d..cd0e2a0a 100644 --- a/src/helpers/ui/SSD1306Display.h +++ b/src/helpers/ui/SSD1306Display.h @@ -27,6 +27,7 @@ public: bool isOn() override { return _isOn; } void turnOn() override; void turnOff() override; + void clear() override; void startFrame(Color bkg = DARK) override; void setTextSize(int sz) override; void setColor(Color c) override; From af070af554cc7f922f30408dd7cc92d2b723e007 Mon Sep 17 00:00:00 2001 From: liamcottle Date: Tue, 1 Apr 2025 15:50:24 +1300 Subject: [PATCH 06/15] show please wait message on companion boot --- examples/companion_radio/main.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/examples/companion_radio/main.cpp b/examples/companion_radio/main.cpp index d6a6e990..4672e6e6 100644 --- a/examples/companion_radio/main.cpp +++ b/examples/companion_radio/main.cpp @@ -1442,7 +1442,9 @@ void setup() { #ifdef DISPLAY_CLASS if (display.begin()) { disp = &display; - disp->clear(); + disp->startFrame(); + disp->print("Please wait..."); + disp->endFrame(); } #endif #endif From f93a5156bb9d4bc23a7c6677b88b7a1d6c1e1db3 Mon Sep 17 00:00:00 2001 From: liamcottle Date: Tue, 1 Apr 2025 16:00:09 +1300 Subject: [PATCH 07/15] show please wait message on repeater boot --- examples/simple_repeater/main.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/examples/simple_repeater/main.cpp b/examples/simple_repeater/main.cpp index 4836c533..8ac1e8a7 100644 --- a/examples/simple_repeater/main.cpp +++ b/examples/simple_repeater/main.cpp @@ -616,6 +616,14 @@ void setup() { board.begin(); +#ifdef DISPLAY_CLASS + if(display.begin()){ + display.startFrame(); + display.print("Please wait..."); + display.endFrame(); + } +#endif + if (!radio_init()) { halt(); } fast_rng.begin(radio_get_rng_seed()); @@ -646,7 +654,6 @@ void setup() { the_mesh.begin(fs); #ifdef DISPLAY_CLASS - display.begin(); ui_task.begin(the_mesh.getNodeName(), FIRMWARE_BUILD_DATE); #endif From 7e583d7f98e84835d56dda18908b4c3ada46064c Mon Sep 17 00:00:00 2001 From: liamcottle Date: Tue, 1 Apr 2025 16:04:06 +1300 Subject: [PATCH 08/15] show please wait message on room server boot --- examples/simple_room_server/main.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/examples/simple_room_server/main.cpp b/examples/simple_room_server/main.cpp index 34c8ebdf..36938ef6 100644 --- a/examples/simple_room_server/main.cpp +++ b/examples/simple_room_server/main.cpp @@ -846,6 +846,14 @@ void setup() { board.begin(); +#ifdef DISPLAY_CLASS + if(display.begin()){ + display.startFrame(); + display.print("Please wait..."); + display.endFrame(); + } +#endif + if (!radio_init()) { halt(); } fast_rng.begin(radio_get_rng_seed()); @@ -875,7 +883,6 @@ void setup() { the_mesh.begin(fs); #ifdef DISPLAY_CLASS - display.begin(); ui_task.begin(the_mesh.getNodeName(), FIRMWARE_BUILD_DATE); #endif From 4d4a0ae4e3f8e085c253356cc7b27222eab5b4ff Mon Sep 17 00:00:00 2001 From: liamcottle Date: Tue, 1 Apr 2025 16:10:12 +1300 Subject: [PATCH 09/15] init display before radio --- examples/companion_radio/main.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/examples/companion_radio/main.cpp b/examples/companion_radio/main.cpp index 4672e6e6..31c441d5 100644 --- a/examples/companion_radio/main.cpp +++ b/examples/companion_radio/main.cpp @@ -1433,10 +1433,6 @@ void setup() { board.begin(); - if (!radio_init()) { halt(); } - - fast_rng.begin(radio_get_rng_seed()); - #ifdef HAS_UI DisplayDriver* disp = NULL; #ifdef DISPLAY_CLASS @@ -1449,6 +1445,10 @@ void setup() { #endif #endif + if (!radio_init()) { halt(); } + + fast_rng.begin(radio_get_rng_seed()); + #if defined(NRF52_PLATFORM) InternalFS.begin(); the_mesh.begin(InternalFS, From 87f476354f8a06220a1d091adc0ea7605064bd4d Mon Sep 17 00:00:00 2001 From: Florent de Lamotte Date: Tue, 1 Apr 2025 11:32:04 +0200 Subject: [PATCH 10/15] initial commit --- examples/companion_radio/main.cpp | 8 ++++++++ variants/xiao_s3_wio/platformio.ini | 18 ++++++++++++++++++ 2 files changed, 26 insertions(+) diff --git a/examples/companion_radio/main.cpp b/examples/companion_radio/main.cpp index ef50d1ca..78200aac 100644 --- a/examples/companion_radio/main.cpp +++ b/examples/companion_radio/main.cpp @@ -1404,6 +1404,10 @@ public: #elif defined(BLE_PIN_CODE) #include SerialBLEInterface serial_interface; + #elif defined(SERIAL_RX) + #include + ArduinoSerialInterface serial_interface; + HardwareSerial companion_serial(1); #else #include ArduinoSerialInterface serial_interface; @@ -1481,6 +1485,10 @@ void setup() { char dev_name[32+16]; sprintf(dev_name, "%s%s", BLE_NAME_PREFIX, the_mesh.getNodeName()); serial_interface.begin(dev_name, the_mesh.getBLEPin()); +#elif defined(SERIAL_RX) + companion_serial.setPins(SERIAL_RX, SERIAL_TX); + companion_serial.begin(115200); + serial_interface.begin(companion_serial); #else serial_interface.begin(Serial); #endif diff --git a/variants/xiao_s3_wio/platformio.ini b/variants/xiao_s3_wio/platformio.ini index 9eedb4f0..18f5beef 100644 --- a/variants/xiao_s3_wio/platformio.ini +++ b/variants/xiao_s3_wio/platformio.ini @@ -88,3 +88,21 @@ build_src_filter = ${Xiao_S3_WIO.build_src_filter} 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 +; -D MESH_PACKET_LOGGING=1 +; -D MESH_DEBUG=1 +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 + From 04ad06b8be36cf04998e381459201c1997b92ae9 Mon Sep 17 00:00:00 2001 From: recrof Date: Thu, 3 Apr 2025 14:59:20 +0200 Subject: [PATCH 11/15] set repeater/room server Lat & Lon to 0.0 as default --- variants/generic_espnow/platformio.ini | 9 ++++----- variants/heltec_v2/platformio.ini | 8 ++++---- variants/heltec_v3/platformio.ini | 16 ++++++++-------- variants/lilygo_t3s3/platformio.ini | 8 ++++---- variants/lilygo_tbeam/platformio.ini | 4 ++-- variants/lilygo_tlora_v2_1/platformio.ini | 8 ++++---- variants/promicro/platformio.ini | 10 +++++----- variants/rak4631/platformio.ini | 8 ++++---- variants/station_g2/platformio.ini | 8 ++++---- variants/t114/platformio.ini | 8 ++++---- variants/techo/platformio.ini | 8 ++++---- variants/xiao_c3/platformio.ini | 8 ++++---- variants/xiao_s3_wio/platformio.ini | 9 ++++----- 13 files changed, 55 insertions(+), 57 deletions(-) diff --git a/variants/generic_espnow/platformio.ini b/variants/generic_espnow/platformio.ini index 8dbc8ebb..802902be 100644 --- a/variants/generic_espnow/platformio.ini +++ b/variants/generic_espnow/platformio.ini @@ -39,8 +39,8 @@ extends = Generic_ESPNOW build_flags = ${Generic_ESPNOW.build_flags} -D ADVERT_NAME='"ESPNOW Repeater"' - -D ADVERT_LAT=-37.0 - -D ADVERT_LON=145.0 + -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> @@ -71,8 +71,8 @@ extends = Generic_ESPNOW build_flags = ${Generic_ESPNOW.build_flags} -D ADVERT_NAME='"Heltec Room"' - -D ADVERT_LAT=-37.0 - -D ADVERT_LON=145.0 + -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} @@ -80,4 +80,3 @@ build_src_filter = ${Generic_ESPNOW.build_src_filter} lib_deps = ${Generic_ESPNOW.lib_deps} ${esp32_ota.lib_deps} - diff --git a/variants/heltec_v2/platformio.ini b/variants/heltec_v2/platformio.ini index cfca7fee..b8235906 100644 --- a/variants/heltec_v2/platformio.ini +++ b/variants/heltec_v2/platformio.ini @@ -25,8 +25,8 @@ build_flags = ${Heltec_lora32_v2.build_flags} -D DISPLAY_CLASS=SSD1306Display -D ADVERT_NAME='"Heltec Repeater"' - -D ADVERT_LAT=-37.0 - -D ADVERT_LON=145.0 + -D ADVERT_LAT=0.0 + -D ADVERT_LON=0.0 -D ADMIN_PASSWORD='"password"' ; -D MESH_PACKET_LOGGING=1 ; -D MESH_DEBUG=1 @@ -43,8 +43,8 @@ build_flags = ${Heltec_lora32_v2.build_flags} -D DISPLAY_CLASS=SSD1306Display -D ADVERT_NAME='"Heltec Room"' - -D ADVERT_LAT=-37.0 - -D ADVERT_LON=145.0 + -D ADVERT_LAT=0.0 + -D ADVERT_LON=0.0 -D ADMIN_PASSWORD='"password"' -D ROOM_PASSWORD='"hello"' ; -D MESH_PACKET_LOGGING=1 diff --git a/variants/heltec_v3/platformio.ini b/variants/heltec_v3/platformio.ini index cfe8f264..370ec8f2 100644 --- a/variants/heltec_v3/platformio.ini +++ b/variants/heltec_v3/platformio.ini @@ -28,8 +28,8 @@ build_flags = ${Heltec_lora32_v3.build_flags} -D DISPLAY_CLASS=SSD1306Display -D ADVERT_NAME='"Heltec Repeater"' - -D ADVERT_LAT=-37.0 - -D ADVERT_LON=145.0 + -D ADVERT_LAT=0.0 + -D ADVERT_LON=0.0 -D ADMIN_PASSWORD='"password"' -D MESH_PACKET_LOGGING=1 ; -D MESH_DEBUG=1 @@ -46,8 +46,8 @@ build_flags = ${Heltec_lora32_v3.build_flags} -D DISPLAY_CLASS=SSD1306Display -D ADVERT_NAME='"Heltec Room"' - -D ADVERT_LAT=-37.0 - -D ADVERT_LON=145.0 + -D ADVERT_LAT=0.0 + -D ADVERT_LON=0.0 -D ADMIN_PASSWORD='"password"' -D ROOM_PASSWORD='"hello"' ; -D MESH_PACKET_LOGGING=1 @@ -139,8 +139,8 @@ extends = Heltec_lora32_v3 build_flags = ${Heltec_lora32_v3.build_flags} -D ADVERT_NAME='"Heltec Repeater"' - -D ADVERT_LAT=-37.0 - -D ADVERT_LON=145.0 + -D ADVERT_LAT=0.0 + -D ADVERT_LON=0.0 -D ADMIN_PASSWORD='"password"' -D MESH_PACKET_LOGGING=1 ; -D MESH_DEBUG=1 @@ -157,8 +157,8 @@ build_src_filter = ${Heltec_lora32_v3.build_src_filter} build_flags = ${Heltec_lora32_v3.build_flags} -D ADVERT_NAME='"Heltec Room"' - -D ADVERT_LAT=-37.0 - -D ADVERT_LON=145.0 + -D ADVERT_LAT=0.0 + -D ADVERT_LON=0.0 -D ADMIN_PASSWORD='"password"' -D ROOM_PASSWORD='"hello"' ; -D MESH_PACKET_LOGGING=1 diff --git a/variants/lilygo_t3s3/platformio.ini b/variants/lilygo_t3s3/platformio.ini index 59ed60b4..43b8d16d 100644 --- a/variants/lilygo_t3s3/platformio.ini +++ b/variants/lilygo_t3s3/platformio.ini @@ -39,8 +39,8 @@ build_flags = ${LilyGo_T3S3_sx1262.build_flags} -D DISPLAY_CLASS=SSD1306Display -D ADVERT_NAME='"T3S3-1262 Repeater"' - -D ADVERT_LAT=-37.0 - -D ADVERT_LON=145.0 + -D ADVERT_LAT=0.0 + -D ADVERT_LON=0.0 -D ADMIN_PASSWORD='"password"' ; -D MESH_PACKET_LOGGING=1 ; -D MESH_DEBUG=1 @@ -71,8 +71,8 @@ build_flags = ${LilyGo_T3S3_sx1262.build_flags} -D DISPLAY_CLASS=SSD1306Display -D ADVERT_NAME='"T3S3-1262 Room"' - -D ADVERT_LAT=-37.0 - -D ADVERT_LON=145.0 + -D ADVERT_LAT=0.0 + -D ADVERT_LON=0.0 -D ADMIN_PASSWORD='"password"' -D ROOM_PASSWORD='"hello"' ; -D MESH_PACKET_LOGGING=1 diff --git a/variants/lilygo_tbeam/platformio.ini b/variants/lilygo_tbeam/platformio.ini index 155c2b7e..007d06d2 100644 --- a/variants/lilygo_tbeam/platformio.ini +++ b/variants/lilygo_tbeam/platformio.ini @@ -51,8 +51,8 @@ build_flags = ${LilyGo_TBeam.build_flags} -D DISPLAY_CLASS=SSD1306Display -D ADVERT_NAME='"Tbeam Repeater"' - -D ADVERT_LAT=-37.0 - -D ADVERT_LON=145.0 + -D ADVERT_LAT=0.0 + -D ADVERT_LON=0.0 -D ADMIN_PASSWORD='"password"' -D MESH_PACKET_LOGGING=1 ; -D MESH_DEBUG=1 diff --git a/variants/lilygo_tlora_v2_1/platformio.ini b/variants/lilygo_tlora_v2_1/platformio.ini index f7485f9c..da183b2b 100644 --- a/variants/lilygo_tlora_v2_1/platformio.ini +++ b/variants/lilygo_tlora_v2_1/platformio.ini @@ -39,8 +39,8 @@ build_src_filter = ${LilyGo_TLora_V2_1_1_6.build_src_filter} build_flags = ${LilyGo_TLora_V2_1_1_6.build_flags} -D ADVERT_NAME='"TLora-V2.1-1.6 Repeater"' - -D ADVERT_LAT=-37.0 - -D ADVERT_LON=145.0 + -D ADVERT_LAT=0.0 + -D ADVERT_LON=0.0 -D ADMIN_PASSWORD='"password"' ; -D MESH_PACKET_LOGGING=1 ; -D MESH_DEBUG=1 @@ -109,8 +109,8 @@ build_src_filter = ${LilyGo_TLora_V2_1_1_6.build_src_filter} build_flags = ${LilyGo_TLora_V2_1_1_6.build_flags} -D ADVERT_NAME='"TLora-V2.1-1.6 Room"' - -D ADVERT_LAT=-37.0 - -D ADVERT_LON=145.0 + -D ADVERT_LAT=0.0 + -D ADVERT_LON=0.0 -D ADMIN_PASSWORD='"password"' -D ROOM_PASSWORD='"hello"' ; -D MESH_PACKET_LOGGING=1 diff --git a/variants/promicro/platformio.ini b/variants/promicro/platformio.ini index f2cecad1..f9f74feb 100644 --- a/variants/promicro/platformio.ini +++ b/variants/promicro/platformio.ini @@ -27,8 +27,8 @@ build_src_filter = ${Faketec.build_src_filter} +<../examples/simple_repeater> +< build_flags = ${Faketec.build_flags} -D ADVERT_NAME="\"Faketec Repeater\"" - -D ADVERT_LAT=-37.0 - -D ADVERT_LON=145.0 + -D ADVERT_LAT=0.0 + -D ADVERT_LON=0.0 -D ADMIN_PASSWORD="\"password\"" ; -D MESH_PACKET_LOGGING=1 ; -D MESH_DEBUG=1 @@ -42,8 +42,8 @@ build_src_filter = ${Faketec.build_src_filter} +<../examples/simple_room_server> build_flags = ${Faketec.build_flags} -D ADVERT_NAME="\"Test Room\"" - -D ADVERT_LAT=-37.0 - -D ADVERT_LON=145.0 + -D ADVERT_LAT=0.0 + -D ADVERT_LON=0.0 -D ADMIN_PASSWORD="\"password\"" -D ROOM_PASSWORD="\"hello\"" ; -D MESH_PACKET_LOGGING=1 @@ -104,7 +104,7 @@ board = promicro_nrf52840 build_flags = ${nrf52840_base.build_flags} -I variants/promicro -D PROMICROLLCC68 - -D RADIO_CLASS=CustomLLCC68 + -D RADIO_CLASS=CustomLLCC68 -D WRAPPER_CLASS=CustomLLCC68Wrapper -D LORA_TX_POWER=22 -D SX126X_CURRENT_LIMIT=130 diff --git a/variants/rak4631/platformio.ini b/variants/rak4631/platformio.ini index 518ab8b9..63d6b6b8 100644 --- a/variants/rak4631/platformio.ini +++ b/variants/rak4631/platformio.ini @@ -25,8 +25,8 @@ build_flags = ${rak4631.build_flags} -D DISPLAY_CLASS=SSD1306Display -D ADVERT_NAME='"RAK4631 Repeater"' - -D ADVERT_LAT=-37.0 - -D ADVERT_LON=145.0 + -D ADVERT_LAT=0.0 + -D ADVERT_LON=0.0 -D ADMIN_PASSWORD='"password"' ; -D MESH_PACKET_LOGGING=1 ; -D MESH_DEBUG=1 @@ -40,8 +40,8 @@ build_flags = ${rak4631.build_flags} -D DISPLAY_CLASS=SSD1306Display -D ADVERT_NAME='"Test Room"' - -D ADVERT_LAT=-37.0 - -D ADVERT_LON=145.0 + -D ADVERT_LAT=0.0 + -D ADVERT_LON=0.0 -D ADMIN_PASSWORD='"password"' -D ROOM_PASSWORD='"hello"' ; -D MESH_PACKET_LOGGING=1 diff --git a/variants/station_g2/platformio.ini b/variants/station_g2/platformio.ini index 96eca1c4..49e97b4b 100644 --- a/variants/station_g2/platformio.ini +++ b/variants/station_g2/platformio.ini @@ -27,8 +27,8 @@ extends = Station_G2 build_flags = ${Station_G2.build_flags} -D ADVERT_NAME='"Station G2 Repeater"' - -D ADVERT_LAT=-37.0 - -D ADVERT_LON=145.0 + -D ADVERT_LAT=0.0 + -D ADVERT_LON=0.0 -D ADMIN_PASSWORD='"password"' -D MESH_PACKET_LOGGING=1 ; -D MESH_DEBUG=1 @@ -45,8 +45,8 @@ build_src_filter = ${Station_G2.build_src_filter} build_flags = ${Station_G2.build_flags} -D ADVERT_NAME='"Station G2 Room"' - -D ADVERT_LAT=-37.0 - -D ADVERT_LON=145.0 + -D ADVERT_LAT=0.0 + -D ADVERT_LON=0.0 -D ADMIN_PASSWORD='"password"' -D ROOM_PASSWORD='"hello"' ; -D MESH_PACKET_LOGGING=1 diff --git a/variants/t114/platformio.ini b/variants/t114/platformio.ini index 754839dd..297517d4 100644 --- a/variants/t114/platformio.ini +++ b/variants/t114/platformio.ini @@ -36,8 +36,8 @@ build_src_filter = ${Heltec_t114.build_src_filter} build_flags = ${Heltec_t114.build_flags} -D ADVERT_NAME='"Heltec_T114 Repeater"' - -D ADVERT_LAT=-37.0 - -D ADVERT_LON=145.0 + -D ADVERT_LAT=0.0 + -D ADVERT_LON=0.0 -D ADMIN_PASSWORD='"password"' ; -D MESH_PACKET_LOGGING=1 ; -D MESH_DEBUG=1 @@ -49,8 +49,8 @@ build_src_filter = ${Heltec_t114.build_src_filter} build_flags = ${Heltec_t114.build_flags} -D ADVERT_NAME='"Heltec_T114 Room"' - -D ADVERT_LAT=-37.0 - -D ADVERT_LON=145.0 + -D ADVERT_LAT=0.0 + -D ADVERT_LON=0.0 -D ADMIN_PASSWORD='"password"' -D ROOM_PASSWORD='"hello"' ; -D MESH_PACKET_LOGGING=1 diff --git a/variants/techo/platformio.ini b/variants/techo/platformio.ini index 2c825e64..6b681fb4 100644 --- a/variants/techo/platformio.ini +++ b/variants/techo/platformio.ini @@ -34,8 +34,8 @@ build_src_filter = ${LilyGo_Techo.build_src_filter} +<../examples/simple_repeate build_flags = ${LilyGo_Techo.build_flags} -D ADVERT_NAME='"T-Echo Repeater"' - -D ADVERT_LAT=-37.0 - -D ADVERT_LON=145.0 + -D ADVERT_LAT=0.0 + -D ADVERT_LON=0.0 -D ADMIN_PASSWORD='"password"' ; -D MESH_PACKET_LOGGING=1 ; -D MESH_DEBUG=1 @@ -46,8 +46,8 @@ build_src_filter = ${LilyGo_Techo.build_src_filter} +<../examples/simple_room_se build_flags = ${LilyGo_Techo.build_flags} -D ADVERT_NAME='"T-Echo Room"' - -D ADVERT_LAT=-37.0 - -D ADVERT_LON=145.0 + -D ADVERT_LAT=0.0 + -D ADVERT_LON=0.0 -D ADMIN_PASSWORD='"password"' ; -D MESH_PACKET_LOGGING=1 ; -D MESH_DEBUG=1 diff --git a/variants/xiao_c3/platformio.ini b/variants/xiao_c3/platformio.ini index 77c9eae7..e790e74e 100644 --- a/variants/xiao_c3/platformio.ini +++ b/variants/xiao_c3/platformio.ini @@ -30,8 +30,8 @@ build_flags = -D SX126X_RX_BOOSTED_GAIN=1 -D LORA_TX_POWER=22 -D ADVERT_NAME='"Xiao Repeater"' - -D ADVERT_LAT=-37.0 - -D ADVERT_LON=145.0 + -D ADVERT_LAT=0.0 + -D ADVERT_LON=0.0 -D ADMIN_PASSWORD='"password"' ; -D MESH_PACKET_LOGGING=1 ; -D MESH_DEBUG=1 @@ -49,8 +49,8 @@ build_flags = -D WRAPPER_CLASS=CustomSX1268Wrapper -D LORA_TX_POWER=22 -D ADVERT_NAME='"Xiao Repeater"' - -D ADVERT_LAT=-37.0 - -D ADVERT_LON=145.0 + -D ADVERT_LAT=0.0 + -D ADVERT_LON=0.0 -D ADMIN_PASSWORD='"password"' ; -D MESH_PACKET_LOGGING=1 ; -D MESH_DEBUG=1 diff --git a/variants/xiao_s3_wio/platformio.ini b/variants/xiao_s3_wio/platformio.ini index 18f5beef..f6275cbc 100644 --- a/variants/xiao_s3_wio/platformio.ini +++ b/variants/xiao_s3_wio/platformio.ini @@ -30,8 +30,8 @@ build_src_filter = ${Xiao_S3_WIO.build_src_filter} build_flags = ${Xiao_S3_WIO.build_flags} -D ADVERT_NAME='"XiaoS3 Repeater"' - -D ADVERT_LAT=-37.0 - -D ADVERT_LON=145.0 + -D ADVERT_LAT=0.0 + -D ADVERT_LON=0.0 -D ADMIN_PASSWORD='"password"' ; -D MESH_PACKET_LOGGING=1 ; -D MESH_DEBUG=1 @@ -46,8 +46,8 @@ build_src_filter = ${Xiao_S3_WIO.build_src_filter} build_flags = ${Xiao_S3_WIO.build_flags} -D ADVERT_NAME='"XiaoS3 Room"' - -D ADVERT_LAT=-37.0 - -D ADVERT_LON=145.0 + -D ADVERT_LAT=0.0 + -D ADVERT_LON=0.0 -D ADMIN_PASSWORD='"password"' -D ROOM_PASSWORD='"hello"' ; -D MESH_PACKET_LOGGING=1 @@ -105,4 +105,3 @@ build_src_filter = ${Xiao_S3_WIO.build_src_filter} lib_deps = ${Xiao_S3_WIO.lib_deps} densaugeo/base64 @ ~1.4.0 - From 96faf423e362f748560b2135c6773fc88b4aacc0 Mon Sep 17 00:00:00 2001 From: taco Date: Fri, 4 Apr 2025 15:39:11 +1100 Subject: [PATCH 12/15] FIX: Need to explicitly setRfSwitchPins to drive RXEN high when in receive mode. --- variants/promicro/target.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/variants/promicro/target.cpp b/variants/promicro/target.cpp index 059bd552..a3ea1879 100644 --- a/variants/promicro/target.cpp +++ b/variants/promicro/target.cpp @@ -26,6 +26,7 @@ bool radio_init() { SPI.setPins(P_LORA_MISO, P_LORA_SCLK, P_LORA_MOSI); SPI.begin(); + radio.setRfSwitchPins(SX126X_RXEN, SX126X_TXEN); int status = radio.begin(LORA_FREQ, LORA_BW, LORA_SF, LORA_CR, RADIOLIB_SX126X_SYNC_WORD_PRIVATE, LORA_TX_POWER, 8, tcxo); if (status == RADIOLIB_ERR_SPI_CMD_FAILED || status == RADIOLIB_ERR_SPI_CMD_INVALID) { #define SX126X_DIO3_TCXO_VOLTAGE (0.0f); From 9498d2e82450088b6448106b2c4ed71832552748 Mon Sep 17 00:00:00 2001 From: Scott Powell Date: Sun, 6 Apr 2025 12:34:09 +1000 Subject: [PATCH 13/15] * ID hash 0x00 and 0xFF now reserved for future. --- examples/companion_radio/main.cpp | 4 ++++ examples/simple_repeater/main.cpp | 4 ++++ examples/simple_room_server/main.cpp | 4 ++++ examples/simple_secure_chat/main.cpp | 4 ++++ 4 files changed, 16 insertions(+) diff --git a/examples/companion_radio/main.cpp b/examples/companion_radio/main.cpp index 15dc88e5..2a6af5b7 100644 --- a/examples/companion_radio/main.cpp +++ b/examples/companion_radio/main.cpp @@ -228,6 +228,10 @@ class MyMesh : public BaseChatMesh { void loadMainIdentity() { if (!_identity_store->load("_main", self_id)) { self_id = radio_new_identity(); // create new random identity + int count = 0; + while (count < 10 && (self_id.pub_key[0] == 0x00 || self_id.pub_key[0] == 0xFF)) { // reserved id hashes + self_id = radio_new_identity(); count++; + } saveMainIdentity(self_id); } } diff --git a/examples/simple_repeater/main.cpp b/examples/simple_repeater/main.cpp index 8ac1e8a7..1c76264e 100644 --- a/examples/simple_repeater/main.cpp +++ b/examples/simple_repeater/main.cpp @@ -643,6 +643,10 @@ void setup() { if (!store.load("_main", the_mesh.self_id)) { MESH_DEBUG_PRINTLN("Generating new keypair"); the_mesh.self_id = radio_new_identity(); // create new random identity + int count = 0; + while (count < 10 && (the_mesh.self_id.pub_key[0] == 0x00 || the_mesh.self_id.pub_key[0] == 0xFF)) { // reserved id hashes + the_mesh.self_id = radio_new_identity(); count++; + } store.save("_main", the_mesh.self_id); } diff --git a/examples/simple_room_server/main.cpp b/examples/simple_room_server/main.cpp index 36938ef6..daf8b497 100644 --- a/examples/simple_room_server/main.cpp +++ b/examples/simple_room_server/main.cpp @@ -872,6 +872,10 @@ void setup() { #endif if (!store.load("_main", the_mesh.self_id)) { the_mesh.self_id = radio_new_identity(); // create new random identity + int count = 0; + while (count < 10 && (the_mesh.self_id.pub_key[0] == 0x00 || the_mesh.self_id.pub_key[0] == 0xFF)) { // reserved id hashes + the_mesh.self_id = radio_new_identity(); count++; + } store.save("_main", the_mesh.self_id); } diff --git a/examples/simple_secure_chat/main.cpp b/examples/simple_secure_chat/main.cpp index 4b71811c..f5cbc743 100644 --- a/examples/simple_secure_chat/main.cpp +++ b/examples/simple_secure_chat/main.cpp @@ -300,6 +300,10 @@ public: ((StdRNG *)getRNG())->begin(millis()); self_id = mesh::LocalIdentity(getRNG()); // create new random identity + int count = 0; + while (count < 10 && (self_id.pub_key[0] == 0x00 || self_id.pub_key[0] == 0xFF)) { // reserved id hashes + self_id = mesh::LocalIdentity(getRNG()); count++; + } store.save("_main", self_id); } From 396a7a24b1335bfd41dddbb3b203580eaf8134f4 Mon Sep 17 00:00:00 2001 From: Scott Powell Date: Mon, 7 Apr 2025 21:55:24 +1000 Subject: [PATCH 14/15] * default SF now 11 --- platformio.ini | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/platformio.ini b/platformio.ini index 53ef30c4..1652f1e3 100644 --- a/platformio.ini +++ b/platformio.ini @@ -25,7 +25,7 @@ lib_deps = build_flags = -w -DNDEBUG -DRADIOLIB_STATIC_ONLY=1 -DRADIOLIB_GODMODE=1 -D LORA_FREQ=869.525 -D LORA_BW=250 - -D LORA_SF=10 + -D LORA_SF=11 build_src_filter = +<*.cpp> + From d7e6a361b580818d8adb0e7eaf3f8445d42dddcc Mon Sep 17 00:00:00 2001 From: Scott Powell Date: Mon, 7 Apr 2025 21:59:53 +1000 Subject: [PATCH 15/15] * ver bump to v1.4.3 --- examples/companion_radio/main.cpp | 4 ++-- examples/simple_repeater/main.cpp | 4 ++-- examples/simple_room_server/main.cpp | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/examples/companion_radio/main.cpp b/examples/companion_radio/main.cpp index 2a6af5b7..e2640543 100644 --- a/examples/companion_radio/main.cpp +++ b/examples/companion_radio/main.cpp @@ -86,11 +86,11 @@ static uint32_t _atoi(const char* sp) { #define FIRMWARE_VER_CODE 3 #ifndef FIRMWARE_BUILD_DATE - #define FIRMWARE_BUILD_DATE "30 Mar 2025" + #define FIRMWARE_BUILD_DATE "7 Apr 2025" #endif #ifndef FIRMWARE_VERSION - #define FIRMWARE_VERSION "v1.4.2" + #define FIRMWARE_VERSION "v1.4.3" #endif #define CMD_APP_START 1 diff --git a/examples/simple_repeater/main.cpp b/examples/simple_repeater/main.cpp index 1c76264e..79194e96 100644 --- a/examples/simple_repeater/main.cpp +++ b/examples/simple_repeater/main.cpp @@ -20,11 +20,11 @@ /* ------------------------------ Config -------------------------------- */ #ifndef FIRMWARE_BUILD_DATE - #define FIRMWARE_BUILD_DATE "30 Mar 2025" + #define FIRMWARE_BUILD_DATE "7 Apr 2025" #endif #ifndef FIRMWARE_VERSION - #define FIRMWARE_VERSION "v1.4.2" + #define FIRMWARE_VERSION "v1.4.3" #endif #ifndef LORA_FREQ diff --git a/examples/simple_room_server/main.cpp b/examples/simple_room_server/main.cpp index daf8b497..405c8f7f 100644 --- a/examples/simple_room_server/main.cpp +++ b/examples/simple_room_server/main.cpp @@ -20,11 +20,11 @@ /* ------------------------------ Config -------------------------------- */ #ifndef FIRMWARE_BUILD_DATE - #define FIRMWARE_BUILD_DATE "30 Mar 2025" + #define FIRMWARE_BUILD_DATE "7 Apr 2025" #endif #ifndef FIRMWARE_VERSION - #define FIRMWARE_VERSION "v1.4.2" + #define FIRMWARE_VERSION "v1.4.3" #endif #ifndef LORA_FREQ