diff --git a/docs/ROADMAP.md b/docs/ROADMAP.md index 8fe8cb8..c96569a 100644 --- a/docs/ROADMAP.md +++ b/docs/ROADMAP.md @@ -1,7 +1,7 @@ --- type: plan status: active -updated: 2026-10-12 +updated: 2026-10-13 --- # Roadmap @@ -15,7 +15,8 @@ Getting the Jetson to see the hardware at all. - [x] PCAN-USB working as SocketCAN (out-of-tree `pcan.ko`, netdev build) - [x] Stable CAN names by udev: `can_pcan`, `can_onboard` — `canN` order raced at boot - [x] Z27AG OBD-port CAN measured: 500 kbps, not gatewayed, 27 periodic IDs at - ~890 frames/s; `can_pcan` comes up at 500k listen-only on boot and hot-plug + ~890 frames/s; `can_pcan` comes up at 500k on hot-plug (verified 2026-10-13; + boot not yet seen), acknowledging rather than listen-only - [x] SIM7600G-H-M.2 specified and documented - [x] SIM7600 LTE data path: QMI (self-built `qmi_wwan`), povo, metered, ranked below Ethernet/WiFi; failover tested, Tailscale stays reachable over LTE @@ -44,6 +45,10 @@ Get real Z27AG traffic onto disk before designing anything around it. - [x] `recorder` — raw CAN + GNSS sessions on the car unit (`yukart-recorder.service`): starts on traffic or `ctl start`, ends after 15 s idle, marks via `ctl mark` or the app; fsync'd every second, bounded at 50 GB, ~20 MB per hour of driving +- [ ] Off-board retention: sessions roll off the car unit once copied to dedicated + storage (halogen over tailnet/WiFi, or object storage such as S3), instead of + living on board until the cap. Not urgent: first checklist session was 6.2 MB + for 16 min, 423 GB free (2026-10-13) - [ ] `can-bridge` — listen-only, timestamped frames onto the bus - [ ] Capture drive sessions across varied conditions (idle, cold start, moving, lights/indicators/windows actuated) with a written log of what was done when @@ -61,11 +66,14 @@ mark …`, or the app's Mark button), on the same clock as the frames. - [ ] `decoder` — raw frames to named signals - [x] `obd-poller` — active OBD-II PIDs, single writer, 2026-10-12: mode 01, the nine `obd2` signals (~10 Hz fast, 1 Hz slow), only while the bus is alive; - `can_pcan` out of listen-only. Recorded beside the frames (`vehicle.ndjson`) + `can_pcan` out of listen-only. Recorded beside the frames (`vehicle.ndjson`). + **Disabled 2026-10-13:** the Z27AG doesn't answer OBD-II on CAN (likely + K-line, pin 7); kept for later active-send use - [ ] OBD-II beyond mode 01: DTC scan (modes 03/07/0A) and MUT-III `21 xx` requests, both needing multi-frame (ISO-TP) replies - [ ] First decoding captures in the car, per contracts - `docs/impl/plans/Z27AG-CAPTURES.md` + `docs/impl/plans/Z27AG-CAPTURES.md` — first checklist session 2026-10-13 + (117 marks, yukart-data `can-captures/`); jack-stands section still to do - [ ] `gnss` — position/speed, useful as ground truth for validating decoded speed OBD-II gives standardised signals quickly and is worth doing early; it also