01 Acid Alchamy · Garage Division
Two cars, forty years apart, and everything learned keeping them alive. Factory data pulled from the source, harnesses catalogued down to the part number, and the tools built along the way — documented properly instead of scattered across six folders.
02 Pick a platform
A 240 and a P3 share a badge and almost nothing else. One is switches and analogue signals; the other is a network of modules that argue with each other. The data, the tooling and the repair approach split cleanly down that line — so the site does too.
1974–1993. No data bus, no modules to interrogate, nothing to decode — every reading comes off a real sensor or a switch. Which makes it the perfect car to build a dashboard for from absolute zero.
2007–2016 — S60, V60, XC60, S80, V70, XC70. Dense module networks, deep factory configuration, and far more capability built into the car than any single trim was allowed to use. The fun is in finding out what it already knows how to do.
03 The garage
The daily. Drive-E, eight speeds, and a wiring harness that needs love.
| Platform | P3 (S60 II, 2011–) |
| VIDA model | S60 (11-), 2015A |
| Engine | B4204T11 — 2.0 GTDi Drive-E, 4-cyl turbo |
| Transmission | TG-81SC — Aisin 8-speed automatic |
| Steering | L.H.D |
| Market | US |
The brick. No factory CAN bus, so we built the dash from scratch.
| Platform | 240 series (RWD, 1974–1993) |
| Body | 244 four-door saloon |
| Electrics | Pre-CAN — every signal is analogue or a switch |
| Project | Project Gothenburg — Pi 5 digital cluster |
04 Selected work
Keeping old cars running turns into software surprisingly fast. Some of this is for the cars, some of it is for the data behind the cars, and one of them is a tool that makes walking a junkyard feel like cheating.
A modern Volvo-style digital driver display for a 1987 244 DL — a Raspberry Pi 5 driving a 12.3″ 1920×720 panel inside a 3D-printed cluster shell. The 240 has no factory CAN bus, so every r…
Several harnesses on the S60 are frayed. Rather than guess at part numbers from forum posts, the whole harness tree was pulled straight out of the factory parts catalogue and scoped to this…
Custom firmware on a Freematics ONE+ streams OBD-II parameters, GNSS position and IMU motion off the S60 over WiFi into a private dashboard. Getting the GNSS receiver to talk took a hardwar…
Volvo's dealer workshop system stores its entire service library in a SQL database. Reading it directly instead of clicking through the application turned a three-and-a-half-minute lookup i…
The parts catalogue's exploded diagrams are stored in a binary vector format that no standard tool would open — and the reason why turned out to be a trap: the files claim to be vector grap…
A private junkyard cross-referencing engine. Point it at a part and it works out every other vehicle that part was fitted to — so a trip to the yard stops being a guessing game. It reads th…
05 Documentation
Repair guides, extraction methods, and data kits — the parts of this that are worth keeping. Some of it is ours to give away freely. The factory-derived material is shown to signed-in accounts, because it isn’t ours to publish.
06 Latest
Volvo World goes live
Split the Volvo work out of the main site into its own hub. Two platform doors (240 and P3), the harness catalog, the VIDA desk, guides, projects and a links shelf — one place instead of six.
S60 harness catalog extracted
Pulled the complete wiring-harness tree for the S60 out of the factory parts catalogue and scoped it to this exact car. 269 distinct part numbers across 51 catalogue sections, with every applicability note decoded — chassis breaks, steering hand, engine list and option splits.
Parts catalogue opened up
Worked out how the parts catalogue stores its component tree, so part numbers can be pulled for a specific vehicle by query instead of by clicking. The applicability notes — the small print that decides whether a part fits your car — turned out to be the valuable half.
Exploded plates decoded
The catalogue's exploded diagrams are stored in a format no standard tool will open. Solved it: the files present as vector graphics but the picture is a single raster tile inside. Decode the grid wrong and you get convincing noise; find the tile boundary and you get a perfect diagram.