U0100 Code: Lost Communication With ECM/PCM A
The U0100 code means one or more modules in the vehicle stopped receiving messages from the engine computer over the data bus. Almost always the problem is not the computer itself but its power supply, its ground or the network wiring. It is a serious code: the vehicle may not start or may stall while driving, so do not drive it until it is checked.
- Severity
- Critical
- Can I keep driving?
- No, stop and have it checked
- Estimated cost
- $50 to $1,200
- Difficulty
- Hard
- System
- Communication Network
- Applies to
- All OBD2 vehicles
Common in: Chevrolet, Fiat, Jeep, Renault
On this page
What the U0100 code means
The modules in a modern vehicle share information over the CAN bus, two twisted wires that carry high speed messages. The instrument cluster needs to know engine speed, the ABS needs to know engine load, and the transmission needs to know throttle position.
The U0100 code is stored by a module that stopped receiving messages from the engine computer. In other words, the one reporting the fault is not the computer. It is another module that misses it.
That distinction guides the diagnosis. The computer may be faulty, but it is much more common that it lost power, has a poor ground or that the network wires are damaged. When the bus goes down completely, several U codes show up at once in every module.
There is a check that organizes the diagnosis from the start: whether the scan tool manages to communicate with the engine computer or not. If it communicates without trouble, the module is alive and the code comes from a one-time interruption, typically a voltage drop during cranking. If the scan tool cannot communicate either, the problem is current and involves the power supply or the network.
That difference prevents the most expensive mistake tied to this code, which is replacing and programming a computer that was actually working fine and only lost voltage for a few milliseconds.
U0100 code symptoms
- Check engine light on together with several other lights: ABS, stability control, airbag, traction control.
- The engine does not start, or stalls suddenly while driving.
- Instrument cluster with erratic or dead gauges.
- The scan tool cannot communicate with one or more modules.
- Transmission in limp mode.
- Strange electrical behavior all over the vehicle.
- The scan tool communicates normally despite the code, if the interruption was a one-time event.
- The same codes come back after every cold start with a weak battery.
Likely causes of the U0100 code
- Discharged battery or sulfated terminals. Low voltage causes widespread communication drops and is the first cause to rule out.
- Loose or rusty engine or body grounds.
- Blown fuse or relay feeding the computer.
- CAN bus wires cut, shorted together or corroded.
- Computer connector with water in it, or pushed-back pins.
- Bus termination resistors out of range.
- A failed module that overloads the network and keeps the rest from communicating.
- Water getting into junction boxes or into the module itself.
- Failed engine computer. Possible, but the last hypothesis.
- Momentary voltage drop during cranking with an aging battery, which leaves the code with no real fault.
- Computer connector with moisture from water getting into the engine bay.
- Splices added to the bus by accessory installations.
How to diagnose the U0100 code step by step
- Check the battery and its terminals. Measure voltage at rest and during cranking. Below 9.5 volts while cranking, communication can drop with no other fault.
- Inspect and clean all the grounds at the engine, the body and the transmission.
- Verify the fuses and relays that power the computer.
- Write down every U code from every module. If several modules report mutual loss, the problem is the network and not one specific module.
- Measure the CAN bus resistance. With the battery disconnected, you should read about 60 ohms between pins 6 and 14 of the diagnostic connector. A reading of 120 means a lost termination resistor, and a very low reading means a short.
- Check the CAN signals with an oscilloscope to see whether both lines work as mirror images of each other.
- Unplug modules one at a time if you suspect one is overloading the network, and watch whether communication returns.
- Inspect the harness and connectors for moisture, corrosion or animal chewing.
- Check whether the scan tool communicates with the engine computer. If it does, the module is alive and the interruption was a one-time event.
- Measure voltage during cranking, not just at rest. A drop below 9.5 volts explains the code with no other fault.
- Inspect the computer connector for moisture, a frequent cause in engine bays with leaks.
How to fix the U0100 code
- Replace or recharge the battery and clean the terminals if the voltage is not enough.
- Clean and tighten every ground point, removing rust down to clean metal.
- Replace defective fuses and relays, and find out why they failed.
- Repair the CAN bus wiring and keep the original twist, which it needs for noise immunity.
- Dry and clean connectors with moisture, and protect them with dielectric grease.
- Replace the module that overloads the network when isolation confirms it.
- Replace and program the engine computer only after you have ruled out power, grounds and the network.
- Replace the aging battery if the voltage falls below the allowed level during cranking.
- Dry and seal the computer connector, and find the leak that let the water in.
- Remove splices added to the bus by accessory installations and see whether the code goes away.
Technical reference data
- CAN bus resistance measured between pins 6 and 14 of the OBD2 connector: about 60 ohms (two 120 ohm termination resistors in parallel).
- CAN high resting voltage: around 2.5 volts, rising to about 3.5 during transmission.
- CAN low resting voltage: around 2.5 volts, dropping to about 1.5 during transmission.
- Minimum battery voltage for stable communication: above 11 volts with the key on and above 9.5 during cranking.
- CAN wiring must keep its twist, because long untwisted splices cause errors.
- Minimum cranking voltage for stable communication: above 9.5 volts.
- Bus resistance between pins 6 and 14 of the OBD2 connector: about 60 ohms.
- If the scan tool communicates normally, the module is working and the interruption was momentary.
Brand-specific notes
When the U0100 code shows up alongside several other U codes in different modules, stop looking for a failed module and focus on power, grounds and the network. That is what solves the great majority of these cases.
Before you consider replacing a computer because of this code, check the battery and the ground points. The share of modules replaced unnecessarily because of U codes is high, and the expense is one of the biggest in diagnosis.
Questions about the U0100 code
There are no questions about this code yet. Tell us about your case: vehicle, symptoms and what you have already checked.