ADAS DTC Codes: C/U Code Format, Common Examples, and What to Check First

Anatomy of a 5-character ADAS diagnostic trouble code using U0235 as an example, showing the system letter, the generic-versus-manufacturer digit, the subsystem and the fault number, with the B, C, P, U prefix legend.

When a lane-keeping, pre-collision, or blind-spot warning appears, a scan tool reads a code like U0235 or C1A00 from the car’s safety modules. Unlike a familiar engine code, an ADAS fault usually points at a sensor that sees the road, so reading and clearing it is rarely the end of the job.

The five-character structure is standardized, but some code ranges have industry-defined meanings while others are controlled by the manufacturer. Knowing which kind you are reading decides whether a code-library answer is trustworthy or misleading.

Quick answer

ADAS diagnostic trouble codes use the same 5-character format as every other OBD-II code, defined by SAE J2012 and ISO 15031-6. The first letter names the system: ADAS faults are mostly C codes (chassis: radar, camera, braking) and U codes (network and lost communication). The second character helps identify the code range, though generic versus manufacturer-specific assignment is not a single universal rule across the B, C, P, and U families, so decode the full code against SAE J2012 and the maker’s service information. Reading them reliably needs an ADAS-capable scan tool on the right module, and clearing them often requires a recalibration, not just a reset.

Specifications

Position Character What it means
1 Letter B, C, P, or U System group: Body, Chassis, Powertrain, or Network
2 0, 1, 2, or 3 Identifies the code range; generic and manufacturer-controlled assignments vary by B, C, P, or U family. Decode the full code against SAE J2012 and OEM information
3 0 to 9 or A to F Part of the standardized or manufacturer-assigned fault identifier; its meaning depends on the code family
4 and 5 00 to FF The specific fault number

Disclaimer: the format follows SAE J2012 and ISO 15031-6. Generic codes share a defined meaning across brands; the exact wording and the meaning of manufacturer-specific codes vary by make, model, and software, so confirm against the OEM service information.

Professional diagnostic tablet listing stored ADAS trouble codes from the radar and camera modules such as C1A00 and U0235, callouts that an ADAS-capable scan tool reads the safety modules, not just the engine

Common ADAS DTC examples

Most people arrive with a code in hand. These are common driver-assist codes and a sensible first check. Generic U codes follow SAE J2012; the C codes shown are Toyota and Lexus examples and differ on other makes, so confirm the exact code for your year, make, and model.

Code Type Plain meaning First check Calibration likely?
U0235 Generic U (network) Lost communication with cruise control / front distance range sensor power, ground, CAN wiring, radar connector, battery voltage Not by itself
U023A Generic U (network) Lost communication with image processing / front camera module camera module, wiring, related ADAS codes Maybe, if camera replaced
U0129 Generic U (network) Lost communication with brake system control module ABS or brake module, wiring, network Not by itself
U0126 Generic U (network) Lost communication with steering angle sensor module steering angle sensor, wiring, voltage Sometimes (angle reset)
U0073 Generic U (network) Control module communication bus A off bus wiring, several modules dropping out, power Not by itself
C1A10 Toyota/Lexus (manufacturer C) Front radar sensor fault radar unit, connector, impact, mount Possible
C1A14 Toyota/Lexus (manufacturer C) Radar beam axis not adjusted calibration status after a repair Yes
C1AA9 Toyota/Lexus (manufacturer C) Front camera beam axis not adjusted windshield, camera bracket, calibration Yes
C1AA0 Toyota/Lexus (manufacturer C) Front camera blocked or obstructed clean the windshield in the camera view, weather Sometimes

If your code is a blocked or dirty sensor rather than a hard fault, start with the simple fix in our guide to a pre-collision system unavailable, clean sensor message.

How an ADAS code is built

The first letter is the system. B is Body, C is Chassis, P is Powertrain, and U is Network. ADAS sensors and the braking that acts on them sit mostly under C, while the data links between modules fall under U, so a forward-collision fault is far more likely to be a C or U code than a P code.

What the first letter tells you to check

The first letter narrows the fault to a system group before you read the rest of the code.

If the code starts with Think first
U Communication, CAN bus, power and ground, low voltage, a module offline
C Chassis and ADAS sensors: radar, camera, steering angle, braking system
B Body module: blind-spot indicators, mirrors, parking sensors, depending on the vehicle
P Usually powertrain and emissions, not the main ADAS group

Generic versus manufacturer-specific

The second character is not a simple switch. Its ownership has to be read together with the first letter. Depending on whether the code begins with B, C, P, or U, ranges containing 0, 1, 2, or 3 may be standardized or manufacturer controlled. Use the complete code and the vehicle maker’s service information rather than classifying it from the second character alone, because a generic code lookup can mislead on a manufacturer-controlled fault.

Why some ADAS codes have suffixes like -87, :00, or extra digits

The first five characters identify the main DTC family. Extra digits or a suffix, such as U0235-87, U023A:00, or C1AA900, usually come from the scan tool or OEM format and describe the failure type, status, or a subcode rather than a different fault. ISO 15031-6 allows for these failure-type bytes on extended, multi-byte codes. When you search the OEM service information, keep the full code exactly as the tool shows it, suffix included.

Why clearing is not the fix

Codes return without a root-cause repair. An ADAS code often logs a blocked or misaligned sensor, low voltage, or lost communication. Clearing it without fixing the cause, or without recalibrating the camera or radar when the OEM calibration procedure calls for it, leaves the system out of specification and the code comes back. Calibration may be required after a windshield replacement, wheel alignment, collision repair, sensor removal, ride-height changes, or other specified work, depending on the vehicle and the OEM procedure.

When not to clear the code

Do not clear an ADAS code yet if any of these apply, because the fault or a needed calibration will still be there:

  • the windshield was replaced;
  • the bumper, grille, or emblem was removed;
  • a wheel alignment was done;
  • the radar bracket or mount was touched;
  • the battery was weak and several modules logged U codes;
  • the code is permanent or current, not history or stored.
Diagnostic scanner showing a single trouble code with a status field reading Stored and freeze-frame data such as battery voltage and vehicle speed, callouts that code status can be stored, pending, or permanent and that freeze-frame shows the conditions

Stored, pending, and permanent

Status changes how you read a code. Status terminology varies by module and manufacturer. An ADAS-capable scan tool may label a fault current, active, history, stored, intermittent, or pending, and those labels are not implemented uniformly. Permanent-DTC rules mainly apply to regulated emissions faults and should not be assumed for every ADAS module. Freeze-frame or event data may be available, depending on the vehicle and module.

Safety: an active code can limit driver-assist features

If an ADAS module has an active code, features such as automatic emergency braking, adaptive cruise, lane keeping, or blind-spot warning may be limited or switched off. Do not assume the system will intervene until the code is diagnosed and the repair is verified. NHTSA describes automatic emergency braking as a system that can apply the brakes to help prevent or reduce a crash, so losing it, even briefly, changes how you should drive.

A small handheld OBD2 code reader next to a large professional ADAS diagnostic tablet, callouts that a basic reader misses many C and U codes while a pro tool reads ADAS modules and supports calibration

How to check

  1. Use an ADAS-capable scan tool. A basic OBD-II reader often shows only powertrain and generic codes and may miss the C and U codes stored in the safety modules.
  2. Read the module, not just the code. Note which module logged it, the full code, and the status, since the same number can mean different things in different modules.
  3. Capture freeze-frame data. Save freeze-frame, event, and environmental data if the module provides them. Recorded speed, voltage, temperature, or operating conditions can help reproduce the fault, but they do not by themselves identify the failed part.
  4. Look it up in OEM service information. Check manufacturer-specific codes against the maker’s data, not only a generic online database.
  5. Fix the root cause first. Clear a blockage, repair wiring, confirm battery voltage, or correct alignment before clearing the code.
  6. Recalibrate if required, then verify. If the OEM procedure requires calibration, follow its prerequisites exactly: target placement, a level floor, tire pressure, ride height, alignment, lighting, scan-tool functions, and the prescribed static or dynamic drive conditions. Confirm that calibration completes successfully, then rescan every affected module.
