From 3919a6e36fc754f52d930faf56d0ec2520885582 Mon Sep 17 00:00:00 2001 From: Jared Dohrman Date: Wed, 15 Apr 2026 17:59:23 +1000 Subject: [PATCH] fix: clean up web panel build filters and tune /stats signal meters --- platformio.ini | 1 - src/helpers/web/WebPanelServer.cpp | 6 ++--- variants/eastmesh_mqtt/platformio.ini | 39 +++++++++++++++++++++++++++ 3 files changed, 42 insertions(+), 4 deletions(-) diff --git a/platformio.ini b/platformio.ini index def24659..fcad6303 100644 --- a/platformio.ini +++ b/platformio.ini @@ -48,7 +48,6 @@ build_flags = -w -DNDEBUG -DRADIOLIB_STATIC_ONLY=1 -DRADIOLIB_GODMODE=1 build_src_filter = +<*.cpp> + - + + + + diff --git a/src/helpers/web/WebPanelServer.cpp b/src/helpers/web/WebPanelServer.cpp index f6ac60e1..55b61cce 100644 --- a/src/helpers/web/WebPanelServer.cpp +++ b/src/helpers/web/WebPanelServer.cpp @@ -1416,16 +1416,16 @@ const char kWebPanelAppHtml[] PROGMEM = R"HTML( `; } function renderRadioCard(radio) { - const rssiPct = pctRange(radio.last_rssi, -120, -20); + const rssiPct = pctRange(radio.last_rssi, -20, -120); const snrPct = pctRange(radio.last_snr, -20, 20); - const noisePct = pctRange(radio.noise_floor, -130, -60); + const noisePct = pctRange(radio.noise_floor, -60, -130); const totalAir = (radio.tx_air_secs || 0) + (radio.rx_air_secs || 0); const txShare = pctRatio(radio.tx_air_secs || 0, totalAir); return `

Radio

