OBD-II trouble code
U0002: High Speed CAN Communication Bus (Performance)
The powertrain backbone is still passing traffic, but the signal quality on it has degraded. This bus has a defined electrical specification you can actually measure against — 60 ohms across a terminated pair, a differential waveform with known voltages — which makes it the one network fault a scope can settle.
Quick facts
- System
- Network
- Category
- Network Communication
- Severity
- High severity
- Drivable
- No — stop driving until repaired
- Repair cost range
- $120 – $1,400
- DIY difficulty
- Shop recommended
What does U0002 mean?
High-speed CAN is the backbone the safety-critical and time-critical modules sit on: engine, transmission, brakes, stability control, restraints. It runs fast — typically 500 kilobits per second on a passenger vehicle — over a deliberately twisted pair, and it signals differentially, meaning the information lives in the difference between the two wires rather than in either one measured against ground. That design is why it is remarkably resistant to electrical noise, and it is also why a fault on it behaves the way it does.
The distinction this code draws is between a bus that has stopped and a bus that is struggling. Nothing has gone silent. Frames are still moving, modules are still responding, but the error counters that every CAN controller maintains are climbing — corrupted frames, retransmissions, occasional dropouts. CAN is engineered to absorb exactly this and keep going, escalating a misbehaving node through warning states toward a self-imposed bus-off condition only when the errors accumulate far enough. A performance code means the network is running inside that tolerance band rather than outside it, which is precisely why the car often drives fine between episodes.
What makes this bus different from every other network on the vehicle is that it comes with a specification you can hold a meter against. A properly terminated high-speed CAN segment carries a 120-ohm resistor at each physical end of the trunk, so with the ignition off and the battery disconnected, measuring across the two bus wires should return about 60 ohms — two resistors in parallel. That number is diagnostically loaded. Roughly 120 ohms says one terminator or one end of the trunk has gone missing. A reading far below 60 says something is loading the pair. An open reading says the trunk is broken between you and both ends. No other bus type on a vehicle gives you a single number that means that much, and it costs nothing to take.
The waveform is the second thing this bus lets you verify directly. At idle the pair sits at a recessive state with both lines near 2.5 volts; a dominant bit drives one line up toward roughly 3.5 volts and the other down toward roughly 1.5 volts, symmetrically about that midpoint. Asymmetry is the tell. If one line moves properly and the other does not, the fault is on that specific conductor and you have halved the harness you need to inspect. If both move but the transitions are rounded and slow, you are looking at added capacitance or resistance in the run. This is genuinely scope work — a multimeter averages away exactly the detail that matters.
One pattern follows from this bus being the highest-priority network on the vehicle. Degrade it and you do not get one complaint, you get a shotgun blast of lost-communication codes from modules all over the car, because everything important lives here. That breadth is a clue rather than a catastrophe: when a great many modules are all reporting each other missing, the trunk they share is far more likely to be the problem than any of them individually.
Common causes
- One of the two 120-ohm terminating resistors open or drifted, leaving the pair under-terminated and the signal ringing
- Twisted pair untwisted over a length during a previous repair or an accessory installation, destroying its noise rejection
- CAN-High or CAN-Low chafed to the point of intermittent contact with the body, most often where the harness crosses a moving joint
- Corroded or spread terminal in a splice pack, adding resistance that rounds off the signal edges
- A module's CAN transceiver failing and injecting corrupted frames onto the shared trunk
- Water intrusion into a connector, bridging the pair intermittently and only in wet weather
- Aftermarket device spliced into the trunk with an untwisted tail, adding a stub that reflects signal back down the bus
- Poor module ground shifting the common-mode voltage far enough to push the differential signal out of range
- Damaged bus wiring after collision repair, where the trunk was cut and rejoined without maintaining the twist
Symptoms
- Warning lights flickering on and off rather than staying lit
- A large number of lost-communication codes from many modules at once, which points at the shared trunk rather than at the modules
- Brief stalls or a momentary no-start that clears on the next attempt
- Stability control, ABS and transmission warnings appearing together, since all of them live on this bus
- Scan tool session dropping and reconnecting mid-diagnosis
- Symptoms tracking bumps, temperature or wet weather, which points at a mechanical or moisture-driven fault
- Gauges glitching momentarily and then recovering
Diagnostic steps
- 1.With the ignition off and the battery disconnected, measure resistance across the CAN pair at the diagnostic connector. About 60 ohms is a correctly terminated bus; roughly 120 means one terminator or one end of the trunk is missing; much lower means something is loading the pair; open means the trunk is broken.
- 2.Repeat that measurement while wiggling the harness. A resistance figure that jumps is a mechanical fault, and it is often the fastest way to locate one.
- 3.Put a scope on CAN-High and CAN-Low together. The pair should sit near 2.5 volts at rest and split symmetrically to roughly 3.5 and 1.5 volts on a dominant bit.
- 4.Check the symmetry specifically. If one line swings correctly and the other does not, the fault is on that conductor, which immediately halves the wiring you need to inspect.
- 5.Look at the edges as well as the levels. Rounded, slow transitions indicate added resistance or capacitance in the run rather than a break.
- 6.Read the error counters and bus-off history where the module software exposes them, and note which modules are escalating fastest — they tend to sit nearest the fault.
- 7.Inspect any point where the twisted pair has been untwisted, cut or spliced. Aftermarket installations and previous collision repairs are the usual places this has happened.
- 8.Disconnect suspected modules one at a time while watching error rates. A transceiver failing internally will show its effect on the whole bus the moment it is removed from it.
- 9.Check module grounds. A ground that has drifted moves the common-mode voltage of the pair and can push a perfectly good differential signal outside the range receivers accept.
Repair cost
$120 – $1,400
Diagnostic time is the largest single variable at $200 to $450, because catching a marginal bus generally means scope work and provoking an intermittent rather than reading a value. A chafed wire or corroded splice repaired properly, with the twist restored, is $150 to $600. A terminating resistor — which on many vehicles lives inside a module rather than as a discrete part — is $150 to $700 depending on where it is. A module with a failing transceiver is $450 to $1,100 including programming. Vehicles with several interconnected networks and long harness runs sit at the top of these figures purely because there is more of everything to test.
Estimate your repair
Run the numbers for your vehicle
Open the Repair Cost Estimator with module communication / can bus diagnosis preselected. Adjust labor rate and vehicle category to fit your situation.
DIY vs shop
Leave this one to a qualified shop. It typically involves emissions-critical components, refrigerant handling, or other work that requires manufacturer-grade tooling, training, or certification. DIY attempts often produce a more expensive problem than the original code.
Related codes
Editorial context
About This Diagnostic Information
AutoLogicTools diagnostic guides explain OBD-II trouble codes using recognized code definitions, standard automotive diagnostic principles, and practical automotive context. A trouble code records a condition detected by a control module. It does not automatically identify a failed part, and the right diagnostic procedure can vary by vehicle.
Manufacturer service information, technical service bulletins, wiring diagrams, and vehicle-specific procedures should take precedence when available.
AutoLogicTools was founded by Vincent Fisk, an automotive locksmith and shop owner in San Diego with hands-on experience in vehicle keys, immobilizer systems, electrical issues, modules, programming, and diagnostics.