L o a d i n g

OBD-II Car Dashboard

OBD-II Car Dashboard

Project

OBD-II Car Dashboard

Tech Stack

Raspberry Pi, Python, ELM327/OBD-II, Flask, React, Azure SQL

Description

I built an OBD II telemetry system that streams live car data to a Raspberry Pi dashboard and stores it in Azure SQL for analysis. The goal was to have a responsive in car view while still capturing historical data that could be explored later. I wanted a system that worked reliably on limited hardware and could handle real driving conditions, not just ideal lab tests. This meant designing for intermittent connectivity, noisy signals, and the need for safe startup and shutdown.

On the device side, I used a Raspberry Pi with Python and an ELM327 adapter to read OBD II PIDs. A lightweight UI shows live values during a drive, while a background service parses and normalizes the data. I built a simple data model so the values could be stored quickly and queried without a heavy ETL step. Uploads are buffered and retried so short network drops do not create gaps in the data. The pipeline is designed to recover gracefully without manual intervention.

I built the local dashboard as a small Flask service with a React front end, which keeps the UI lightweight while still updating live. This separation let me keep parsing logic in the background service and keep the display responsive. It also made it easy to tweak the UI without touching the data pipeline.

I focused on making the system robust. Parsing handles missing or unexpected PID values, and the software keeps running even if the adapter disconnects briefly. Logs are kept lightweight so they do not overwhelm the device, but they still surface issues when something goes wrong. I also tested the system in different driving conditions to make sure it stayed stable and the dashboard remained usable. The in car view prioritizes the most meaningful signals, keeping the display simple and readable.

The result is a dependable diagnostic platform that provides useful real time feedback and a clean historical record. It lets me explore patterns across trips without rebuilding the pipeline each time. The system is also a solid foundation for future features like alerts, predictive maintenance rules, or richer visualizations. This project gave me a practical IoT pipeline that connects real world sensors to cloud analytics in a builder friendly way.

Ask Mariojose's Assistant

Ask me about Mariojose

Try: "What does Mariojose specialize in?" or "Show me his services and recent work."