${renderMeter("RSSI", (radio.last_rssi ?? "--") + " dBm", rssiPct, "signal strength", false)} ${renderMeter("SNR", Number.isFinite(radio.last_snr) ? radio.last_snr.toFixed(1) + " dB" : "--", snrPct, "link quality", false)} - ${renderMeter("Noise Floor", (radio.noise_floor ?? "--") + " dBm", noisePct, "ambient RF", true)} + ${renderMeter("Noise Floor", (radio.noise_floor ?? "--") + " dBm", noisePct, "ambient RF", false)}
${renderMetric("TX Air", String(radio.tx_air_secs ?? 0) + " s")} ${renderMetric("RX Air", String(radio.rx_air_secs ?? 0) + " s")} diff --git a/variants/eastmesh_mqtt/platformio.ini b/variants/eastmesh_mqtt/platformio.ini index 8881ba41..0f69c200 100644 --- a/variants/eastmesh_mqtt/platformio.ini +++ b/variants/eastmesh_mqtt/platformio.ini @@ -18,6 +18,7 @@ build_src_filter = ${Ebyte_EoRa-S3.build_src_filter} + +<../examples/simple_repeater> + + + lib_deps = ${Ebyte_EoRa-S3.lib_deps} ${esp32_ota.lib_deps} @@ -27,6 +28,7 @@ extends = Generic_E22 build_src_filter = ${Generic_E22.build_src_filter} +<../examples/simple_repeater/*.cpp> + + + build_flags = ${Generic_E22.build_flags} -D RADIO_CLASS=CustomSX1262 @@ -52,6 +54,7 @@ extends = Generic_E22 build_src_filter = ${Generic_E22.build_src_filter} +<../examples/simple_repeater/*.cpp> + + + build_flags = ${Generic_E22.build_flags} -D RADIO_CLASS=CustomSX1268 @@ -92,6 +95,7 @@ build_flags = build_src_filter = ${Heltec_ct62.build_src_filter} +<../examples/simple_repeater> + + + lib_deps = ${Heltec_ct62.lib_deps} ${esp32_ota.lib_deps} @@ -116,6 +120,7 @@ build_src_filter = ${Heltec_E213_base.build_src_filter} + +<../examples/simple_repeater> + + + lib_deps = ${Heltec_E213_base.lib_deps} ${esp32_ota.lib_deps} @@ -141,6 +146,7 @@ build_src_filter = ${Heltec_E290_base.build_src_filter} + +<../examples/simple_repeater> + + + lib_deps = ${Heltec_E290_base.lib_deps} ${esp32_ota.lib_deps} @@ -164,6 +170,7 @@ build_flags = build_src_filter = ${Heltec_T190_base.build_src_filter} +<../examples/simple_repeater> + + + lib_deps = ${Heltec_T190_base.lib_deps} ${esp32_ota.lib_deps} @@ -188,6 +195,7 @@ build_src_filter = ${Heltec_tracker_v2.build_src_filter} + +<../examples/simple_repeater> + + + lib_deps = ${Heltec_tracker_v2.lib_deps} ${esp32_ota.lib_deps} @@ -214,6 +222,7 @@ build_src_filter = ${Heltec_lora32_v2.build_src_filter} + + + + + lib_deps = ${Heltec_lora32_v2.lib_deps} ${esp32_ota.lib_deps} @@ -238,6 +247,7 @@ build_src_filter = ${Heltec_lora32_v3.build_src_filter} + +<../examples/simple_repeater> + + + lib_deps = ${Heltec_lora32_v3.lib_deps} ${esp32_ota.lib_deps} @@ -262,6 +272,7 @@ build_flags = -D ARDUINO_USB_CDC_ON_BOOT=1 build_src_filter = ${heltec_v4_oled.build_src_filter} + + + + +<../examples/simple_repeater> lib_deps = @@ -289,6 +300,7 @@ build_src_filter = ${heltec_v4_tft.build_src_filter} + +<../examples/simple_repeater> + + + lib_deps = ${heltec_v4_tft.lib_deps} ${esp32_ota.lib_deps} @@ -314,6 +326,7 @@ build_src_filter = ${Heltec_Wireless_Paper_base.build_src_filter} + +<../examples/simple_repeater> + + + lib_deps = ${Heltec_Wireless_Paper_base.lib_deps} ${esp32_ota.lib_deps} @@ -340,6 +353,7 @@ build_src_filter = ${Heltec_tracker_base.build_src_filter} + +<../examples/simple_repeater> + + + lib_deps = ${Heltec_tracker_base.lib_deps} ${esp32_ota.lib_deps} @@ -362,6 +376,7 @@ build_flags = build_src_filter = ${Heltec_lora32_v3.build_src_filter} +<../examples/simple_repeater> + + + lib_deps = ${Heltec_lora32_v3.lib_deps} ${esp32_ota.lib_deps} @@ -387,6 +402,7 @@ build_src_filter = ${LilyGo_T3S3_sx1262.build_src_filter} + +<../examples/simple_repeater> + + + lib_deps = ${LilyGo_T3S3_sx1262.lib_deps} ${esp32_ota.lib_deps} @@ -411,6 +427,7 @@ build_src_filter = ${LilyGo_T3S3_sx1276.build_src_filter} + +<../examples/simple_repeater> + + + lib_deps = ${LilyGo_T3S3_sx1276.lib_deps} ${esp32_ota.lib_deps} @@ -435,6 +452,7 @@ build_flags = build_src_filter = ${LilyGo_TBeam_1W.build_src_filter} +<../examples/simple_repeater> + + + lib_deps = ${LilyGo_TBeam_1W.lib_deps} ${esp32_ota.lib_deps} @@ -458,6 +476,7 @@ build_src_filter = ${LilyGo_TDeck.build_src_filter} +<../examples/simple_repeater> + + + + lib_deps = ${LilyGo_TDeck.lib_deps} ${esp32_ota.lib_deps} @@ -467,6 +486,7 @@ extends = tlora_c6 build_src_filter = ${tlora_c6.build_src_filter} +<../examples/simple_repeater/*.cpp> + + + build_flags = ${tlora_c6.build_flags} -D ADVERT_NAME='"Tlora C6 Repeater"' @@ -488,6 +508,7 @@ 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"' @@ -510,6 +531,7 @@ extends = M5Stack_Unit_C6L build_src_filter = ${M5Stack_Unit_C6L.build_src_filter} +<../examples/simple_repeater/*.cpp> + + + build_flags = ${M5Stack_Unit_C6L.build_flags} -D ADVERT_NAME='"Unit C6L Repeater"' @@ -532,6 +554,7 @@ build_src_filter = ${Meshadventurer.build_src_filter} +<../examples/simple_repeater> + + + + build_flags = ${Meshadventurer.build_flags} -D RADIO_CLASS=CustomSX1262 @@ -558,6 +581,7 @@ build_src_filter = ${Meshadventurer.build_src_filter} +<../examples/simple_repeater> + + + + build_flags = ${Meshadventurer.build_flags} -D RADIO_CLASS=CustomSX1268 @@ -583,6 +607,7 @@ extends = Meshimi build_src_filter = ${Meshimi.build_src_filter} +<../examples/simple_repeater/*.cpp> + + + build_flags = ${Meshimi.build_flags} -D ADVERT_NAME='"Meshimi Repeater"' @@ -619,6 +644,7 @@ build_src_filter = ${nibble_screen_connect_base.build_src_filter} + +<../examples/simple_repeater> + + + lib_deps = ${nibble_screen_connect_base.lib_deps} ${esp32_ota.lib_deps} @@ -641,6 +667,7 @@ build_flags = build_src_filter = ${rak3112.build_src_filter} +<../examples/simple_repeater> + + + lib_deps = ${rak3112.lib_deps} ${esp32_ota.lib_deps} @@ -666,6 +693,7 @@ build_flags = build_src_filter = ${Station_G2.build_src_filter} +<../examples/simple_repeater> + + + lib_deps = ${Station_G2.lib_deps} ${esp32_ota.lib_deps} @@ -688,6 +716,7 @@ build_flags = build_src_filter = ${Station_G2.build_src_filter} +<../examples/simple_repeater> + + + lib_deps = ${Station_G2.lib_deps} ${esp32_ota.lib_deps} @@ -710,6 +739,7 @@ build_flags = 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} @@ -732,6 +762,7 @@ build_flags = build_src_filter = ${LilyGo_TBeam_SX1262.build_src_filter} +<../examples/simple_repeater> + + + lib_deps = ${LilyGo_TBeam_SX1262.lib_deps} ${esp32_ota.lib_deps} @@ -755,6 +786,7 @@ build_flags = build_src_filter = ${LilyGo_TBeam_SX1276.build_src_filter} +<../examples/simple_repeater> + + + lib_deps = ${LilyGo_TBeam_SX1276.lib_deps} ${esp32_ota.lib_deps} @@ -764,6 +796,7 @@ 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 @@ -790,6 +823,7 @@ 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 @@ -815,6 +849,7 @@ extends = ThinkNode_M2 build_src_filter = ${ThinkNode_M2.build_src_filter} +<../examples/simple_repeater/*.cpp> + + + build_flags = ${ThinkNode_M2.build_flags} -D ADVERT_NAME='"Thinknode M2 Repeater"' @@ -837,6 +872,7 @@ extends = ThinkNode_M5 build_src_filter = ${ThinkNode_M5.build_src_filter} +<../examples/simple_repeater/*.cpp> + + + build_flags = ${ThinkNode_M5.build_flags} -D ADVERT_NAME='"Thinknode M5 Repeater"' @@ -859,6 +895,7 @@ extends = WHY2025_badge build_src_filter = ${WHY2025_badge.build_src_filter} +<../examples/simple_repeater/*.cpp> + + + build_flags = ${WHY2025_badge.build_flags} -D ADVERT_NAME='"WHY2025 Badge Repeater"' @@ -904,6 +941,7 @@ extends = Xiao_C6 build_src_filter = ${Xiao_C6.build_src_filter} +<../examples/simple_repeater/*.cpp> + + + build_flags = ${Xiao_C6.build_flags} -D ADVERT_NAME='"Xiao C6 Repeater"' @@ -925,6 +963,7 @@ extends = Xiao_S3_WIO build_src_filter = ${Xiao_S3_WIO.build_src_filter} +<../examples/simple_repeater/*.cpp> + + + build_flags = ${Xiao_S3_WIO.build_flags} -D ADVERT_NAME='"XiaoS3 Repeater"'