IJ
Ivan Jovanovski
HomeProjectsLabResumeNowFuture Ideas
IJ
Ivan Jovanovski

Electrical Engineer building practical solutions in energy systems, automotive electronics, and embedded systems.

Navigation

  • Aerospace
  • Projects
  • Lab

Focus Areas

  • Energy Systems
  • Automotive Electronics

Connect

© 2025 Ivan Jovanovski. All rights reserved.

Automotive CAN-Bus Analysis & Physical Layer Debugging

CAN-busautomotiveSTM32MP1UDSdiagnosticsreverse-engineering
General

Project Overview

CAN bus analysis on live vehicles (Fiat, Renault) using STM32MP1 and SocketCAN, including UDS reverse-engineering, physical layer characterization, and multi-make diagnostics platform development.

Version:v1.0
Time:~50.0 hours
Cost:~$100
Status:complete

Materials

  • STM32MP1 Development Board × 1
  • CAN Transceiver Module × 1
  • OBD-II Connector × 1
  • Termination Resistors (120Ω) × 2

Tools

  • Oscilloscope
  • Logic Analyzer
  • SocketCAN (Linux)
  • can-utils

Build Steps

1. Physical Layer Analysis

⏱️ ~10.0h

Interfaced with live Fiat BCM using STM32MP1 and SocketCAN. Measured dominant/recessive voltage levels with oscilloscope to verify correct CAN signalling and spot wiring/termination issues.

2. UDS Reverse Engineering

⏱️ ~12.0h

Reverse-engineered proprietary UDS (Unified Diagnostic Services) frames by correlating arbitration IDs with physical vehicle stimuli (lights, locks, etc.).

3. Error Tracking

⏱️ ~8.0h

Used captured traces and error counters to track intermittent bus errors back to wiring and termination problems on the CAN harness.

4. Multi-Make Platform

⏱️ ~10.0h

Extended the analysis workflow to Renault Clio CAN network, building a multi-make diagnostics platform.

Results

Comprehensive CAN bus analysis capability for multiple vehicle makes.

  • Vehicles Analyzed: 2 makes
  • UDS Services Decoded: 15+

Safety Notes

Never modify vehicle safety systems. Work on parked vehicles only. Disconnect battery when probing unknown circuits.