OBDLive
Django app that visualizes OBD-II diagnostic data and DTCs communicated through a PICAN2 board on a Raspberry Pi.
Install / Use
/learn @hoke-t/OBDLiveREADME
OBDLive
OBDLive is a tool that uses a Raspberry Pi, PICAN2 board, and OBD-II cable to interface with a vehicle's CAN bus and visualize diagnostic data in real time. The tool can visualize data such as vehicle speed, RPM, and mass air flow rate, as well as read and reset diagnostic trouble codes (DTCs).
About the Project
This repository is the culmination of my research and final product in the Independent Study Mentorship (ISM) class that I took my senior year of high school. In short, I spent the first semester researching security in general, honing in on automobile security, and ultimately learning about CAN and the OBD-II diagnostic system on modern vehicles, and I spent the second semester developing the code which is hosted in this repo along with a presentation I gave at the local school district administration building.

There are two sections to the project: the code that runs on the Raspberry Pi itself, and the client/visualizer Django app that runs on another device (a personal computer). These are located in the pi and obdlive directiories respectively.
pi
The code that runs on the Raspberry Pi is rather simple: its sole purpose is to receive OBD-II PIDs from a client and respond with the data on the vehicle's CAN bus. In order to do this, you need:
Make sure to set the expected baud rate in canup.sh. Then, simply ssh into the pi and run ./canup.sh && ./server after connecting the PICAN2 board to the OBD-II port in a vehicle.
obdlive
Once everything on the Pi is up and running, the Django app should start up with python manage.py runserver. Be sure that the device on which the Django app is running is on the same network as the Raspberry Pi. Change the IP address in obdlive/obd/obdport.py to that of the Raspberry Pi on the local network.
Dependencies
- Django (2.0.2)
- Django Channels (2.0.2)
Related Skills
node-connect
347.6kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
108.4kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
347.6kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
347.6kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
