Crosswire crosswire-v0.15.0
·
350 commits
to firmware-base
since this release
Observer MQTT connectivity -- hardware-validated against three brokers
(CoreScope / W8OOF tcp-anon, eastme.sh wss/jwt, LetsMesh-US wss/jwt).
Added
- Owner broker registry: seed the default 6-slot broker set with an
iata=HAO
default; per-broker GTS Root R4 + ISRG Root X2 CA certificates added and
mapped, registry cert-names corrected. (#48) - Per-broker JWT identity claims
jwt_owner/jwt_email
(set mqtt.broker.<N>.jwt_owner|jwt_email), surfaced inmqtt status. (#63) - Multi-frame
mqtt statusover the BLE_syschannel: the per-slot broker
table spans multiple frames instead of truncating. (#48)
Fixed
- BLE
_syscommand channel no longer hangs whenset mqtt.broker.*runs. The
blockingesp_mqttlifecycle ops (connect / destroy) moved offloopTaskto a
dedicatedmqtt_workertask with a per-broker lock and a per-slot reconcile
flag. (#53) - wss/JWT broker authentication: send the MQTT CONNECT username
v1_<UPPERCASE pubkey>(was a null username) so eastme.sh / LetsMesh accept
the connection -- the broker verifies the token'spublicKeyclaim against it
and rejects a null username (CONNACK rc=5) even with an otherwise-valid token.
(#68)
What's Changed
- fix(#27): pio-flash firmware_dir -> repo root + --firmware-dir override by @Strycher in #28
- pio-flash artifact-flash: flash CI release artifacts through the identity gate (#29, #34) by @Strycher in #35
- fix(#33): OLED splash carries pre-release identifier (v0.14.0-rc1, not v0.14.0+0) by @Strycher in #37
- chore(#38): gitignore pycache/ by @Strycher in #40
- feat(#42): strip observer companion to minima + delete dead ring buffer by @Strycher in #50
- docs: pin Crosswire project identity (Citadel + Agent Mail keys) (#55) by @Strycher in #56
- docs(#32): position-to-map pipeline architecture draft by @Strycher in #57
- docs: MeshCore 1.16.0 base-update impact assessment (spike #54) by @Strycher in #58
- chore(#59): port /work + session-state.py compaction-recovery hook into Crosswire by @Strycher in #60
- docs(#61): correct CLAUDE.md build/flash + migration-status after meshcore-firmware retire by @Strycher in #62
- feat: observer MQTT connectivity (crosswire-v0.15.0) — #53 #48 #63 #68 by @Strycher in #72
Full Changelog: crosswire-v0.14.0-rc1...crosswire-v0.15.0