CarWatch v0.2.0 — your car's cloud on the dashboard
Two days after launch, and everything here is proven on the real cars, not promised.
Your car's manufacturer cloud, on the dashboard
The Pi now reads your car's vendor cloud (Mercedes me first, via a Home Assistant bridge) and shows lock state, doors, windows, tire pressures, charge + range, fuel, AdBlue and odometer next to the live OBD readings — for every car on the account. One in Helsinki, one in Berlin, zero extra hardware for the remote one.
Read-only by construction: the module can only issue GETs.
Two make-safe commands that actually worked
Lock doors and close windows — the two directions that only ever make the car safer and need no security PIN. Closing the windows from the dashboard button really shut a real open window. Unlock, open, engine-start and sunroof are not disabled by a flag; they are simply not expressible in the code.
A real installer
install.sh now sets up the same eleven systemd units the reference car runs (not one), with the llama.cpp build and the 14.3 GB model download as guided steps. Plus a proper AGPL-3.0 LICENSE, and the confirmation that every line of CarWatch is Python standard library — no pip install.
CAN capture + decode tooling
A clean 29-bit CAN capture (2518 frames, zero errors) and carwatch/candecode.py to analyze it. Signal names stay candidates until a correlation drive proves them — the tool reports evidence, never invents a label.
Also
carwatch.dev is live, and Discussions is open — including how we keep the car grounded enough to be trusted.
Honestly not done yet
Naming the CAN steering byte needs a correlation drive; the Bluetooth-to-MBUX audio path is built but not yet proven on a real head unit. Those are next, not now.
Runs fully offline on a ~300 € Raspberry Pi 5. Bring your own car — the OBD basics work on anything with a cheap ELM327; only the vendor-cloud section is brand-specific, and it plugs in behind carwatch/cloudcar.py.