Firmware v20260603.123327
·
69 commits
to master
since this release
(Re-Released because of native linux bugfixes)
New
- Room Server (BBS) role (no auto-build, no repeater function)
- GAT562 30S Mesh Kit board support (nRF52840 + SX1262, RAK4631 core, 30 dBm PA) — one image for both the full kit and the screenless solar repeater.
- Production is now the default build — no more prod.conf; debug.conf is the opt-in for logging.
- USB companion decoupled from logging — CDC ACM transport now compiles independently of CONFIG_LOG. (companions are USB+BLE hybrid from now, only one type can be connected at a time)
- Linux native target — built and shipped as executables (companion + repeater).
- Battery reading should be more precise with board specific curve support and a standard lipo curve for devices that does not have any data on the internet about it's curve
Bug Fixes
- USB cable-yank no longer strands the companion on USB and blocks BLE until reboot.
- BLE/USB transport handoff reworked to first-come-first-served, made thread-safe.
- Zero-delay direct/zero-hop sends over BLE/USB no longer stall.
- Channel reply from the Unread screen now sends instead of silently failing.
- Repeater anon reply with a malformed return path now floods (safe fallback) instead of emitting a corrupt direct packet.
- Header-error frames now counted as receive errors (and no more zombie packet receptions triggered)
- Airtime/LDRO estimate fixed to track the driver across every SF/BW.
- RNG seed derivation hardened against hash failure.
Internals
- Crypto: orlp/ed25519 → Monocypher 4.0.2 — audited, single-file. Existing identities load/sign/verify unchanged — no re-key, no migration, full wire compatibility.
- Bumped west / pinned Zephyr tree.
- Synced with vanilla MeshCore dev.
- Split RepeaterMesh into Uplink + RegionCLI; deduped app-layer response/telemetry/JSON builders.
- Simplified the packet manager, dispatcher, and radio config paths.