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 `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. 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, **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; 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 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 `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. 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 ### Phase 15: UI design-system foundation — 🚧 PLANNED
**New phase, pulled forward from the old "do the whole redesign at the end" plan.** Building the **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 Phase 16/17 file browsers (and later the trip-history/Pi-health/settings pages) against the