CAN Bus: How Modules Talk to Each Other and How to Diagnose Network Faults
Why CAN Bus Exists
Before network communication, every module that needed data from another module required its own dedicated wire. The ABS module needed vehicle speed from the wheel speed sensors. The transmission control module needed engine load from the PCM. The instrument cluster needed fuel level, coolant temp, and speed from multiple sources. Each of these connections required individual wiring, adding weight, complexity, and failure points.
CAN bus eliminated this by creating a shared communication highway. Instead of individual wires carrying single signals, two wires carry all signals — encoded as digital messages that any module on the network can receive. The PCM broadcasts engine speed and load continuously. Any module that needs that data subscribes to those messages and reads them off the network. No direct wiring required between the data source and the consumer.
A modern vehicle may have multiple CAN bus networks operating at different speeds: a high-speed CAN (typically 500 kbps or 1 Mbps) for powertrain and safety systems that need fast communication, and a medium or low-speed CAN (typically 125 kbps) for body control systems where response time is less critical. These networks may interconnect through a gateway module that translates messages between them.
CAN High and CAN Low
The CAN bus uses two wires: CAN High (CANH) and CAN Low (CANL). In the resting state (the bus is idle, no message transmitting), both wires sit at approximately 2.5 volts. When a message is transmitted, the differential voltage between the two wires changes.
During a dominant bit (logic zero): CAN High rises to approximately 3.5 volts and CAN Low drops to approximately 1.5 volts. The differential voltage is 2 volts.
During a recessive bit (logic one): both wires return to 2.5 volts. The differential voltage is 0 volts.
The colors for CAN High and CAN Low vary by manufacturer. Common conventions: CAN High is often yellow or orange and CAN Low is often green or white with colored tracer. But do not rely on color alone — always confirm wire identity from the schematic, which will specifically label CANH and CANL.
Differential Signaling
The reason CAN bus uses two wires rather than one signal and a ground is noise immunity. CAN uses differential signaling: the receiver reads the difference in voltage between CANH and CANL, not the absolute voltage of either wire.
When electrical noise (from the ignition system, alternator, electric motors, radio frequency interference) affects the vehicle's wiring, it affects both CAN wires equally and simultaneously. Because the noise adds the same voltage to both wires, the differential voltage between them stays the same. The receiver, looking only at the difference, ignores the noise entirely. This is why CAN communication can work reliably in the electrically noisy environment of an automotive wiring harness.
Practical implication for diagnosis: measuring CAN High or CAN Low voltage to chassis ground on a DVOM gives you limited information. The absolute voltage of either wire can vary with harness conditions and common-mode noise. Measuring the differential voltage — CANH minus CANL — is more meaningful. On a lab scope, looking at both wires simultaneously on two channels shows you the differential behavior and confirms healthy signal swing.
Termination Resistors
At each end of a CAN bus segment, a 120-ohm termination resistor is connected between CANH and CANL. These resistors are essential for proper bus operation — they absorb reflected signal energy at the end of the electrical "transmission line" and prevent signal reflections that would corrupt communication.
The diagnostic significance: with both termination resistors in place and the network healthy, measuring resistance between CANH and CANL (with all modules powered down or disconnected from the network) gives you 60 ohms — the two 120-ohm resistors in parallel.
This 60-ohm test is a standard quick check for CAN bus health. Disconnect the OBD-II connector from the vehicle (the DLC connector provides access to the CAN bus), measure resistance between the CANH and CANL pins (typically pins 6 and 14 on a standard OBD-II connector). Should read approximately 60 ohms. Results and their meanings:
60 ohms: Both termination resistors present and the bus wires are continuous. Basic bus integrity confirmed.
120 ohms: One termination resistor missing or open. The remaining resistor reads alone. Possible causes: one terminating module not connected, a termination resistor failed open, or a break in the CAN wiring between the two terminators.
Open (infinite resistance): Both terminators missing, or the CAN wires are broken between the DLC and any terminator. Significant wiring fault.
Near zero: Short circuit between CANH and CANL. The two wires are bridged somewhere. Bus communication will be completely disrupted.
40 ohms or less: More than two termination resistors detected, or a module with a shorted CAN transceiver is adding additional resistance paths. Some modules have integrated termination — check the service manual to identify which modules carry terminators.
Network Topology and Bus Segments
CAN bus topology is a bus topology — all modules connect to the same two wires, either directly or through stub connections. The two termination resistors sit at the physical ends of the bus. Any module can be anywhere along the bus between the terminators.
Modern vehicles often have separate CAN bus segments for different systems. The powertrain CAN (high-speed) may connect the PCM, TCM, ABS module, and instrument cluster. A separate body CAN (medium-speed) may connect the BCM, HVAC module, power window modules, and door modules. A gateway module (often the BCM or a dedicated gateway) bridges the two networks, translating and routing messages between them.
Each separate network segment has its own termination resistors and its own 60-ohm test result. When diagnosing, identify which network the failing modules are on, then test that specific segment. A fault on the body CAN does not necessarily affect the powertrain CAN, and vice versa.
U-Codes: Network Fault Codes
U-codes are OBD-II fault codes in the U0xxx through U3xxx range. They indicate network communication faults — one module could not communicate with another module it expected to hear from.
U0100: Lost communication with ECM/PCM. Stored by any module that expected to receive PCM broadcast messages and did not receive them.
U0101: Lost communication with TCM. Any module that needs transmission data will set this if the TCM goes silent.
U0155: Lost communication with instrument panel cluster.
U codes set in multiple modules simultaneously, all pointing to the same missing module, strongly indicate that module is not communicating — whether because it has lost power, its CAN transceiver has failed, or it has a software fault that caused it to go offline. U codes set in only one module pointing to a different module may indicate a wiring fault between those two specific modules or a software issue with the module setting the code.
Multiple U codes across many modules, all for different missing modules, often indicates a network-wide failure — the bus itself is not functioning. This is when the 60-ohm resistance test and the CAN bus architecture become the focus of diagnosis.
Bus Dominant Faults
A bus dominant fault occurs when a node (module or transceiver) is holding one or both CAN lines at the dominant voltage level continuously, preventing any other node from transmitting. Because CAN arbitration works by allowing recessive states, a permanently dominant bus means no communication can occur.
The classic bus dominant symptom: the OBD-II scanner cannot communicate with any module in the vehicle, or the vehicle has a massive loss of communication, with nearly every system inoperative. The 60-ohm resistance test may show abnormal results — low resistance because the shorted transceiver is loading the bus lines.
Diagnosing a bus dominant fault: identify all modules on the affected CAN segment. Then remove module power supplies one at a time (pull fuses) and re-test CAN bus voltage levels or re-attempt communication after each fuse removal. When removing a module's power supply restores normal bus voltage levels or restores communication, that module is the bus dominant source. Inspect that module for water intrusion, physical damage, or connector damage before replacing it.
CAN Bus Diagnosis Step by Step
Step 1: Read all codes from all modules. Identify the pattern. Are U codes for the same module stored in many different modules? That module is likely the source. Are U codes scattered across many modules? Suspect the network itself.
Step 2: Perform the 60-ohm resistance test. Disconnect the OBD-II connector. Measure resistance between pins 6 (CANH) and 14 (CANL). Compare to expected 60 ohms. Deviations guide the next step.
Step 3: Verify the suspect module has power and ground. A module that has lost its power supply goes silent on the network, causing all other modules to set U codes for it. Before pursuing a network fault, confirm the silent module has correct supply voltage and a solid ground.
Step 4: Inspect the CAN wiring between suspect modules. Check for chafing, corrosion at connectors along the CAN circuit path, rodent damage, and prior repair damage. A broken CANH or CANL wire anywhere in the bus run disrupts the entire segment from that break forward.
Step 5: Lab scope the CAN bus. If a scope is available, connect to CANH and CANL at the DLC and capture live data with modules communicating. Healthy CAN signals show sharp digital transitions, symmetrical waveforms on both channels (one rising while the other falls), and equal amplitude. Degraded signals show noise, rounded transitions, or asymmetrical amplitude — pointing to wiring resistance or termination problems.
Frequently Asked Questions
What is CAN bus?
CAN bus (Controller Area Network) is a two-wire communication network that allows modules in a vehicle to exchange data with each other without individual point-to-point wiring. All modules on the network share the same two wires and can send and receive messages from any other module on the bus.
What resistance should I measure across a CAN bus?
A healthy CAN bus measures approximately 60 ohms between CAN High and CAN Low. This is the result of two 120-ohm termination resistors wired in parallel. Any significantly different reading indicates a missing termination resistor, a short between the wires, or a wiring fault.
What are U-codes?
U-codes are network communication fault codes indicating that one module lost communication with another. U0100 means loss of communication with the PCM. U0155 means loss of communication with the instrument panel cluster.
Can a single module failure take down the whole CAN network?
Yes. A module with a shorted CAN transceiver can hold the CAN bus lines at incorrect voltages, preventing all other modules from communicating. Identifying and removing the offending module's power supply can restore network communication to the remaining modules.
Related Articles
How Modules Control Circuits: Ground-Side Switching and PWM
Modern vehicle circuits are controlled by modules, not simple switches. Learn how BCM and PCM ground-side switching works, PWM signals, and how to read these circuits.
Technical TrainingModule Circuit Control: Ground-Side Switching, Pull-Ups, and Output Testing
Learn how BCM and PCM modules control automotive circuits through ground-side switching — pull-up resistors, commanding ON vs OFF, and how to test module outputs.
Technical Training5-Volt Reference Circuits and Pulse Width Modulation Explained
Learn how 5-volt reference circuits power sensors like TPS and MAP, what happens when the 5V ref fails, and how PWM controls variable outputs in modern vehicles.
Disclaimer: This article is for educational and informational purposes only. Technical specifications, diagnostic procedures, and repair strategies vary by manufacturer, model year, and application — always verify against OEM service information before performing repairs. Financial, health, and career information is general guidance and not a substitute for professional advice from a licensed financial advisor, medical professional, or attorney. APEX Tech Nation and A.W.C. Consulting LLC are not liable for errors or for any outcomes resulting from the use of this content.