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.
General
Version:v1.0
Time:~50.0 hours
Cost:~$100
Status:draft
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.0h2. UDS Reverse Engineering
⏱️ ~12.0hReverse-engineered proprietary UDS (Unified Diagnostic Services) frames by correlating arbitration IDs with physical vehicle stimuli (lights, locks, etc.).
3. Error Tracking
⏱️ ~8.0hUsed 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.0hExtended 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.