If your car catches fire Check Engine, and the scanner gives an error U0100 (βLoss of communication with ECM/PCM via CANβ), the problem lies in a bus fault Controller Area Network. The CAN bus is the βnervous systemβ of a modern car, connecting Engine ECU, ABS, airbags, climate control and other components into a single network. The failure of even one device or a broken wire can paralyze data exchange, leading to malfunctions of the engine, transmission or safety systems.
Unlike legacy analog connections, CAN uses differential signaling over two wires (CAN_H and CAN_L), which minimizes interference from electromagnetic interference. Data exchange speed varies from 125 kbit/s (comfortable systems) to 1 Mbit/s (critical nodes like ABS or ESP). However, even such a reliable system fails - and most often the reason for this is contact corrosion, short circuit or incorrect firmware of one of the modules.
What is a CAN bus and why is it needed in a car?
CAN (Controller Area Network) is a data exchange protocol developed by the company Bosch in the 1980s to simplify wiring in cars. Before its appearance, each sensor was connected to the control unit with a separate wire, which led to:
- π Difficulties in diagnosis β searching for a break in a harness of 50+ wires took hours.
- π° High cost - more copper, connectors and weight.
- β‘ Interference β analog signals were distorted by electromagnetic interference.
The CAN bus solved these problems by connecting all devices into one network with a common data bus. Now, for example, the coolant temperature sensor does not send information directly to ECU, and βbroadcastsβ it to the network. All interested modules (climate control, instrument panel) βlistenβ to the bus and take the necessary data. This has reduced the number of wires in a modern car from hundreds to several dozen.
It is important to understand that CAN is not only a physical bus (wires), but also exchange protocol, defining:
- π‘ Message Format β how the data is packed (identifiers, priorities).
- π Arbitration β who has the right to transfer data in case of conflict.
- β‘ Speed β from 10 kbit/s (for doors) to 1 Mbit/s (for ADAS).
If your car has a system Start-Stop or Adaptive Cruise Control, most likely, a high-speed CAN bus is used (CAN FD) with a throughput of up to 8 Mbit/s.
Physical principle of operation: how data is transmitted over wires
CAN bus uses differential pair of wires β CAN_High (CAN_H) and CAN_Low (CAN_L). At rest, the voltage on both wires is approx. 2.5 V. When transferring data:
- Logical "0" (dominant bit):
CAN_Hrises to 3.5 V, andCAN_Lgoes down to 1.5 V. - Logical "1" (recessive bit): both wires remain level 2.5 V.
This scheme allows:
- π‘οΈ Suppress interference β the differential signal is resistant to electromagnetic interference from the starter or generator.
- π Detect breaks - if one of the wires is broken, the voltage difference disappears.
- β‘ Save energy - current is consumed only during transmission.
Bus resistance between CAN_H and CAN_L must be in good condition 60 ohm (the sum of two 120 Ohm terminal resistors at the ends of the network). Deviation from this value is the first sign of a malfunction.
Why exactly 120 Ohm?
Terminal resistors are needed to match the line impedance and prevent signal reflections. The value of 120 ohms was chosen as a compromise between bus length (up to 40 m in trucks) and transmission speed. In some cars (for example, BMW E60) 100 Ohm resistors are used for high speed networks.
| Parameter | Value in a healthy CAN bus | Symptoms of a problem |
|---|---|---|
Voltage at CAN_H (ignition off) |
2.5VΒ±0.5V | 0 V or 12 V - open circuit or short circuit to ground/power |
Voltage at CAN_L (ignition off) |
2.5VΒ±0.5V | Difference from CAN_H more than 1 V - break |
Resistance between CAN_H and CAN_L |
55β65 Ohm | < 50 Ohm or > 70 Ohm - problem with terminators |
| Baud rate (for motor) | 500 kbps | Errors U0100, U0101 - speed mismatch |
Typical CAN bus faults and their symptoms
CAN bus faults manifest themselves differently depending on which node has lost communication. General signs:
- π¨ Check Engine light on without obvious reasons (for example, with working spark plugs and coils).
- π Automatic transmission malfunctions β jerks, switching delays.
- πͺ Electrical accessories fail β windows, mirrors, central locking.
- π ABS/ESP does not work β the lamps on the tidy light up.
The most common reasons:
- Broken or short circuited wires - most often in the harness under the hood or near the doors.
- Contact corrosion - in connectors ECU or fuse blocks.
- Faulty terminal resistor - for example, after unqualified repairs.
- Firmware conflict β if one of the modules is βfloodedβ with the wrong software version.
Engine won't start|Dashboard glitches|Power windows don't work|Other-->
β οΈ Attention: If after connecting a diagnostic scanner (for example, ELM327) some systems have stopped working - turn it off immediately! Cheap adapters can interfere with the CAN bus, especially on high-speed networks.
How to check the CAN bus with a multimeter: step-by-step instructions
For diagnostics, you will need a multimeter with resistance and voltage measurement mode. Procedure:
- Turn off the ignition and disconnect the negative terminal of the battery for 10 minutes (error reset).
- Find the OBD-II connector (usually under the steering wheel) and check the contacts
CAN_H(pin 6) andCAN_L(pin 14). - Measure resistance between
CAN_HandCAN_L- must be 55β65 Ohm. - Measure voltage on
CAN_HandCAN_Lrelative to the mass when the ignition is on - both should be about 2.5 V.
If the resistance is below 50 ohms or above 70 ohms:
- π§ Check terminal resistors - they may be in Engine ECU, block ABS or a separate module.
- π Inspect the wiring harnesses for melting or chafing (especially around the pedals).
Checked the resistance between CAN_H and CAN_L (55β65 Ohm)|Measured the voltage on CAN_H and CAN_L (2.5 V)|Inspected the contacts in the OBD-II connector|Checked the terminal resistors in the ECU-->
For in-depth diagnostics, you will need an oscilloscope - it will show the signal shape and help identify interference. For example, "jags" on a graph indicate short circuit, and the absence of a signal - on break.
Common CAN bus errors and their interpretation
CAN bus errors in diagnostic scanners are indicated by series codes Uxxxx. Most common:
| Error code | Description | Possible reason |
|---|---|---|
U0100 |
Lost Communication with ECM/PCM | Bus break, faulty Engine ECU |
U0101 |
Lost Communication with TCM (Transmission) | Problems in the harness Automatic transmission or control unit |
U0121 |
Lost connection with ABS | Corrosion in the unit connector ABS, break CAN_L |
U0401 |
Incorrect sensor data | Firmware conflict, one of the modules is stuck |
The peculiarity of CAN errors is that they are often "floating" β appear and disappear when scanning again. This is due to:
- π Bad contact β for example, oxidized βchipsβ under the hood.
- π§ Humidity β water in the connectors leads to short circuits.
- β‘ Network overload β if too many modules are trying to transmit data at the same time.
β οΈ Attention: If after resetting errors (for example, through Launch X431) they appear again after 5-10 seconds - the problem is definitely in the physical part of the bus (wires, resistors). If errors return after a few minutes, one of the modules is to blame (diagnostics of each unit is required separately).
CAN bus repair: what you can do yourself
Not all CAN bus malfunctions require contacting a car service center. Here's what you can try to fix it yourself:
- Cleaning contacts:
- π§Ή Disconnect the connectors ECU, block ABS and other modules.
- π§΄ Treat the contacts with a cleaner (for example, CRC Contact Cleaner).
- π§ Check if the βlegsβ in the connectors are bent.
- Checking terminal resistors:
- π Find resistors (usually in Engine ECU and block ABS).
- π Measure their resistance - it should be 120 Ohm.
- π οΈ If it breaks, replace the resistor with a similar one (power at least 0.25 W).
- Wiring repair:
- π§ Find the break point (often near the pedals or in the corrugation under the hood).
- π§΅ Strip and solder the wires, insulate with heat shrink.
- π« Do not use twists - they oxidize and create interference!
If the problem is module firmware (for example, after βfirmware for Euro-2β), you will need:
- π₯ Download the original firmware for your model (for example, from OpenECU).
- π₯οΈ Connect to the block via K-Line or J2534 (for example, an adapter OpenPort 2.0).
- β οΈ Flash only with voltage support (connect the charger!).
Never download firmware from other models - this can damage the control unit! Even if the models are similar (e.g. VW Golf and Skoda Octavia), CAN module firmware is often incompatible.
CAN bus in modern cars: trends and features
Since the 2010s, the CAN bus has evolved in several directions:
- π CAN FD (Flexible Data-Rate) - accelerated version of the protocol (up to 8 Mbit/s), used in Audi A4 B9, BMW G20 and other premium cars.
- π CAN with encryption β to protect against hacker attacks (for example, in Tesla Model 3).
- π Ethernet integration - in new models (for example, Mercedes MBUX) CAN coexists with DoIP (Diagnostics over Internet Protocol).
For owners of cars older than 2010, it is important to know:
- π§ Low speed CAN bus (125 kbit/s) is used for βcomfortβ systems (window lifters, lighting). Its break does not always lead to engine errors.
- β‘ High speed CAN bus (500 kbit/s) links critical nodes (ECU, ABS, ESP). Its failure may prevent the engine from starting.
- π‘ In some cars (for example, Toyota Prius) is used two separate CAN buses - for the hybrid system and for other components.
When diagnosing modern cars (for example, Volkswagen MQB) pay attention to:
- π Availability of several CAN buses - for example,
CAN_Drive(engine),CAN_Comfort(climate),CAN_Infotainment(multimedia). - π Gateways β special modules (for example, J533 in Audi), which connect different buses to each other.
FAQ: Frequently asked questions about the CAN bus
Is it possible to drive with a CAN bus error?
Short term - yes, but it is dangerous. For example, if it fell off ABS, the brakes will work, but without anti-lock. If the error is related to Engine ECU (U0100), the engine may go into emergency mode (limited speed, increased fuel consumption). Driving for a long time with this error will lead to:
- π₯ Engine overheating (if the fan does not work).
- π Breakdown Automatic transmission (if the control unit does not receive speed data).
- π Failure of security systems (ESP, pillows).
Recommendation: If the error appears regularly, do not delay repairs.
How to find a break in the CAN bus without an oscilloscope?
You can use the βdiagnosisβ method with a multimeter:
- Disconnect the battery.
- Disconnect the connectors of all CAN modules (ECU, ABS, airbags, etc.).
- Call
CAN_HandCAN_Lfor a break between all connectors. - If there is no connection between two modules, there is a break between them.
A visual inspection of the harnesses for:
- π₯ Melted insulation (often near the exhaust manifold).
- π Traces of rodents (in the corrugation under the hood).
- π§ Water in the connectors (for example, after washing the engine).
Can a faulty OBD-II scanner damage the CAN bus?
Yes, especially cheap adapters based on ELM327. The problems they cause:
- β‘ Short circuit - if the adapter is faulty, it may short circuit
CAN_Hto mass. - π‘ Network congestion - some scanners send too many requests, blocking data exchange.
- π§ Protocol incompatibility - the adapter may try to communicate via ISO 9141, and the car requires CAN 2.0B.
How to avoid problems:
- Use galvanically isolated adapters (e.g. VCDS HEX-NET).
- Do not leave the scanner connected while starting the engine.
- Before purchasing, check compatibility with your car model.
What to do if errors remain after repairing the CAN bus?
Possible reasons:
- Not all modules "rebooted" - Disconnect the battery for 15 minutes to reset the cache.
- Hidden errors remain - some blocks (for example, ABS) require a separate reboot through the diagnostic software.
- The problem is in the firmware β if one of the modules is frozen, it needs to be reflashed (for example, Engine ECU or comfort block).
- Gateway faulty - in a car with several tires (for example, VW Golf 7) the module may be faulty J533, connecting networks.
Diagnostics:
- Check all modules for errors with a scanner (not just the engine).
- Pay special attention to blocks that do not respond to requests.
- If errors are returned, check the power and ground of each module.
Is it possible to repair a CAN bus with a soldering iron?
Yes, but with reservations:
- β
Can be soldered:
- Breaks in the wires (use solder with rosin and heat shrink).
- Fallen contacts in connectors (if the βchipβ is not damaged).
- β Can't solder:
- Boards inside control units (risk of chip overheating).
- Wires next to ECU - It is better to use crimp connectors.
Tips:
- Use a soldering iron with a power of no more than 40 W.
- After soldering, check the resistance between
CAN_HandCAN_L- it shouldn't change. - If you soldered wires, secure them so that there is no tension.