docs(mqtt-auth): note old-firmware boards subscribe to vesper/{sn}/control
Broker logs after the 2026-09-30 restart show some boards (PV26B02BP01R01,
BSVSPR-26C20B-STD10R-2KCDPH) subscribing to vesper/{serial}/control rather
than control/command. The app ACL only allows publishing to control/command,
so the app can't command those boards until their firmware is updated.
Recorded so nobody widens the ACL by accident.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -146,6 +146,13 @@ When those lines stop appearing, set `MQTT_ALLOW_LEGACY_PASSWORD=false`.
|
|||||||
|
|
||||||
## Known gaps / decisions
|
## Known gaps / decisions
|
||||||
|
|
||||||
|
- **Old-firmware boards use a different command topic.** Broker logs (2026-09-30) show
|
||||||
|
some boards (e.g. `PV26B02BP01R01`, `BSVSPR-26C20B-STD10R-2KCDPH`) subscribing to
|
||||||
|
`vesper/{serial}/control`, not `vesper/{serial}/control/command`. The app ACL only
|
||||||
|
allows publishing to `control/command`, so the app cannot command those boards until
|
||||||
|
they run current firmware. (The Console's own `publish_command` has the same limitation.)
|
||||||
|
Do not widen the ACL to `control` without deciding it deliberately.
|
||||||
|
|
||||||
- **FlutterFlow writes to `user_list`.** If the app changes `user_list` directly in
|
- **FlutterFlow writes to `user_list`.** If the app changes `user_list` directly in
|
||||||
Firestore (e.g. a claim flow), it must also update `device_serials` the same way
|
Firestore (e.g. a claim flow), it must also update `device_serials` the same way
|
||||||
(ArrayUnion / ArrayRemove of the serial on the user doc). Otherwise that user
|
(ArrayUnion / ArrayRemove of the serial on the user doc). Otherwise that user
|
||||||
|
|||||||
Reference in New Issue
Block a user