docs: update Phase 26, simplify readme project status, de-emoji

This commit is contained in:
Mathieu Moran
2026-08-11 02:57:01 -04:00
parent 1487fd3478
commit f7d305a036
2 changed files with 18 additions and 99 deletions
+6 -47
View File
@@ -1,6 +1,6 @@
# yaris-obd
A Raspberry Pi 3-based OBD-II, GPS, and dashcam system for my 2013 Toyota Yaris. It reads live
A Raspberry Pi 3-based OBD-II, GPS, and dashcam system for a 2013 Toyota Yaris. Reads live
vehicle data over USB, tracks position with a SIM868 GNSS/GSM HAT, logs everything locally, and
serves a web UI over the car's own WiFi hotspot. The dashboard and pre-cached map work fully
offline, while trip data and dashcam footage sync to a self-hosted remote server whenever an
@@ -195,53 +195,12 @@ rm db/sql/quoije_Yaris2013.db
## Project status
The build is now at the endgame stage: the Pi app, remote server, and device-management/sync work
are implemented and verified on the real Pi/unraid setup. The remaining roadmap phases are the
road-test bug-fix pass (Phase 26), feature additions (Phase 27), and the low-priority Android companion (Phase 28). The owner has
already completed the Phase 25 real-vehicle test; the bugs it surfaced are tracked in
[BUGS.md](./BUGS.md).
The Pi app, remote server, and device-management/sync are all implemented and verified on real
hardware. Phase 25 (in-car road test) is complete; Phase 26 (bug fixes) is in progress with 6 of
8 resolved. Phase 27 (features) and Phase 28 (Android, low priority) follow.
- **Phases 1–23.5**: core Pi system — GPS, OBD, dashcam, trip history, web UI redesign, WiFi upgrade, cellular fallback, alerts, settings, upload
- **Phase 24**: remote web portal at `https://yaris.ceaf.dev/` — login-protected, trip history with CARTO live map, dashcam archive, delete, overview stats
- **Phase 24.5**: full code audit — 6 bugs fixed across Pi modules and server, 63 tests passing
- **Phase 24.6**: Yaris 2013 OBD compatibility hardening — `_decode_odometer` no longer kills the OBD session on unsupported PIDs, sensor globals reset on reconnect, `OBD_SKIP_VOLTAGE_CHECK` escape hatch for clone ELM327 adapters
- **Phase 24.7**: diagnostic script (`scripts/diagnose.sh`), map tile switch to CARTO, zoom limit fix
- **Phase 24.8**: deployment/readme cleanup and uplink interface consistency
- **Phases 25.5a–25.5d**: offline-first device identity sync, remote portal device settings,
Pi-side hot-reload, multi-device provisioning, one-time API key rotation/registration, local
Settings UI for remote credentials, Sync now / Test connection, GPS live-status verification,
dedicated local Status page, and status-page quick actions
- **Current known limitation**: the remote portal's device-management page is multi-device, but the
main remote overview/history/dashcam browsing views still follow one configured `DEVICE_NAME`
until a later portal-wide device selector/filter is added
**Next**: Phase 26 — road-test bug fixes (6 of 8 resolved, see [BUGS.md](./BUGS.md)
for remaining issues). Phase 27 (feature additions from FEATURES.md) and Phase 28 (Android companion app) follow after that.
Phase 14 is partially complete: the Pi's hardware watchdog is deployed and reboot-verified.
Read-only-root storage hardening is deferred until persistent storage is moved off the SD root
partition, and clean shutdown still needs delayed-power or ignition-sense hardware.
The browser-based phone relay was removed after real-world testing confirmed that mobile browsers
cannot reliably use the Pi's WiFi and cellular data simultaneously. A native Android companion is
planned later instead (Phase 28).
The local web UI includes a Settings page for safe runtime configuration: dashcam uploads,
uploaded-video retention, cellular APN fallback, optional ntfy delivery, alert thresholds, local
device identity, and remote server credentials/API key. Notification secrets remain write-only in
the browser API. When cellular is configured, small ntfy notifications use the SIM868 first and
WiFi/Ethernet only as fallback; that modem path is implemented and mock-tested but still needs
real-SIM/carrier verification.
The Pi can also join a configured phone hotspot for outbound internet when no SIM is available,
including trip synchronization and WiFi dashcam uploads, with automatic recovery to home WiFi or
the Pi-hosted local hotspot.
The Phase 25 real-vehicle compatibility test has been completed by the owner (road test). The
bugs it surfaced are tracked in [BUGS.md](./BUGS.md) and scheduled for fixing in Phase 26. The
final low-priority Android companion follows in Phase 27. Permanent installation is owner-handled
and is not a roadmap phase. Full phase history, verification notes, and current scope live in
[PLAN.md](./PLAN.md).
Full phase history and verification notes live in [PLAN.md](./PLAN.md). Open issues in
[BUGS.md](./BUGS.md). Feature requests in [FEATURES.md](./FEATURES.md).
## Diagnostics & recovery