Skip to main content
Diagnostic Guide

How to Diagnose CAN Bus & Communication (U-Code) Faults

Communication codes — the U-codes — are some of the most intimidating faults on a modern vehicle, and some of the most misdiagnosed. "Lost communication with the ABS module" rarely means a dead ABS module. Modern cars network dozens of control units over a CAN bus, and when one drops off — or the whole bus falls silent — the codes cascade across every module that was talking to it. The skill is reading that pattern: figuring out whether you've lost one module or a segment of the bus, then testing power, wiring, and termination in the right order. This guide is the general method behind every U-code.

CAN Bus: Two Wires, Many Modules, 120Ω at Each End CAN-H CAN-L 120Ω 120Ω ECM ABS SRS BCM/TCM The two terminators in parallel read ~60Ω at the OBD port — the fastest health check.

What U-codes actually mean

  • U0xxx "Lost Communication With …" — a module that expected to hear from another module on the bus stopped receiving its messages. The code names the silent module, not necessarily the broken one.
  • U0001 / bus-related — high-speed CAN communication bus faults.
  • "Bus off" — a module detected so many errors it took itself off the bus to protect it.
  • U-codes with an FTB suffix — the sub-code narrows the failure mode (see what a failure type byte is).

Read the pattern: one module lost (likely that module's power, ground, or branch wiring) versus many modules lost at once (a bus-segment, gateway, power, or ground problem shared by all of them).

The diagnostic sequence

  1. Scan every module, not just the engine. Write down which modules report faults and which are completely unreachable. The list of who-can't-hear-whom points to the fault location.
  2. Check battery voltage and grounds first. Low system voltage and bad grounds set communication codes across multiple modules at once — the single most common cause. See why low voltage causes multiple DTCs.
  3. Verify power and ground at the silent module. A module with no power looks "lost" on the bus but is electrically fine. Confirm its feed and ground before touching the bus.
  4. Measure termination resistance. Two 120Ω terminators in parallel should read about 60Ω across CAN-H and CAN-L at the OBD port (key off). Outside ~54–66Ω confirms a physical bus fault — see the 60-ohm rule.
  5. Inspect the bus wiring — CAN is a twisted pair; look for opens, shorts (to each other, to power, or to ground), water intrusion, and corroded connectors at the affected branch.
  6. Isolate a module dragging the bus down. If the bus is shorted or a module has failed internally, disconnecting modules one at a time can restore communication and identify the culprit.
  7. Consider the gateway. Many vehicles route CAN through a central gateway; a gateway fault can split the network.

Common causes

  • Low voltage / bad grounds — the leading cause of multi-module U-codes, especially after a weak battery or jump start.
  • Water and corrosion in connectors or a module — a classic source of intermittent bus dropouts.
  • Damaged CAN wiring — chafed twisted pair, a pinched harness, or rodent damage.
  • A failed module shorting or flooding the bus, or losing its own power/ground.
  • For a single ABS no-response specifically, see fixing U0121 ABS no-response.

FAQ

Does a "lost communication" code mean the module is bad?

Usually not. The code names the module that went silent, but the cause is most often that module's power/ground, the bus wiring, or low system voltage — not a failed module. Confirm those before replacing anything.

What should the CAN bus resistance read?

About 60Ω across CAN-H and CAN-L at the OBD port with the key off, because the two 120Ω terminators sit in parallel. A reading near 120Ω means one terminator/branch is missing; near 0Ω means a short; well above 66Ω means an open.

Why did I get communication codes after a dead battery or jump start?

Low voltage during cranking or a jump can cause modules to miss messages and store U-codes across the network. Restore a healthy battery and charging system, clear the codes, and recheck — many will not return.

How do I find which module is causing a bus-wide fault?

After confirming power, ground, and termination, disconnect modules one at a time while watching the bus. If communication is restored when a particular module is unplugged, that module (or its branch wiring) is dragging the bus down.