Add real-time live gauge dashboard (--dash)
In-place updating CLI dashboard for watching data while cranking/running. Pure-ANSI (no new deps; works on Windows 10+ terminals). - Color-coded gauges (green/yellow/red) by no-start thresholds - Live min/max per gauge -> captures PEAK ICP during a crank - ASCII bars for ICP and FICM main voltage - Presets: crank (ICP/FICM/batt/RPM, fastest), vitals (default), full - Dead-PID auto-skip keeps refresh rate up when 09xx FICM PIDs no-respond - --dash-log PATH writes a CSV while you watch (streaming log preserved) - q=quit, r=reset min/max; cross-platform non-blocking key input Validated: render + decoders vs the truck's real scan bytes, and the full dashboard() loop via a mock ELM (ICP climb across the 500psi firing threshold, peak capture, battery-sag capture, CSV logging, clean exit). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016yT89n4zR4qbrySoSiEyZs
This commit is contained in:
@@ -32,6 +32,27 @@ python obd_reader.py COM5 --clear # read, then optionally clear (asks to confi
|
||||
python obd_reader.py COM5 -v # verbose: show raw ELM327 traffic
|
||||
```
|
||||
|
||||
### Live dashboard (real-time gauges)
|
||||
|
||||
Updates in place as you crank or run the engine — color-coded, with live
|
||||
min/max so a crank's **peak ICP** is captured. No extra dependencies (ANSI;
|
||||
works on any Windows 10+ terminal). `q` quits, `r` resets min/max.
|
||||
|
||||
```
|
||||
python obd_reader.py COM5 --dash # vitals preset (ICP, FICM, IPR, batt, RPM, temps)
|
||||
python obd_reader.py COM5 --dash crank # cranking preset: ICP / FICM main / batt / RPM (fastest)
|
||||
python obd_reader.py COM5 --dash full # every PID
|
||||
python obd_reader.py COM5 --dash crank --dash-log crank.csv # + write a CSV while you watch
|
||||
```
|
||||
|
||||
**No-start use:** run `--dash crank`, then crank. A healthy 6.0 builds
|
||||
**~500+ psi ICP within 1–2 s**; if ICP stalls below 500 (red), that confirms
|
||||
the high-pressure oil bleed-off. FICM Main should hold ~48V. The `--dash-log`
|
||||
CSV is your streaming log — paste it back for analysis.
|
||||
|
||||
Note: the FICM PIDs (`09xx`) are `[DOC]` (not yet confirmed on this truck); if
|
||||
they read `--`, they auto-drop after a few frames so the refresh rate stays up.
|
||||
|
||||
Or just double-click **`RUN_OBD.bat`** on Windows (auto-installs `pyserial`).
|
||||
|
||||
On the truck: plug into the OBD port under the dash, key to **RUN** (engine off is fine
|
||||
|
||||
Reference in New Issue
Block a user