Document watchdog deployment status

Co-authored-by: Copilot <[email protected]>
This commit is contained in:
Mathieu Moran
2026-08-09 17:57:26 -04:00
co-authored by Copilot
parent 3d9706b466
commit 606f67d077
+14 -1
View File
@@ -748,7 +748,7 @@ all in `modules/app_obd.py` / `modules/app_events.py`:
`active`, `/` returned HTTP 200, and the log showed four autonomous reconnect attempts with the
correct "ELM327 handshake succeeded, but the car ECU did not respond" diagnosis and no traceback.
### Phase 14: Power-loss resilience & watchdog — 🚧 PLANNED
### Phase 14: Power-loss resilience & watchdog — 🟡 PARTIAL (watchdog done; filesystem/shutdown deferred)
**New phase, not code-dependent on anything else — OS/hardware-level, can be done anytime,
ideally before the Pi lives in the car full-time.** A car cuts power abruptly at every key-off;
nothing in the project currently protects against that, and repeated unclean power loss is a
@@ -767,6 +767,19 @@ classic cause of SD card corruption on embedded Pi projects. Two complementary a
`RuntimeWatchdogSec`/`watchdog-device` support) so a fully hung app or kernel gets a hard reboot
automatically instead of sitting dead in the car until someone notices.
**Implemented 2026-08-09**:
- Added `deploy/yaris-watchdog.conf` with systemd's hardware watchdog set to 10 seconds and
`deploy/install_watchdog.sh` to install, activate, and verify it. Deployed to the Pi; confirmed
`/dev/watchdog0` is the Broadcom BCM2835 watchdog and systemd reports
`RuntimeWatchdogUSec=10s`.
- Rebooted the Pi and verified the watchdog setting persisted, systemd returned to `running`,
`yaris-obd.service` returned to `active`, and `/` returned HTTP 200 after startup.
- **Explicitly deferred by user decision**: read-only root/filesystem hardening and clean-shutdown
hardware. The current 59GB root partition fills the SD card and contains 28GB of dashcam data,
so overlay root needs a separate persistent writable storage decision first; shrinking the live
mounted root filesystem is not safe. Clean shutdown likewise needs delayed-power or
ignition-sense hardware before software can implement it.
### Phase 15: UI design-system foundation — 🚧 PLANNED
**New phase, pulled forward from the old "do the whole redesign at the end" plan.** Building the
Phase 16/17 file browsers (and later the trip-history/Pi-health/settings pages) against the