Case study
DIY Saab 9-3 Tachometer: decoding CAN signals for RPM and speed
DIY Saab 9-3 Tachometer investigates a 2007 Saab 9-3 CAN bus by logging traffic during controlled driving maneuvers and plotting bytes grouped by message ID. The author associates RPM with bytes 2–3 of 0x110 and vehicle speed with byte pairs in 0x280, then uses those signals for a Raspberry Pi display and gear estimate.
- Targets
- Protocol
- Category
- Independent reconstruction cases
- Relationship
- Independent reconstruction project
- Sources reviewed
- Stars
- 14
- Last commit
- 2019-10-29
- Language
- Python
GitHub data as of 2026-11-09
Requirements & limits
- Prerequisites: The documented setup uses a 2007 Saab 9-3, an Arduino with CAN shield and a Raspberry Pi.
- Limits: The author reports that some CAN signals remain undecoded.
- License: No licence file in the repository.
Cite
BibTeX
@misc{diy-saab-9-3-tachometer-case,
title = {{DIY Saab 9-3 Tachometer: decoding CAN signals for RPM and speed}},
howpublished = {\url{https://github.com/kosa215/DIY-Saab-9-3-Tachometer}},
url = {https://github.com/kosa215/DIY-Saab-9-3-Tachometer},
urldate = {2026-11-06},
note = {Awesome REA entry: \url{https://awesomerea.org/resources/diy-saab-9-3-tachometer-case/}}
}Plain text
DIY Saab 9-3 Tachometer: decoding CAN signals for RPM and speed. https://github.com/kosa215/DIY-Saab-9-3-Tachometer (accessed 2026-11-06). Awesome REA entry: https://awesomerea.org/resources/diy-saab-9-3-tachometer-case/
Useful? Star Awesome REA on GitHub2.4k
About this entry
The description was reviewed against primary sources.
Primary sources
- README.md GitHub · kosa215/DIY-Saab-9-3-Tachometer · Revision 399612a
More in Protocols
- free-outernet: reconstructing Outernet broadcast services · Case study
- MikroTik WinBox Terminal Client: implementing the terminal protocol · Case study
- pippin: a Linux client for macOS high-performance Screen Sharing · Case study
- OpenSpy Core: reconstructing GameSpy online services · Case study
- OpenSnell: reconstructing the Snell v4/v5 proxy protocol · Case study
- starlink-rs: Starlink dish gRPC definitions and client · Case study