From e8156bc39a584f7d93a0329ee2c19729816ce8a4 Mon Sep 17 00:00:00 2001 From: Mathieu Moran Date: Tue, 11 Aug 2026 16:32:15 -0400 Subject: [PATCH] =?UTF-8?q?docs:=20BUG-12=20closed=20=E2=80=94=20OBD=20API?= =?UTF-8?q?=20fallback=20fixes=20dashboard=20blank=20state,=20GPS=20toFixe?= =?UTF-8?q?d=20crash=20fixed?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- BUGS.md | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/BUGS.md b/BUGS.md index 3bd7e02..ced4fba 100644 --- a/BUGS.md +++ b/BUGS.md @@ -44,6 +44,21 @@ When CLOSED, move the entire entry to Resolved — don't duplicate. --- +### BUG-12 — Dashboard OBD shows "—" while Status page shows correct OBD state +- **Status**: `CLOSED` 2026-08-11 +- **Commit**: `91281b1` +- **Symptom**: Dashboard OBD card showed "—" (blank) even though the Status + page correctly reported adapter present at /dev/ttyUSB0 (disconnected from car). +- **Root cause**: Dashboard relied solely on Socket.IO `obd_status` events. If + the page loaded after the initial event fired, the card stayed at the HTML + default. Status page queried `_obd_status()` directly. +- **Fix**: Added `/api/obd/status` endpoint. Dashboard calls `refreshObdStatus()` + on load + every 15s. Socket events still update in real-time. +- **Side fix**: `renderGpsStatus()` crashed on `status.latitude.toFixed` because + the API returns lat/lon as strings — fixed with `Number()` wrapper. +- **Verification**: Dashboard shows "Disconnected" matching Status page. GPS no + longer crashes. Confirmed on live Pi 2026-08-11. + --- ## Resolved