For car owners and DIY mechanics, understanding what’s wrong with your vehicle can often feel like deciphering a complex code. Thankfully, modern vehicles are equipped with an On-Board Diagnostics (OBD) system, specifically OBD-II in most modern cars, that can pinpoint issues through Diagnostic Trouble Codes (DTCs). When your car’s computer, the Engine Control Unit (ECU), detects a problem, it stores a DTC in its memory. By using an OBD-II scanner, you can access these codes and gain valuable insights into the nature of the problem.
These codes are not random; they follow a structured format that, once understood, can provide a general indication of the issue even before consulting a detailed chart. Let’s break down the anatomy of a DTC.
Understanding the Structure of OBD2 Trouble Codes
Each DTC is composed of five characters: a letter followed by four numbers. Each position in this sequence reveals specific information about the fault.
The Initial Letter: System Designation
The first letter of the DTC indicates which vehicle system is experiencing the problem:
- P (Powertrain): This pertains to issues within the engine, transmission, and related drivetrain components. These are the most common types of DTCs.
- B (Body): Body codes relate to components found in the car’s body, such as the airbags, power windows, electric seats, and central locking system.
- C (Chassis): Chassis codes refer to problems with the chassis system, including braking, suspension, and steering systems.
- U (Network): Network or communication codes indicate issues with the vehicle’s communication network, such as the Controller Area Network (CAN) bus, which different electronic control modules use to communicate with each other.
The First Number: Code Type
The first number that follows the letter specifies whether the code is a standardized or manufacturer-specific code:
- 0: Indicates a standardized SAE (Society of Automotive Engineers) fault code. These codes are common across all makes and models of vehicles, ensuring a level of consistency in diagnostics.
- 1: Signifies a manufacturer-specific code. These codes are defined by the vehicle manufacturer and may refer to systems or issues unique to that brand or model.
The Second Number: Subsystem Identification
The second number further categorizes the fault by identifying the specific vehicle subsystem affected. These categories are generally structured as follows:
- 0: Fuel and Air Metering and Auxiliary Emission Controls
- 1: Fuel and Air Metering
- 2: Fuel and Air Metering (Injector Circuit)
- 3: Ignition Systems or Misfires
- 4: Auxiliary Emission Controls
- 5: Vehicle Speed Control & Idle Control Systems
- 6: Computer & Output Circuit
- 7: Transmission
The Final Two Numbers: Fault Specificity
The third and fourth digits provide greater detail, pinpointing the exact nature of the fault within the identified system and subsystem. These numbers are sequential and used to differentiate between various faults within a category.
Explanation of Diagnostic Trouble Codes structure
Let’s illustrate this with an example: P0303.
- P: Powertrain fault – indicating the problem is engine or transmission related.
- 0: Standardized fault code – meaning this code is common across different vehicle manufacturers.
- 3: Ignition system or misfire – narrowing down the issue to the ignition system.
- 03: Misfire on cylinder 3 – specifying the exact problem: a misfire detected on the third cylinder.
This detailed breakdown enables mechanics and car owners to quickly narrow down potential issues and start the diagnostic process more effectively.
OBD II Trouble Code Chart: Common Examples*
While understanding the DTC structure is helpful, a comprehensive OBD II trouble code chart provides the specific meaning of each code. Here are some common examples from the P0100 to P0605 ranges, focusing on Powertrain codes:
Code | Code Identification |
---|---|
P0101 | Mass air flow (MAF) sensor circuit, range or performance problem |
P0102 | Mass air flow (MAF) sensor circuit, low input |
P0103 | Mass air flow (MAF) sensor circuit, high input |
P0106 | Manifold absolute pressure (MAP) sensor circuit, range or performance problem |
P0107 | Manifold absolute pressure (MAP) sensor circuit, low input |
P0108 | Manifold absolute pressure (MAP) sensor circuit, high input |
P0112 | Intake air temperature (IAT) circuit, low input |
P0113 | Intake air temperature (IAT) circuit, high input |
P0117 | Engine coolant temperature (ECT) circuit, low input |
P0118 | Engine coolant temperature (ECT) circuit, high input |
P0121 | Throttle position sensor (TPS) circuit, range or performance problem |
P0122 | Throttle position sensor (TPS) circuit, low input |
P0123 | Throttle position sensor (TPS) circuit, high input |
P0125 | Insufficient coolant temperature for closed loop fuel control |
P0131 | Oxygen sensor circuit, low voltage (pre-converter sensor, left bank) |
P0132 | Oxygen sensor circuit, high voltage (pre-converter sensor, left bank) |
P0133 | Oxygen sensor circuit, slow response (pre-converter sensor, left bank) |
P0134 | Oxygen sensor circuit – no activity detected (pre-converter sensor, left bank) |
P0135 | Oxygen sensor heater circuit malfunction (pre-converter sensor, left bank) |
P0137 | Oxygen sensor circuit, low voltage (post-converter sensor, left bank) |
P0138 | Oxygen sensor circuit, high voltage (post-converter sensor, left bank) |
P0140 | Oxygen sensor circuit – no activity detected (post-converter sensor, left bank) |
P0141 | Oxygen sensor heater circuit malfunction (post-converter sensor, left bank) |
P0143 | Oxygen sensor circuit, low voltage (#2 post-converter sensor, left bank) |
P0144 | Oxygen sensor circuit, high voltage (#2 post-converter sensor, left bank) |
P0146 | Oxygen sensor circuit – no activity detected (#2 post-converter sensor, left bank) |
P0147 | Oxygen sensor heater circuit malfunction (#2 post-converter sensor, left bank) |
P0151 | Oxygen sensor circuit, low voltage (pre-converter sensor, right bank) |
P0152 | Oxygen sensor circuit, high voltage (pre-converter sensor, right bank) |
P0153 | Oxygen sensor circuit, slow response (pre-converter sensor, right bank) |
P0154 | Oxygen sensor circuit – no activity detected (pre-converter sensor, right bank) |
P0155 | Oxygen sensor heater circuit malfunction (pre-converter sensor, right bank) |
P0157 | Oxygen sensor circuit, low voltage (post-converter sensor, right bank) |
P0158 | Oxygen sensor circuit, high voltage (post-converter sensor, right bank) |
P0160 | Oxygen sensor circuit – no activity detected (post-converter sensor, right bank) |
P0161 | Oxygen sensor heater circuit malfunction (post-converter sensor, right bank) |
P0171 | System too lean, left bank |
P0172 | System too rich, left bank |
P0174 | System too lean, right bank |
P0175 | System too rich, right bank |
P0300 | Engine misfire detected |
P0301 | Cylinder number 1 misfire detected |
P0302 | Cylinder number 2 misfire detected |
P0303 | Cylinder number 3 misfire detected |
P0304 | Cylinder number 4 misfire detected |
P0305 | Cylinder number 5 misfire detected |
P0306 | Cylinder number 6 misfire detected |
P0307 | Cylinder number 7 misfire detected |
P0308 | Cylinder number 8 misfire detected |
P0325 | Knock sensor circuit malfunction |
P0327 | Knock sensor circuit, low output |
P0336 | Crankshaft position sensor circuit, range or performance problem |
P0337 | Crankshaft position sensor, low output |
P0338 | Crankshaft position sensor, high output |
P0339 | Crankshaft position sensor, circuit intermittent |
P0340 | Camshaft position sensor circuit |
P0341 | Camshaft position sensor circuit, range or performance problem |
P0401 | Exhaust gas recirculation, insufficient flow detected |
P0404 | Exhaust gas recirculation circuit, range or performance problem |
P0405 | Exhaust gas recirculation sensor circuit low |
P0410 | Secondary air injection system |
P0418 | Secondary air injection pump relay control circuit |
P0420 | Catalyst system efficiency below threshold, left bank |
P0430 | Catalyst system efficiency below threshold, right bank |
P0440 | Evaporative emission control system malfunction |
P0441 | Evaporative emission control system, purge control circuit malfunction |
P0442 | Evaporative emission control system, small leak detected |
P0446 | Evaporative emission control system, vent system performance |
P0452 | Evaporative emission control system, pressure sensor low input |
P0453 | Evaporative emission control system, pressure sensor high input |
P0461 | Fuel level sensor circuit, range or performance problem |
P0462 | Fuel level sensor circuit, low input |
P0463 | Fuel level sensor circuit, high input |
P0500 | Vehicle speed sensor circuit |
P0506 | Idle control system, rpm lower than expected |
P0507 | Idle control system, rpm higher than expected |
P0601 | Powertrain Control Module, memory error |
P0602 | Powertrain Control module, programming error |
P0603 | Powertrain Control Module, memory reset error |
P0604 | Powertrain Control Module, memory error (RAM) |
P0605 | Powertrain Control Module, memory error (ROM) |
* Note that not all codes are applicable to every vehicle model. Always consult your vehicle’s repair manual for specific code details.
By understanding the structure of Obd2 Diagnostic Trouble Codes and utilizing a comprehensive code chart, both car enthusiasts and professional mechanics can efficiently diagnose vehicle problems, leading to quicker and more effective repairs. This system empowers individuals to take a proactive approach to vehicle maintenance and understand the health of their car.