diff --git a/FEATURES.md b/FEATURES.md index c85d14f..09d4972 100644 --- a/FEATURES.md +++ b/FEATURES.md @@ -36,6 +36,7 @@ dedicated PLAN.md phase (or fold it into the relevant existing work) and mark it | FEAT-14 | `SHIPPED` | Second T3U to replace onboard wlan0 (dual AC radios) | Phase 29 | | FEAT-15 | `SHIPPED` | Clear DTC codes from the DTC page | Phase 29 | | FEAT-16 | `SHIPPED` | Max-speed marker on trip replay map | Phase 29 | +| FEAT-17 | `IDEA` | Android Auto media-template live telemetry (speed/RPM in now-playing) | unassigned | --- @@ -302,3 +303,30 @@ dedicated PLAN.md phase (or fold it into the relevant existing work) and mark it `max_speed_kmh`. Works identically on the Pi and the server portal (shared `history.js`). +### FEAT-17 — Android Auto media-template live telemetry (speed/RPM in now-playing) +- **Status**: `IDEA` +- **Area**: Android app (`android/`) — new AA `CarAppService` + media-template `Session` +- **Phase**: unassigned (Phase 28.x candidate) +- **Requested**: owner — wants live RPM + OBD speed visible on the portable CarPlay/Android + Auto screen, without a separate app (the screen only runs CarPlay/AA, no Android). +- **Idea**: register the yaris-obd app as an Android Auto **media** app (Fermata Auto / + OBD2AA style) and push live values into the "now playing" fields — e.g. title `87 km/h`, + subtitle `RPM 2400 · Coolant 90°C`, refreshed every 1–2 s from the Pi's `/api/obd/status` + (or a new lightweight endpoint). The phone keeps the full Compose app; the AA surface is a + separate templated screen (one APK, two surfaces). +- **Constraints / risks**: + - **No gauges in AA** — only templated text/buttons; this is a text readout, not a gauge + cluster. + - **WiFi conflict** — wireless AA occupies the phone's WiFi, so it can't also be on the Pi + hotspot. Requires **wired AA** (USB) so WiFi stays free for the Pi, or real-time OBD pushed + via the server over cellular (adds latency + load). + - **Distribution** — custom AA apps need Google Play review (unlikely to approve a gauge + app) or a whitelist patch (`aa-rs`/root/ADB); AAAD only installs its own fixed list and + Google patches these routes regularly. + - **Driving restrictions** — AA is templated and driver-safety-limited; best treated as a + parked/glance readout. +- **Outstanding considerations**: ship as an AA mode of the existing app vs a standalone build; + whether the screen supports wired AA; whether the data path should be Pi-hotspot (wired AA) + or server (cellular). + +