Mathieu Moran
5a5df2b323
feat: APK distribution pipeline — server hosting + Pi auto-update + /app routes
2026-08-15 20:52:38 -04:00
Mathieu Moran
5039b90bc6
feat(android): release signing + R8-verified signed APK (Phase 28.8)
2026-08-15 20:44:45 -04:00
Mathieu Moran
ce7c7c63b4
docs: note system back handling in trip replay
2026-08-15 20:38:32 -04:00
Mathieu Moran
699ce16dab
feat(android): UI redesign — light web-matching theme, dark top bar + bottom nav (Phase 28.7)
2026-08-15 20:18:53 -04:00
Mathieu Moran
0cb89596b0
feat(android): remote portal access — login, stats, trips, dashcam (Phase 28.6)
2026-08-15 20:11:26 -04:00
Mathieu Moran
a40fced666
feat(android): trip history list + route replay map (Phase 28.5)
2026-08-15 19:51:06 -04:00
Mathieu Moran
cadde5aeee
feat(android): live dashboard screen (Phase 28.4)
2026-08-15 19:40:47 -04:00
Mathieu Moran
b6f8416b5c
feat(android): upload all + per-file retry (Phase 28.3 complete)
2026-08-15 19:32:05 -04:00
Mathieu Moran
bb7623211e
docs: add DS3231 RTC to Hardware section (BUG-18)
2026-08-15 18:46:51 -04:00
Mathieu Moran
7a9be9d63f
docs: BUG-25 security hardening + Phase 9.5 notes
2026-08-15 18:29:35 -04:00
Mathieu Moran
bfc5ee1615
docs: add BUG-24 (OBD stall reconnect) + GPS replay jitter fix notes
2026-08-15 17:48:23 -04:00
Mathieu Moran
ff49609f2a
docs: note Pi checkbox batch trip delete in Phase 29
2026-08-15 16:56:28 -04:00
Mathieu Moran
c9d36cca33
docs: close BUG-23 + record fix in Phase 29
...
Move BUG-23 to Resolved with commit 78aea2d and verification (Pi trips
57 -> 49 after rebuild). Add matching entry to PLAN.md Phase 29.
2026-08-15 16:08:29 -04:00
Mathieu Moran
90cfd7bd04
docs: close BUG-22 (smoothed GPS max verified)
2026-08-14 23:04:42 -04:00
Mathieu Moran
d9314969d8
fix: BUG-22 include GPS-derived speeds in trip max (Pi + server)
2026-08-14 22:56:37 -04:00
Mathieu Moran
7c8f27b84d
docs: close BUG-21 (GPS-speed fallback verified)
2026-08-14 22:37:21 -04:00
Mathieu Moran
2fee2de357
fix: BUG-21 GPS-speed fallback in server route replay
2026-08-14 22:34:29 -04:00
Mathieu Moran
0fa6cc4988
docs: add BUG-21 — OBD speed dropout mid-drive, GPS-only replay
2026-08-14 22:22:16 -04:00
Mathieu Moran
9af71e2395
docs: close BUG-20 (trip IDs renumbered 1..10, sequence clamped)
2026-08-14 22:05:09 -04:00
Mathieu Moran
01c7fdf0c4
fix: BUG-20 clamp trips sequence after recompute + renumber migration
2026-08-14 21:45:26 -04:00
Mathieu Moran
25f57603c6
feat: FEAT-14 dual T3U — wlan2 uplink, wlan1 AP, onboard wlan0 fallback
2026-08-14 21:32:30 -04:00
Mathieu Moran
c7329186f4
docs: note SIM868 RTC set via AT+CCLK (BUG-18 follow-up)
2026-08-14 19:03:09 -04:00
Mathieu Moran
bf4f3d377e
docs: close BUG-17 + BUG-18 — DS3231 RTC verified across power loss
2026-08-14 18:35:10 -04:00
Mathieu Moran
bfdd1c2285
docs: BUG-18 DS3231 installed + working (I²C 0x68), pending power-cycle test
2026-08-14 18:05:17 -04:00
Mathieu Moran
c44026e511
docs: BUG-18 plan — DS3231 (I²C) + SIM868 CR1220 RTC backup
2026-08-13 16:13:51 -04:00
Mathieu Moran
f94c50b2ee
docs: close BUG-16 (fixed + verified), update Phase 29 status
2026-08-13 15:53:52 -04:00
Mathieu Moran
2172de6055
docs: add Phase 29 — round-2 road-test bug fixes (2026-08-13)
2026-08-13 15:11:53 -04:00
Mathieu Moran
2e8e42a165
android: byte-level upload progress + debug logging; document 28.3
...
- UploadWorker: ProgressRequestBody (okio ForwardingSink) tracks real bytes
sent including already-received chunks, instead of chunk count
- Robust chunk reads (loop skip/read) + Log.d/Log.e debug logging
- DashcamViewModel: upload state/progress debug logging
- android/plan.md + PLAN.md: 28.3 marked in progress with built items
2026-08-12 19:00:00 -04:00
Mathieu Moran
e8746e5d69
docs: FEAT-03 extended — simulated odometer in trip replay + trip list
2026-08-12 17:12:45 -04:00
Mathieu Moran
14981c066b
docs: WiFi role swap + hotspot settings feature (FEAT-11)
...
- PLAN.md: Hardware section + Architecture #2/#5 updated for wlan1=AP(5GHz), wlan0=uplink
- FEATURES.md: FEAT-11 SHIPPED (hotspot SSID/password UI + 5GHz role swap)
- readme.md: hardware table + hotspot feature line updated
- deploy/readme.md: profile names/bands updated (home-wifi on wlan0, Hotspot-local 5GHz on wlan1)
2026-08-12 16:25:16 -04:00
Mathieu Moran
f4b93006e3
docs: finalize UI branding section — sidebar, logo, mobile dark theme
2026-08-12 05:39:30 -04:00
Mathieu Moran
b69ae3a229
docs: UI branding — dark sidebar + YARIS-OBD Racing Sans One logo
2026-08-12 04:33:46 -04:00
Mathieu Moran
78cd05c4cb
docs: add BUG-14 (Nominatim slowness), update PLAN.md Phase 26 (14 bugs)
...
- BUG-14: Nominatim replaced with offline reverse_geocoder — instant, no network
- PLAN.md Phase 26: 13 → 14 bugs resolved, updated result summary
2026-08-12 03:31:50 -04:00
Mathieu Moran
ad10a873b4
docs: close BUG-13, update PLAN.md Phase 26 (13 bugs resolved)
...
- BUG-13 moved from Open to Resolved with fix summary
- PLAN.md Phase 26: 12 → 13 bugs, added BUG-13 entry
- deploy memory: Unraid SSH deploy key + updated rebuild command
2026-08-12 03:08:57 -04:00
Mathieu Moran
7a6c1750c9
docs: update Phase 28.1/28.2 status in PLAN.md + android/plan.md
...
- PLAN.md: Phase 28 header now shows 28.1 ✅ , 28.2 ✅ , 28.3–28.7 pending
- PLAN.md: added 28.1 gate-pass + 28.2 dashcam browser/download summaries
- android/plan.md: 28.2 rewritten from NOT STARTED to DONE with real
implementation details (PiApi, DashcamScreen, DashcamViewModel,
WorkManager DownloadWorker, Coil thumbnails, bottom nav)
2026-08-12 02:29:22 -04:00
Mathieu Moran
e30b85d218
feat: portal-wide device selector — session-based, all pages now use selected device
...
- _portal_device_id() reads from session, falls back to DEVICE_NAME env var
- GET/POST /api/v1/portal/select-device for selector data + set
- Dropdown in server base.html topbar, JS populates from API, page reloads on change
- All portal pages (overview, trips, dashcam, DTC, device settings) now use selected device
2026-08-12 01:40:51 -04:00
Mathieu Moran
13cb8b4361
docs: Phase 27 DONE (3 shipped) — odometer sync, trip ID, hotspot docs; FEAT-08 shipped, FEAT-09 wontfix
2026-08-12 01:16:53 -04:00
Mathieu Moran
79222c8bb5
fix: disabling sync via settings page no longer returns spurious error 400
2026-08-12 00:02:54 -04:00
Mathieu Moran
0fea9718bc
fix: prevent sync from overwriting Pi odometer — odometer is Pi→Server only
2026-08-11 23:53:42 -04:00
Mathieu Moran
7de8948e08
docs: update Hardware and Architecture sections — dual-radio, GPIO power, 4G modem, phone hotspot uplink
2026-08-11 22:06:05 -04:00
Mathieu Moran
34253b3ffb
feat: manual odometer baseline — Settings field computes baseline + trip distance, Dashboard shows (manual) label
2026-08-11 18:51:11 -04:00
Mathieu Moran
887a001723
docs: Phase 27 started — 7 feature candidates ready
2026-08-11 18:40:35 -04:00
Mathieu Moran
19c538389b
docs: Phase 26 rewritten — all 12 bugs documented consistently. Phase 27/28 cleaned up.
2026-08-11 18:29:03 -04:00
Mathieu Moran
f017a301f3
docs: Phase 26 complete, Phase 27 ready — 7 feature candidates
2026-08-11 18:20:07 -04:00
Mathieu Moran
341437c2d4
docs: Phase 26 COMPLETE — BUG-02 closed, all 12 bugs resolved. GPS has 7 sats, needs clear sky for fix.
2026-08-11 18:17:31 -04:00
Mathieu Moran
0f6d9b20a2
docs: Phase 26 DONE — BUG-01 closed, all 11 bugs resolved. BUG-06/12 moved to Resolved.
2026-08-11 17:19:42 -04:00
Mathieu Moran
e54391b5c9
docs: FEAT-06/07/08/09 — trip ID column, hotspot auto-connect, predictable IP, mDNS
2026-08-11 17:17:12 -04:00
Mathieu Moran
b4d622827a
docs: revert BUG-01 — AP tested but phone-hotspot uplink not yet verified
2026-08-11 17:06:39 -04:00
Mathieu Moran
ea47cff489
docs: BUG-01 closed — tested on iOS + Android, yaris.local resolves, Phase 26 DONE
2026-08-11 17:04:20 -04:00
Mathieu Moran
675ee67260
docs: revert BUG-01 to IN PROGRESS — needs owner test before closing
2026-08-11 16:47:58 -04:00