mikecarper
131bbafc67
feat: retain multi-channel voltage telemetry
2026-08-25 22:51:22 -07:00
mikecarper
ad1ff3f03e
feat: order flood rules by channel specificity
2026-08-25 21:58:08 -07:00
mikecarper
605b245eb5
feat: add selective flood retry rules
2026-08-25 21:38:23 -07:00
mikecarper
65e40ff05f
feat: add customizable companion Bluetooth names
2026-08-25 20:51:18 -07:00
mikecarper
f01970058d
feat: add capability-aware firmware build profiles
2026-08-25 20:07:09 -07:00
mikecarper
9d57a3a4f8
feat: complete Cascade Indicator companion support
...
Add native-resolution Indicator UI, touch navigation, SD-backed pixel and emoji fonts, LoRa radio support, dual-slot WiFi Companion provisioning, and mesh clock fallback. Harden radio recovery and build defaults, normalize ESP32 setup-AP protocols, and document/test the operator workflows.
2026-08-25 18:37:17 -07:00
mikecarper
1792acda6a
Harden external radio recovery and power limits
2026-08-25 10:27:26 -07:00
mikecarper
8b7c5fafb4
Validate companion repeater status responses
2026-08-25 10:27:04 -07:00
mikecarper
7077283e95
Make RXPS preamble adaptive for fast radio settings
2026-08-24 20:42:54 -07:00
mikecarper
4a4a795f52
Harden recoverable external radio startup
2026-08-24 16:54:41 -07:00
mikecarper
ba70c5b3c6
Harden fast RXPS timing and board behavior
2026-08-24 15:10:54 -07:00
Scott Powell
6dad3d5ab4
* companion: fix for setSpreadFactor(). "set cad ..." and "board" now implemented.
2026-08-24 20:44:17 +10:00
mikecarper
dc92ee61ef
Expand and harden full companion profiles
2026-08-24 01:57:38 -07:00
Scott Powell
845242f4aa
* prefs, custom dirty state
2026-08-24 17:22:15 +10:00
Scott Powell
5a162ff4c6
* new DynamicConfigSerializer
...
* board/variant KeyValueStore now can write to 'custom' object in Json prefs
2026-08-24 17:12:56 +10:00
mikecarper
f2d4ffbb7e
Unify full firmware profiles and add dual USB logging
2026-08-23 19:22:45 -07:00
liamcottle
7dc2d54818
add UI_NO_HIBERNATE build flag to disable hibernate screen on wio tracker l1
2026-08-24 13:45:19 +12:00
mikecarper
b699e552ec
Add secure host CLI bridge and harden OTA workflows
...
Expose the Full Companion terminal over TCP and add an authenticated, replay-resistant host command service with documented CPU temperature, reboot, and allowlisted program examples.\n\nImprove LoRa OTA diagnostics and persistent CLI handling, reduce clock correction drift to ten minutes, and make mOTA stream flush behavior an explicit transport policy with regression coverage.
2026-08-23 15:29:30 -07:00
Scott Powell
47b0b7b3b8
* T096, and Station G3: refactoring the 'FEM' prefs to variant-specific code
...
* CommonCLI: 'FEM' commands removed
* introduced static no-op attachDynamicPrefs() for all boards
2026-08-24 01:50:22 +10:00
Florent
088ae3caeb
ui: opt-out for discover screen
2026-08-23 10:42:00 -04:00
Scott Powell
e485d01dcb
support for CMD_SEND_TXT_MSG and new TXT_TYPE_CLI_COMMAND
2026-08-23 22:49:45 +10:00
Scott Powell
2c0ace2519
* new TXT_TYPE_CLI_COMMAND (3)
2026-08-23 22:04:05 +10:00
Scott Powell
52306bfe0f
legacy queueMessage() case, eg. repeater replies
2026-08-23 20:07:28 +10:00
Scott Powell
f7c568e3d9
onCommandDataRecv() use '>' prefix for CLI replies.
2026-08-23 20:03:49 +10:00
Scott Powell
21179760d3
"Unknown command" replies
2026-08-23 19:35:43 +10:00
Scott Powell
b4f7e941fa
* CommonRadioPrefs refactors done
2026-08-23 17:30:30 +10:00
Scott Powell
41588d8052
* adding new CommonRadioPrefs
...
* refactor: moving various radio CLI handling to CommonRadioPrefs
2026-08-23 14:45:15 +10:00
Kevin Le
4eae86fa09
Moved uptime to below battery icon. Shifted dots left.
2026-08-23 09:25:31 +07:00
Florent
52f0362c09
ui: repeater discover screen
2026-08-21 18:24:46 -04:00
entr0p1
e749010bbc
Duplicate MAX_CLIENTS definition
...
MAX_CLIENTS is defined in both src/helpers/ClientACL.h and examples/simple_repeater/MyMesh.h. Appears it was centralised in the former header file some time ago. Both are included in some places and, depending on which order they're in, either value can win.
This change drops the duplicate entry from the repeater firmware and bumps the central limit up to 32 (per the original repeater firmware value).
Changes:
- Remove MAX_CLIENTS from repeater MyMesh.h
- Increase MAX_CLIENTS limit in ClientACL.h to 32
2026-08-21 15:11:57 -04:00
Scott Powell
afb969ccca
* initial wiring/routing of CLI commands to companion (either via app/serial interface, or remotely via txt message)
2026-08-21 20:55:57 +10:00
mikecarper
c7bc7a0740
Compact flood filter persistence
2026-08-21 00:55:05 -07:00
agessaman
e45e977fb1
fix(examples): add MQTT teardown delay before OTA allocation
2026-08-20 21:13:58 -07:00
ripplebiz
e0031870f6
Merge pull request #3233 from entr0p1/fix/centralise-max-clients
...
Fix duplicate MAX_CLIENTS definition
2026-08-20 14:09:30 +10:00
mikecarper
671dd30769
Expand companion offline queues
2026-08-19 17:32:05 -07:00
mikecarper
3c6fee3277
Ensure full repeater packet logging
2026-08-19 16:20:24 -07:00
mikecarper
4ebbdc3d9b
Merge remote-tracking branch 'review/observer-firmware' into keymindCascade
...
# Conflicts:
# MQTT_IMPLEMENTATION.md
# examples/simple_repeater/MyMesh.cpp
# examples/simple_room_server/MyMesh.cpp
# examples/simple_sensor/SensorMesh.cpp
# src/helpers/CommonCLI.h
# src/helpers/MQTTPresets.h
# src/helpers/bridges/MQTTBridge.cpp
# src/helpers/bridges/MQTTBridge.h
# src/helpers/radiolib/CustomLLCC68Wrapper.h
# src/helpers/ui/SH1106Display.cpp
2026-08-19 13:45:47 -07:00
mikecarper
a192c1ea69
Merge remote-tracking branch 'iotthinks/PowerSaving-v17' into keymindCascade
...
# Conflicts:
# examples/companion_radio/main.cpp
# variants/heltec_v4/platformio.ini
2026-08-19 13:31:42 -07:00
mikecarper
5f0452412d
Merge remote-tracking branch 'upstream/dev' into keymindCascade
2026-08-19 13:30:32 -07:00
mikecarper
a39bbbd467
Add normalradio to common CLI
2026-08-19 12:44:49 -07:00
hansimgamr and Claude Opus 4.8
41c60da575
Show plug at >=95% instead of exactly 100%
...
Boards without a charge-complete signal only infer "full" from voltage, and
a real pack rarely reads the full BATT_MAX_MILLIVOLTS (4.2V), so the plug icon
was effectively never shown. Treat "full" as a high band (>= 95%) so the plug
appears when the battery is charged rather than requiring an exact 100%.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-08-19 12:44:41 -04:00
hansimgamr and Claude Opus 4.8
3a440ac41a
Add charging indicator to companion_radio battery icon
...
Show a small lightning-bolt icon to the left of the battery indicator on
the ui-new home screen while the device is externally powered, and a plug
icon once the battery reads full. The bolt/plug sits beside the battery so
the fill bar stays clean and uninterrupted. When a buzzer is present, the
mute icon shifts one slot further left so the two never overlap.
Charging state is derived from board.isExternalPowered(), so this works on
any board that reports external power (e.g. the nRF52 VBUS-detect path).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com >
2026-08-19 12:44:41 -04:00
Kevin Le
a3b9ad91a5
Disabled automatic light sleep for companions with USB CDC Serial
2026-08-19 19:19:16 +07:00
liamcottle
67d6d42a4c
fix for 3-byte paths passed to CMD_SEND_RAW_DATA
2026-08-19 18:59:24 +12:00
mikecarper
47993d178e
Update MeshCore features and OTA layout handling
2026-08-18 23:17:42 -07:00
Scott Powell
4b8966d4f9
WIO Tracker L1 1W variant
2026-08-19 15:29:19 +10:00
Kevin Le
61048f5868
Added missing POWERSAVING_FIRSTSLEEP_SECS for room servers
2026-08-19 10:19:05 +07:00
Huw Duddy
dab6b63567
Merge pull request #3235 from meshcore-dev/send-raw-direct-fix
...
Fix for CMD_SEND_RAW_DATA and multi-byte paths
2026-08-19 11:32:34 +10:00
mikecarper
0c4619bcc3
Expose Companion WiFi and radio power controls
2026-08-18 16:51:59 -07:00
mikecarper
818f610ba3
Fix Cascade power saving, USB Companion, and mOTA flows
2026-08-18 14:02:10 -07:00