top of page

Practical Debugging Steps for CAN Bus-Off Issues 🚗🛠️

Updated: Mar 21




If a node repeatedly enters Bus-Off Mode, follow these step-by-step debugging techniques to identify and fix the issue.



1️⃣ Check Physical Layer (Wiring & Termination) 🔌


✅ Step 1: Verify CAN Bus Termination


✔ Measure resistance between CAN_H & CAN_L with a multimeter (bus powered off).

✔ Expected value: ~60Ω (if two 120Ω resistors are correctly installed).

✔ If ~120Ω or infinite, a termination resistor is missing or disconnected.


📌 Fix:

• Ensure one 120Ω resistor at each end of the CAN network.

• Replace or reconnect the termination resistors if needed.


✅ Step 2: Check CAN_H & CAN_L Voltage Levels


✔ Use an oscilloscope or multimeter to check voltages between:

• CAN_H to GND → ~2.5V (idle) → ~3.5V (dominant bit)

• CAN_L to GND → ~2.5V (idle) → ~1.5V (dominant bit)

• CAN_H to CAN_L → ~2V (idle) → ~2.5-3V (dominant bit)


📌 Fix:

• If voltages are outside these ranges, check for short circuits, open circuits, or ground issues.

• Ensure all nodes share a common ground to avoid floating potential differences.



2️⃣ Use CAN Tools for Debugging 🛠️


✅ Step 3: Use a CAN Analyzer


✔ Connect a CAN analyzer tool (e.g., PCAN-USB, Kvaser, or Vector CANalyzer) to monitor traffic.

✔ Check for error frames & bus load.


📌 Fix:

• If the bus load is >70%, reduce the message frequency.

• Check for messages that retransmit frequently (possible source of Bus-Off).


✅ Step 4: Enable Error Counters Monitoring


✔ Read Transmit Error Counter (TEC) & Receive Error Counter (REC) using CAN diagnostic software.

✔ If TEC is increasing rapidly → the node is struggling to transmit.


📌 Fix:

• Identify and fix the reason for lost ACK (ensure other nodes are active).

• Reduce bus congestion by optimizing message priority.



3️⃣ Identify Bus Interference & Overload Issues 📡


✅ Step 5: Check for Electrical Noise & Grounding Issues


✔ Use an oscilloscope to check for unexpected spikes or noise in CAN signals.

✔ Ensure proper grounding of all devices to a single point.


📌 Fix:

• Use shielded twisted-pair cables for CAN_H & CAN_L.

• Keep CAN cables away from high-voltage lines & motors.

• Add a ferrite bead to reduce EMI (Electromagnetic Interference).


✅ Step 6: Reduce CAN Bus Load & Message Collisions


✔ If multiple nodes send high-priority messages simultaneously, lower-priority messages get delayed.

✔ This can cause retransmissions → increasing TEC → leading to Bus-Off.


📌 Fix:

• Adjust message timing to avoid simultaneous transmissions.

• Implement CAN-FD if high bandwidth is required.

• Increase bit rate (if physically possible) to reduce congestion.



4️⃣ Software & Controller-Level Debugging 🖥️


✅ Step 7: Implement Software-Based Bus-Off Recovery


✔ If Bus-Off occurs, a node can recover using software code snippet like the below:


if (CAN_STATUS == BUS_OFF) {

reset_CAN_controller(); // Disable and re-initialise CAN

wait(500ms); // Wait before rejoining

enable_CAN(); // Restart CAN communication

}


📌 Fix:

• Implement delayed reconnection to avoid infinite Bus-Off loops.


✅ Step 8: Replace Faulty CAN Transceiver


✔ If everything else checks out, a damaged CAN transceiver might be the cause.


📌 Fix:

• Replace the CAN transceiver & test again.



5️⃣ Summary of Debugging Steps 🚀


✅ Check physical wiring & termination → Measure resistance (~60Ω).

✅ Verify voltage levels → Ensure CAN_H & CAN_L voltages are correct.

✅ Use a CAN analyzer → Identify lost ACKs & high bus loads.

✅ Monitor error counters → High TEC means transmission issues.

✅ Check for noise & interference → Use shielding & proper grounding.

✅ Optimize message timing → Avoid congestion & reduce retransmissions.

✅ Implement software recovery → Reset CAN controller after Bus-Off.

✅ Replace faulty hardware → If all else fails, replace the CAN transceiver.



Comentarios


CONTACTUS

AutoEConnect Limited

Tel. +44-750 819 6789

 1 Parker Close, Rugby
Warwickshire, United Kingdom

CV21 1NY

Social Media Links
  • LinkedIn
  • Facebook
  • YouTube

TELLUS

AutoEConnect.com: Suggestions & Feedbacks help us stay motivated and to do better. We would love to hear from you.

AutoEConnect Limited: For collaborations or enquiries on our services, please connect with us using the form below.

 

Thanks for contacting us. We will get back to you shortly!

©2025  AutoEConnect.com

bottom of page