Add opt-in low power Sensor dog tracking

Acquire fresh GPS and validated UTC, check an authenticated owner Companion, and apply saved lost-status cadence with bounded awake windows. Persist request tags, routes, and six-hour flood reservations; preserve the four-day cutoff across sleep and restart.

Keep Dispatcher recovery active after a failed radio wake, honor denied flood retries after lost TxDone, and qualify GPS ownership and clock corrections. Add executable regression tests and nRF52/ESP32 Sensor build jobs.

Validation: six firmware builds, 1829 native test cases, sanitized tracker/storage/GPS/sleep/recovery tests, and strict documentation build. Bluetooth Find My advertising and automatic Room mailbox polling remain separate work.
This commit is contained in:
mikecarper committed 2026-10-10 20:08:58 -07:00
1 parent 90b12f6fa3
commit 1f1a499482
43 files changed
+4684 -17

No files matched your search

+6
View File
@@ -83,6 +83,12 @@ fix, no WiFi connection, an inactive bridge, or an nRF52 bootloader without
## Companion framed CLI
GPS-equipped Sensor builds also provide the local-only
[dog tracker settings](sensor_tracker.md): `get tracker`,
`get/set tracker.owner`, `get/set tracker.mode`, `get/set tracker.interval`,
`get/set tracker.lost.interval`, `get/set tracker.path`, and `tracker check`.
They are excluded from compact STM32 defaults. LoRa CLI cannot change them.
Companion builds are not represented by the role/profile matrices below. Their
local terminal and command `0x42` (`CMD_RUN_CLI_COMMAND`) expose these settings
over the normal binary USB, BLE, or TCP connection: