Vehicle Telemetry with Raspberry Pi & Kafka

Capturing vehicle parameters using Raspberry Pi & ELM327 with real-time anomaly detection planned using Kafka and Spark

A Raspberry Pi-powered telemetry console that connects to your car’s OBD-II port using ELM327 (or CAN Bus), captures parameters like RPM, speed, coolant temperature, and displays them in real-time on a Python-based UI.

In the future, we plan to stream data over Kafka using a 4G modem and analyze anomalies using Spark ML.


πŸš— System Architecture

The current and planned system architecture from ELM327 β†’ Raspberry Pi β†’ Kafka β†’ Spark ML model.

πŸ”§ Completed Features

  • Vehicle data captured via ELM327 (Bluetooth) or CAN bus.
  • Real-time dashboard on Raspberry Pi showing RPM & speed.
  • Python UI-based instrument console.

πŸ”¬ Planned Enhancements

  • Integrate Kafka to stream telemetry via 4G modem.
  • Use Apache Spark for real-time anomaly detection.
  • ML model to predict early signs of failure.

πŸ“· Screenshots & Demo

From left to right: OBD-II dashboard, real-time speed/RPM values, Raspberry Pi console display.

πŸ“½οΈ Demo Video


πŸ’» Source Code

πŸ”— GitHub Repository


πŸ” Technologies Used

  • Raspberry Pi (Python)
  • ELM327 / CAN Bus
  • Bluetooth communication
  • Apache Kafka (Planned)
  • Apache Spark ML (Planned)

If you’re interested in IoT meets machine learning, or automotive diagnostics β€” feel free to explore the repo, suggest enhancements, or fork it!