Technician with a diagnostic tablet beside a car with an ADAS calibration target board in front of it, callouts to fix the cause then recalibrate and to clear and verify with a road test

What goes wrong

Reading with a basic OBD-II reader. A cheap reader pulls powertrain codes and generic faults but misses many chassis and network codes in the ADAS modules, so the scan looks clean while the real fault is still stored.

Clearing without recalibration. The code clears, the warning goes off for a drive, and it returns because the camera or radar was never brought back into specification.

Trusting a generic library without checking code ownership. Generic databases may mislabel manufacturer-controlled C and U codes or omit module-specific details, sending the repair down the wrong path. Decode the complete code for the exact year, make, model, module, and software level.

Treating a U communication code as a dead sensor. Lost-communication codes often trace to wiring, a connector, low voltage, or a network fault rather than the sensor itself, so replacing the sensor wastes money.

Can a generic OBD-II reader pull ADAS codes?

Often not fully. A basic reader is built for emissions-related powertrain codes and may not reach the chassis and network modules where most ADAS faults live, or may show manufacturer-specific codes without a correct description. A scan tool with ADAS coverage for the brand reads the safety modules and supports the calibration steps.

What does a code like U0235 mean?

U0235 is commonly defined as “Lost Communication With Cruise Control Front Distance Range Sensor.” It indicates that another module stopped receiving expected messages from that sensor or module; it does not prove the sensor itself has failed. Check OEM service information for the exact module name, network diagram, diagnostic steps, and vehicle applicability before testing power, ground, connectors, wiring, network integrity, or the module. On Toyota and Lexus this often appears as a pre-collision system malfunction.

What does a C-code mean in ADAS?

A C code is a chassis code, the group that covers most ADAS hardware: the front radar, the camera, the steering angle sensor, and the braking system that acts on them. On many makes the ADAS C codes are manufacturer-specific, so read the exact code against the OEM data rather than a generic list.

Why did the ADAS code come back after clearing?

Clearing only erases the record, not the fault. If the sensor is still blocked or misaligned, the wiring or voltage is still wrong, or a required calibration was never done, the module logs the code again on the next drive. Fix the cause and recalibrate where the procedure requires it, then clear and verify.

Do ADAS codes require calibration to clear?

Sometimes. Many ADAS faults clear once the cause is fixed, but a camera or radar that was disturbed, replaced, or flagged as not aimed usually needs a static or dynamic calibration before the code stays gone. Whether calibration is required depends on the sensor, the repair, and the OEM procedure.

Why does my scan tool show U0235-87 instead of U0235?

The extra digits are a failure-type or status suffix added by the tool or OEM format, not a different code. U0235-87, for example, is the U0235 fault with a “no message received” failure type. Keep the full code, suffix included, when you look it up in the manufacturer’s service information.

Sources

More Specs guides

→ Jumper Cable Gauge Chart: What AWG You Actually Need → R-134a vs R-1234yf: Refrigerant Differences and How to Tell Which Your Car Uses → OEM ADAS Calibration Requirements: Static, Dynamic, and Scan-Only Procedures → Driver Assistance System Specs: AEB, FCW, LDW, BSW and NCAP Requirements → Wheel Stud and Wheel Bolt Size: Thread, Pitch, and Seat Type
Tyler Brandt Suspension & Performance Specialist

Track days have a way of exposing the gap between confidence and ability — his first at COTA in 2015 ended with… Full bio →