v1.3.1 - Optional Battery Telemetry Dashboard
v1.3.1 adds an optional battery telemetry dashboard and the supporting decode pipeline behind it.
This release introduces a new public /batteryinfo page for decoded channel-based battery reports. It charts retained battery telemetry, shows the latest decoded values per sender, and keeps the page fast by persisting decoded events in SQLite instead of rescanning the full packet table on every load.
Battery info is fully opt-in. Fresh installs keep it disabled by default, and the page stays hidden unless it is explicitly enabled and configured with a channel key. The feature also has its own retention window and channel display controls, so it can be managed independently from the main packet retention settings.
This release also moves battery decoding to the official @michaelhart/meshcore-decoder package.
Included in v1.3.1
- New optional public
/batteryinfopage - Decoded battery telemetry charts and recent decoded reports
- SQLite-backed
batteryinfo_eventspersistence with retained-packet backfill - Battery-specific environment controls:
BATTERYINFO_ENABLEDBATTERYINFO_CHANNEL_NAMEBATTERYINFO_SHOW_CHANNEL_NAMEBATTERYINFO_RETENTION_SECONDSBATTERYINFO_CHANNEL_KEY
- Default battery feature state set to off in
.env.example - Switched battery decoding to official
@michaelhart/meshcore-decoder - Added automated tests for battery decode, persistence, and disabled-route behavior
Live Example
A live example can be found at the Boston MQTT Dashboard.