3.6 Network Communication and U-Codes

Key Takeaways

  • CAN uses a twisted pair (CAN-H, CAN-L) terminated by two 120-ohm resistors in parallel, giving 60 ohms measured across CAN-H and CAN-L with the key off.
  • At idle in the recessive state, both CAN-H and CAN-L sit near 2.5 V; during a dominant bit, CAN-H rises toward 3.5 V and CAN-L drops toward 1.5 V — the differential is the data.
  • U-codes (network DTCs) identify lost or invalid communication with a specific module. U0100 means lost communication with the ECM/PCM; U0101 means lost communication with the TCM.
  • A vehicle in bus-off enters a fail-safe where the offending node stops transmitting; the symptom is multiple modules each storing U-codes pointing AT each other.
  • Diagnosis starts with scanning every module: count which modules respond, identify which are missing, then verify 60 ohms between CAN-H and CAN-L with the key off and 2.5 V on each line with the key on.
Last updated: May 2026

Network Communication and U-Codes

The Controller Area Network (CAN) bus replaced point-to-point wiring with a shared digital backbone. A single twisted pair carries every message between every module on a high-speed CAN segment, dramatically reducing harness weight and enabling features like adaptive cruise control that depend on real-time data sharing across modules.

CAN Physical Layer

A high-speed CAN segment (ISO 11898-2, used on the OBD-II diagnostic link under ISO 15765-4) consists of:

  • Two wires, CAN-H and CAN-L, twisted together to reject electromagnetic noise.
  • Two 120-ohm termination resistors, one at each physical end of the bus, in parallel.
  • A total resistance across CAN-H and CAN-L of 60 ohms (two 120-ohm resistors in parallel) — this is the single most useful field measurement for a CAN problem.

Signal Levels

StateCAN-HCAN-LDifferential
Recessive (logical 1, idle)2.5 V2.5 V0 V
Dominant (logical 0)~3.5 V~1.5 V~2.0 V

CAN is dominant-zero: any node that wants to assert a 0 wins over any node trying to send a 1, which is how the bus arbitrates priority without a master.

CAN Message Structure

Every CAN frame contains:

  • An identifier (11-bit standard or 29-bit extended) — the message priority and content type.
  • A data field of 0-8 bytes of payload.
  • A CRC (cyclic redundancy check) — every receiver validates this; a node that detects a CRC mismatch raises an error flag.

When a node accumulates too many transmission errors, it transitions through error-active → error-passive → bus-off states. A node in bus-off is silent on the bus, which makes it look to other modules as if it has disappeared — and they will set U-codes against it.

U-Codes (Network DTCs)

The U-code family on OBD-II covers communication faults. Common generic U-codes:

CodeMeaning
U0001High-speed CAN communication bus fault
U0073Control module communication bus A off (bus-off condition)
U0100Lost communication with ECM/PCM
U0101Lost communication with TCM
U0121Lost communication with ABS control module
U0140Lost communication with body control module (BCM)
U0155Lost communication with instrument panel cluster

When reading U-codes, which module STORED the code is as important as the code itself. U0100 stored in the TCM means "the TCM cannot talk to the ECM." The fault may be in the wiring between them, in either module, or in any termination resistor or gateway that sits between them on the network.

Gateway Modules and Multiple Sub-Networks

Larger vehicles use multiple CAN buses running at different speeds:

  • High-speed CAN (500 kbps) for powertrain and chassis.
  • Mid-speed CAN (125 kbps) for chassis comfort.
  • Low-speed / single-wire CAN or LIN (33-50 kbps) for body modules.

A gateway module translates messages between buses. Many newer vehicles route diagnostic traffic from the DLC through the gateway, which is why some non-OEM scan tools cannot reach certain modules on 2020+ vehicles without enhanced credentials.

Diagnostic Approach for Network Faults

A disciplined network diagnosis follows a repeatable sequence:

  1. Topology check — Get a wiring diagram identifying every module on each bus segment.
  2. Module scan — Use the scan tool's "all modules" or "control module status" function and count which modules respond.
  3. U-code harvest — Read DTCs from every module that does respond. The pattern of U-codes points at the failing node.
  4. Termination resistance check, key off — Disconnect the battery (per OEM precaution), then measure between pin 6 (CAN-H) and pin 14 (CAN-L) at the DLC. 60 ohms is correct. 120 ohms indicates one terminator is open. Less than 60 indicates an extra short path. Near 0 indicates a wire-to-wire short.
  5. Voltage check, key on, engine off — Measure CAN-H and CAN-L to chassis ground. Both should idle near 2.5 V with the engine off. A CAN-H stuck at 0 V or 5 V (or CAN-L stuck at the same rail) is a short to ground or B+.
  6. Oscilloscope — A two-channel scope on CAN-H and CAN-L is the gold standard: healthy traffic shows mirrored, square-edged transitions between 1.5 V and 3.5 V. Drooped or rounded edges indicate excessive capacitance, often from corroded or wet connectors.

Worked Example

A vehicle is towed in with no-start. Scan-tool module scan returns ECM, BCM, and cluster, but TCM and ABS do not respond. ECM and BCM both store U0101 (Lost communication with TCM) and U0121 (Lost communication with ABS). Measurement at the DLC: 120 ohms CAN-H to CAN-L. Conclusion: one of the two 120-ohm terminators — usually the one inside the TCM or ABS module on most vehicles — is open, taking the resistor and its module out of the conversation. Repair the wiring to the affected module and re-verify 60 ohms.

Why Wiring Matters More Than Module Replacement

Network failures are usually harness, not module. Splices that corrode, twisted-pair separation due to a repair, water-saturated connectors, or aftermarket accessory taps will all degrade CAN signals. Replacing a module without first verifying clean 60-ohm termination and clean 2.5 V idle voltages will not fix the underlying problem and may set the same U-codes against the new module.

Loading diagram...
High-Speed CAN Bus with Dual 120-Ohm Termination
Test Your Knowledge

A 2018 vehicle has multiple inoperative features. A scan-tool 'all modules' check returns the ECM and BCM but the TCM, ABS, and cluster are missing. Resistance measured between pins 6 and 14 of the DLC with the battery disconnected is 120 ohms. What does this measurement indicate?

A
B
C
D
Test Your Knowledge

A vehicle stores U0100 in the TCM and U0101 in the ECM, and both modules briefly disappear from the scan tool every few seconds. CAN-H and CAN-L both idle at 2.5 V with the key on. Resistance across the bus is 60 ohms. Wiggling the powertrain harness near the firewall reproduces the loss of communication. What is the MOST appropriate next step?

A
B
C
D