From a0c8f80504a5666f42fc8b56c05048cc1b6bb67e Mon Sep 17 00:00:00 2001 From: Jared Dohrman Date: Wed, 15 Apr 2026 18:24:36 +1000 Subject: [PATCH] chore: remove ESP32-C3 target support and CI coverage --- .github/workflows/pr-build-check.yml | 3 - .github/workflows/push-build-check.yml | 2 - README.md | 2 - docs/boards.md | 19 +---- docs/local-builds.md | 9 --- variants/eastmesh_mqtt/platformio.ini | 102 ------------------------- variants/tenstar_c3/target.h | 3 +- 7 files changed, 5 insertions(+), 135 deletions(-) diff --git a/.github/workflows/pr-build-check.yml b/.github/workflows/pr-build-check.yml index 79619c53..7283a11c 100644 --- a/.github/workflows/pr-build-check.yml +++ b/.github/workflows/pr-build-check.yml @@ -25,9 +25,6 @@ jobs: - heltec_v4_repeater_mqtt - T_Beam_S3_Supreme_SX1262_companion_radio_wifi - T_Beam_S3_Supreme_SX1262_repeater_mqtt - # ESP32-C3 - - Xiao_C3_companion_radio_wifi - - Xiao_C3_repeater_mqtt # ESP32-C6 - LilyGo_Tlora_C6_repeater_mqtt - Xiao_C6_repeater_mqtt diff --git a/.github/workflows/push-build-check.yml b/.github/workflows/push-build-check.yml index 1c96248c..3d8a821c 100644 --- a/.github/workflows/push-build-check.yml +++ b/.github/workflows/push-build-check.yml @@ -23,8 +23,6 @@ jobs: # ESP32-S3 / core EastMesh targets - heltec_v4_repeater_mqtt - T_Beam_S3_Supreme_SX1262_repeater_mqtt - # ESP32-C3 - - Xiao_C3_repeater_mqtt # ESP32-C6 - LilyGo_Tlora_C6_repeater_mqtt - Xiao_C6_repeater_mqtt diff --git a/README.md b/README.md index a56171aa..eadb474c 100644 --- a/README.md +++ b/README.md @@ -165,8 +165,6 @@ Features include: Recommended use is initial setup and occasional troubleshooting. On MQTT repeater deployments, disable the panel again when finished if you want maximum MQTT heap headroom. -Some constrained targets disable the panel to stay within flash limits. For example, `Xiao_C3_repeater_mqtt` builds with `WITH_WEB_PANEL=0`. - ### Companion WiFi Additions `*_companion_radio_wifi` targets now support persisted WiFi rescue commands: diff --git a/docs/boards.md b/docs/boards.md index 843882f5..45872975 100644 --- a/docs/boards.md +++ b/docs/boards.md @@ -23,8 +23,8 @@ The tables below are built from the repo's PlatformIO board metadata and variant - Pick an `ESP32-S3` board with `16MB` flash and PSRAM if you want strong overall headroom for MQTT plus UI: `heltec_v4_tft`, `heltec_v4`, `Station_G2`, `LilyGo_TBeam_1W`. - Pick a TFT board if this will be used as a human-facing companion or field node: `heltec_v4_tft`, `heltec_tracker_v2`, `LilyGo_TDeck`, `Heltec_T190`. - Pick e-paper if you want a status screen with lower idle draw and less frequent refresh: `Heltec_E213`, `Heltec_E290`, `Heltec_Wireless_Paper`, `ThinkNode_M5`. -- Pick a headless board if this is mainly a fixed MQTT gateway and screen space is not useful: `Xiao_C3`, `RAK_3112`, `Tenstar_C3`, `Heltec_ct62`, `Generic_E22`. -- Pick a headless Wi-Fi companion if the phone app will be the primary UI anyway: `Xiao_C3_companion_radio_wifi`, `RAK_3112_companion_radio_wifi`, `Xiao_S3_WIO_companion_radio_wifi`, `Station_G2_companion_radio_wifi`. +- Pick a headless board if this is mainly a fixed MQTT gateway and screen space is not useful: `RAK_3112`, `Generic_E22`, `Meshimi`, `Xiao_C6`. +- Pick a headless Wi-Fi companion if the phone app will be the primary UI anyway: `RAK_3112_companion_radio_wifi`, `Xiao_S3_WIO_companion_radio_wifi`, `Station_G2_companion_radio_wifi`. - Pick a GPS-capable board if location-aware/mobile use matters: the T-Beam family, `heltec_tracker_v2`, `Heltec_v3`, `heltec_v4`, `Station_G2`, `ThinkNode_M5`. - If you want the most conservative, older radio family choices, the `SX1276` boards are `LilyGo_TLora_V2_1_1_6`, `Tbeam_SX1276`, and `Heltec_v2`. @@ -42,7 +42,6 @@ If you are deciding between otherwise similar boards, these target-level setting | Ebyte_EoRa-S3 | default | 22 dBm cfg | ADC batt | | | Generic_E22_sx1262 | default | 22 dBm cfg | ADC batt | RF switch | | Generic_E22_sx1268 | default | 22 dBm cfg | ADC batt | RF switch | -| Heltec_ct62 | 80 MHz | 22 dBm cfg | ADC batt | | | Heltec_E213 | default | 22 dBm cfg | ADC batt | | | Heltec_E290 | default | 22 dBm cfg | ADC batt | | | Heltec_T190 | default | 22 dBm cfg | ADC batt | | @@ -71,12 +70,9 @@ If you are deciding between otherwise similar boards, these target-level setting | T_Beam_S3_Supreme_SX1262 | default | 22 dBm cfg | PMU | BME280 | | Tbeam_SX1262 | default | 22 dBm cfg | PMU | | | Tbeam_SX1276 | default | 20 dBm cfg | PMU | | -| Tenstar_C3_sx1262 | 80 MHz | 22 dBm cfg | ADC batt | | -| Tenstar_C3_sx1268 | 80 MHz | 22 dBm cfg | ADC batt | | | ThinkNode_M2 | default | 22 dBm cfg | ADC batt | | | ThinkNode_M5 | default | 22 dBm cfg | ADC batt | | | WHY2025_badge | default | 22 dBm cfg | none | | -| Xiao_C3 | 80 MHz | 22 dBm cfg | ADC batt | | | Xiao_C6 | default | 22 dBm cfg | none | RF switch | | Xiao_S3_WIO | default | 22 dBm cfg | none | RF switch | @@ -91,7 +87,6 @@ This table includes all repeater MQTT targets currently defined in `variants/eas | Ebyte_EoRa-S3 | ESP32S3 | 512 KB | 2 MB | 4 MB | SX1262 | OLED (SSD1306) | | | | Generic_E22_sx1262 | ESP32 | 520 KB | No | 4 MB | SX1262 | None | | | | Generic_E22_sx1268 | ESP32 | 520 KB | No | 4 MB | SX1268 | None | | | -| Heltec_ct62 | ESP32C3 | 400 KB | No | 4 MB | SX1262 | None | | | | Heltec_E213 | ESP32S3 | 512 KB | 8 MB | 16 MB | SX1262 | E-paper (2.13") | | | | Heltec_E290 | ESP32S3 | 512 KB | 8 MB | 16 MB | SX1262 | E-paper (2.9") | | | | Heltec_T190 | ESP32S3 | 512 KB | 8 MB | 16 MB | SX1262 | TFT (ST7789) | | | @@ -120,17 +115,12 @@ This table includes all repeater MQTT targets currently defined in `variants/eas | T_Beam_S3_Supreme_SX1262 | ESP32S3 | 512 KB | 8 MB | 8 MB | SX1262 | OLED (SH1106) | ✅ | ✅ | | Tbeam_SX1262 | ESP32 | 520 KB | No | 4 MB | SX1262 | OLED (SSD1306) | ✅ | | | Tbeam_SX1276 | ESP32 | 520 KB | No | 4 MB | SX1276 | OLED (SSD1306) | ✅ | | -| Tenstar_C3_sx1262 | ESP32C3 | 400 KB | No | 4 MB | SX1262 | None | | | -| Tenstar_C3_sx1268 | ESP32C3 | 400 KB | No | 4 MB | SX1268 | None | | | | ThinkNode_M2 | ESP32S3 | 512 KB | No | 4 MB | SX1262 | OLED (SH1106) | | | | ThinkNode_M5 | ESP32S3 | 512 KB | No | 4 MB | SX1262 | E-paper (GxEPD) | ✅ | | | WHY2025_badge | ESP32C6 | 512 KB | No | 4 MB | SX1262 | None | | | -| Xiao_C3 | ESP32C3 | 400 KB | No | 4 MB | SX1262 | None | ✅ | | | Xiao_C6 | ESP32C6 | 512 KB | No | 4 MB | SX1262 | None | | | | Xiao_S3_WIO | ESP32S3 | 512 KB | No | 8 MB | SX1262 | None | ✅ | | -Note: all current `repeater_mqtt` boards support the local web panel except `Xiao_C3`, where it is disabled to preserve limited board resources. - SD notes: - `✅` means the board is currently known to work with the SD-backed archive path in EastMesh. @@ -164,15 +154,14 @@ These are the Wi-Fi companion targets that rely on the companion app as the prim | ----------- | ------- | ------ | ----- | ----- | ------ | --- | | Heltec_WSL3 | ESP32S3 | 512 KB | No | 8 MB | SX1262 | ✅ | | RAK_3112 | ESP32S3 | 512 KB | No | 8 MB | SX1262 | ✅ | -| Xiao_C3 | ESP32C3 | 400 KB | No | 4 MB | SX1262 | ✅ | | Xiao_S3_WIO | ESP32S3 | 512 KB | No | 8 MB | SX1262 | ✅ | ## Practical Picks - Best all-round MQTT repeater with screen and overall headroom: `heltec_v4_repeater_mqtt`, `heltec_v4_tft_repeater_mqtt`, `Station_G2_repeater_mqtt`, `LilyGo_TBeam_1W_repeater_mqtt`. -- Best MQTT repeater if you want a simple headless install: `RAK_3112_repeater_mqtt`, `Tenstar_C3_sx1262_repeater_mqtt`, `Heltec_ct62_repeater_mqtt`, `Generic_E22_sx1262_repeater_mqtt`. +- Best MQTT repeater if you want a simple headless install: `RAK_3112_repeater_mqtt`, `Generic_E22_sx1262_repeater_mqtt`, `Meshimi_repeater_mqtt`, `Xiao_C6_repeater_mqtt`. - Best low-power display MQTT builds: `Heltec_E213_repeater_mqtt`, `Heltec_E290_repeater_mqtt`, `Heltec_Wireless_Paper_repeater_mqtt`, `ThinkNode_M5_Repeater_mqtt`. - Best companion choices if you want the richest local UI: `heltec_v4_tft_companion_radio_wifi` and `heltec_tracker_v2_companion_radio_wifi`. - Best companion choices if you want maximum memory headroom: `T_Beam_S3_Supreme_SX1262_companion_radio_wifi`, `Station_G2_companion_radio_wifi`, `LilyGo_TBeam_1W_companion_radio_wifi`. -- Best companion choices if you are happy with an app-first, mostly headless setup: `Xiao_C3_companion_radio_wifi`, `RAK_3112_companion_radio_wifi`, `Xiao_S3_WIO_companion_radio_wifi`, `Station_G2_companion_radio_wifi`. +- Best companion choices if you are happy with an app-first, mostly headless setup: `RAK_3112_companion_radio_wifi`, `Xiao_S3_WIO_companion_radio_wifi`, `Station_G2_companion_radio_wifi`. - Best companion choices if you prefer OLED over TFT: `T_Beam_S3_Supreme_SX1262_companion_radio_wifi`, `heltec_v4_companion_radio_wifi`, `LilyGo_TBeam_1W_companion_radio_wifi`. diff --git a/docs/local-builds.md b/docs/local-builds.md index 193425a0..a96585f9 100644 --- a/docs/local-builds.md +++ b/docs/local-builds.md @@ -67,7 +67,6 @@ These are the full PlatformIO env names used for local source builds and release ```text Generic_E22_sx1262_repeater_mqtt Generic_E22_sx1268_repeater_mqtt -Heltec_ct62_repeater_mqtt Heltec_E213_repeater_mqtt Heltec_E290_repeater_mqtt Heltec_T190_repeater_mqtt @@ -96,18 +95,11 @@ Station_G2_repeater_mqtt T_Beam_S3_Supreme_SX1262_repeater_mqtt Tbeam_SX1262_repeater_mqtt Tbeam_SX1276_repeater_mqtt -Tenstar_C3_sx1262_repeater_mqtt -Tenstar_C3_sx1268_repeater_mqtt WHY2025_badge_repeater_mqtt -Xiao_C3_repeater_mqtt Xiao_C6_repeater_mqtt Xiao_S3_WIO_repeater_mqtt ``` -Notes: - -- `Xiao_C3_repeater_mqtt` disables the web panel to stay within flash limits - ## Supported `companion_radio_wifi` Boards These are the full PlatformIO env names used for local source builds and release artifact naming. @@ -127,7 +119,6 @@ Station_G2_companion_radio_wifi T_Beam_S3_Supreme_SX1262_companion_radio_wifi ThinkNode_M2_companion_radio_wifi ThinkNode_M5_companion_radio_wifi -Xiao_C3_companion_radio_wifi Xiao_S3_WIO_companion_radio_wifi ``` diff --git a/variants/eastmesh_mqtt/platformio.ini b/variants/eastmesh_mqtt/platformio.ini index 0f69c200..16ca89b9 100644 --- a/variants/eastmesh_mqtt/platformio.ini +++ b/variants/eastmesh_mqtt/platformio.ini @@ -75,31 +75,6 @@ lib_deps = ${Generic_E22.lib_deps} ${esp32_ota.lib_deps} -[env:Heltec_ct62_repeater_mqtt] -extends = Heltec_ct62 -build_flags = - ${Heltec_ct62.build_flags} - ;-D ARDUINO_USB_MODE=1 - ;-D ARDUINO_USB_CDC_ON_BOOT=1 - -D ADVERT_NAME='"HT-CT62 Repeater"' - -D ADVERT_LAT=0.0 - -D ADVERT_LON=0.0 - -D ADMIN_PASSWORD='"password"' - -D MAX_NEIGHBOURS=50 - -D WITH_MQTT_UPLINK=1 - -D MQTT_DEBUG=1 - -D WIFI_SSID='"myssid"' - -D WIFI_PWD='"mypwd"' - -D MQTT_DEFAULT_IATA='"MEL"' - -D CONFIG_MBEDTLS_CERTIFICATE_BUNDLE=1 -build_src_filter = ${Heltec_ct62.build_src_filter} - +<../examples/simple_repeater> - + - + -lib_deps = - ${Heltec_ct62.lib_deps} - ${esp32_ota.lib_deps} - [env:Heltec_E213_repeater_mqtt] extends = Heltec_E213_base build_flags = @@ -791,59 +766,6 @@ lib_deps = ${LilyGo_TBeam_SX1276.lib_deps} ${esp32_ota.lib_deps} -[env:Tenstar_C3_sx1262_repeater_mqtt] -extends = Tenstar_esp32_C3 -build_src_filter = ${Tenstar_esp32_C3.build_src_filter} - +<../examples/simple_repeater/*.cpp> - + - + -build_flags = - ${Tenstar_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='"Tenstar C3 Repeater"' - -D ADVERT_LAT=0.0 - -D ADVERT_LON=0.0 - -D ADMIN_PASSWORD='"password"' - -D MAX_NEIGHBOURS=50 - -D WITH_MQTT_UPLINK=1 - -D MQTT_DEBUG=1 - -D WIFI_SSID='"myssid"' - -D WIFI_PWD='"mypwd"' - -D MQTT_DEFAULT_IATA='"MEL"' - -D CONFIG_MBEDTLS_CERTIFICATE_BUNDLE=1 -lib_deps = - ${Tenstar_esp32_C3.lib_deps} - ${esp32_ota.lib_deps} - -[env:Tenstar_C3_sx1268_repeater_mqtt] -extends = Tenstar_esp32_C3 -build_src_filter = ${Tenstar_esp32_C3.build_src_filter} - +<../examples/simple_repeater/*.cpp> - + - + -build_flags = - ${Tenstar_esp32_C3.build_flags} - -D RADIO_CLASS=CustomSX1268 - -D WRAPPER_CLASS=CustomSX1268Wrapper - -D LORA_TX_POWER=22 - -D ADVERT_NAME='"Tenstar C3 Repeater"' - -D ADVERT_LAT=0.0 - -D ADVERT_LON=0.0 - -D ADMIN_PASSWORD='"password"' - -D MAX_NEIGHBOURS=50 - -D WITH_MQTT_UPLINK=1 - -D MQTT_DEBUG=1 - -D WIFI_SSID='"myssid"' - -D WIFI_PWD='"mypwd"' - -D MQTT_DEFAULT_IATA='"MEL"' - -D CONFIG_MBEDTLS_CERTIFICATE_BUNDLE=1 -lib_deps = - ${Tenstar_esp32_C3.lib_deps} - ${esp32_ota.lib_deps} - [env:ThinkNode_M2_Repeater_mqtt] extends = ThinkNode_M2 build_src_filter = ${ThinkNode_M2.build_src_filter} @@ -912,30 +834,6 @@ build_flags = lib_deps = ${WHY2025_badge.lib_deps} -[env:Xiao_C3_repeater_mqtt] -extends = Xiao_esp32_C3 -build_src_filter = ${Xiao_esp32_C3.build_src_filter} - +<../examples/simple_repeater/*.cpp> - + -build_flags = - ${Xiao_esp32_C3.build_flags} - -D ADVERT_NAME='"Xiao C3 Repeater"' - -D ADVERT_LAT=0.0 - -D ADVERT_LON=0.0 - -D ADMIN_PASSWORD='"password"' - -D MAX_NEIGHBOURS=50 - -D WITH_MQTT_UPLINK=1 - -D WITH_WEB_PANEL=0 - -D MQTT_DEBUG=1 - -D WIFI_SSID='"myssid"' - -D WIFI_PWD='"mypwd"' - -D MQTT_DEFAULT_IATA='"MEL"' - -D CONFIG_MBEDTLS_CERTIFICATE_BUNDLE=1 -lib_deps = - ${Xiao_esp32_C3.lib_deps} - ${esp32_ota.lib_deps} - bakercp/CRC32 @ ^2.0.0 - [env:Xiao_C6_repeater_mqtt] extends = Xiao_C6 build_src_filter = ${Xiao_C6.build_src_filter} diff --git a/variants/tenstar_c3/target.h b/variants/tenstar_c3/target.h index b228b04e..c8b49404 100644 --- a/variants/tenstar_c3/target.h +++ b/variants/tenstar_c3/target.h @@ -3,7 +3,7 @@ #define RADIOLIB_STATIC_ONLY 1 #include #include -#include +#include #include #include #include @@ -19,4 +19,3 @@ uint32_t radio_get_rng_seed(); void radio_set_params(float freq, float bw, uint8_t sf, uint8_t cr); void radio_set_tx_power(int8_t dbm); mesh::LocalIdentity radio_new_identity(); -