Real-World CAN Issues & Failure Modes
The Babbling Idiot
A faulty node continuously transmitting at maximum rate, consuming all bus bandwidth. Causes: software infinite loop, CAN controller stuck in transmit, power supply glitch.
Mitigation: Gateway filtering of abnormal rates, application-level transmit watchdog, hardware Bus Guardian (used in FlexRay, not standard CAN).Bus-Off Storms
A node repeatedly cycles: Bus Off → recovery → immediate re-fault → Bus Off again. Each cycle disrupts the bus with error frames.
Fix:- Limit recovery attempts to 3–5
- Exponential backoff between attempts (100 ms, 500 ms, 2 s)
- After max retries: stay Bus Off, set DTC, wait for power cycle
- Always investigate the physical root cause
Intermittent Communication Failures
The hardest bugs to find. Common patterns:
| Symptom | Likely Cause | Diagnostic Method |
|---|---|---|
| Errors only at high temperature | Oscillator drift exceeding tolerance | Monitor TEC/REC over temperature sweep |
| Errors correlate with engine RPM | EMI from ignition coupling into CAN wires | Check wire routing; add shielding/choke |
| Errors after connector vibration | Intermittent contact in CAN connector | Wiggle test while monitoring bus |
| Errors on long messages only | Bit timing drift accumulates over frame length | Verify oscillator accuracy, sample point |
| One specific node causes errors | Faulty transceiver or incorrect bit timing | Disconnect suspect node, verify bus |
| Errors during heavy bus load | Bus load >80%, arbitration delays cause timeouts | Calculate load; reduce rates or migrate to CAN FD |
Key Concept: The most valuable debugging tool for intermittent issues is an oscilloscope triggered on CAN error frame detection. The captured waveform shows exactly what was on the bus at the moment of failure.
Ground Offset Between ECUs
ECUs grounded at different vehicle body points may have voltage differences. CAN tolerates ±2V ground offset. Beyond that, absolute voltages push past the transceiver's common-mode input range, causing bit misreads.
Diagnosis: Measure ground potential between two ECU connectors. If >1V, investigate chassis ground connections for corrosion or loose bolts.Exercise: Document the complete CAN architecture of a vehicle you work with. Include: bus count, bit rates, gateway model, termination locations, nodes per bus, NM strategy, and known issues. This becomes your personal reference and demonstrates mastery of this course.