OBD2 Diagnostic Guides
Everything you need to read, understand and fix your vehicle fault codes.
What is OBD2?
Introduction to the self-diagnostic system
OBD2 (On-Board Diagnostics, 2nd generation) is the universal electronic self-diagnostic standard present in all vehicles sold in the US since 1996 and in Europe since 2001. Its job is to continuously monitor the vehicle systems and alert the driver when a component operates outside normal parameters.
When the system detects an anomaly, it stores a DTC (Diagnostic Trouble Code) in the ECU memory and turns on the "Check Engine" light or MIL (Malfunction Indicator Lamp). These codes are accessible through the OBD2 port, located under the driver dashboard — usually to the left of the steering wheel.
OBD2 port
The OBD2 connector is a 16-pin trapezoidal connector standardized by SAE J1962. It is always inside the vehicle cabin, less than 60 cm from the steering wheel, and accessible without tools.
The standard defines five communication protocols. The most modern is ISO 15765-4 (CAN bus), used in practically all vehicles built since 2008 and CARWEB reference protocol.
How to use an OBD2 scanner
Steps to read fault codes correctly
- 1
Locate the OBD2 port
Look for the 16-pin connector under the dashboard, on the driver side. On most vehicles you do not need tools to reach it.
- 2
Connect the scanner
Plug the OBD2 reader into the port with the vehicle off. Bluetooth readers pair with your smartphone; built-in screen readers work standalone.
- 3
Turn the ignition on without starting
Turn the key to position II (ACC/ON) without starting the engine. This powers the vehicle electronics and allows communication with the ECU.
- 4
Read the stored codes
On the scanner, select "Read Codes". The system will show all active and pending DTCs stored in the ECU memory.
- 5
Look up each code on CARWEB
Write down the exact code (e.g. P0420) and search it to see the full description, probable causes, associated symptoms and step-by-step fixes.
- 6
Repair and verify
After the repair, clear the codes with "Clear Codes" and drive the vehicle through the recommended drive cycles. If the code does not return, the repair was successful.
Flashing Check Engine
If the Check Engine light flashes instead of staying steady, it indicates a serious active fault — usually a severe misfire that can damage the catalytic converter within minutes. Slow down and stop safely as soon as possible.
P · B · C · U prefixes
What each letter means in an OBD2 code
The first character of an OBD2 code indicates the vehicle system where the fault originated. The second character indicates whether the code is generic (0) or manufacturer-specific (1, 2, 3).
Powertrain
P0000 – P3FFF
Engine, transmission, fuel system and emission control. They make up over 80% of DTCs in everyday diagnostics.
Body
B0000 – B3FFF
Body, airbags, seat belts, automatic climate control, power windows and mirrors.
Chassis
C0000 – C3FFF
ABS, stability control (ESC/VSC), electronic power steering and active suspension. Safety-critical.
Network
U0000 – U3FFF
CAN network and communication between modules (ECU, TCM, BCM, ABS). A fault here can turn on multiple lights at once.
Generic vs. manufacturer
P0xxx = Generic SAE code, universal standard. P1xxx / P2xxx / P3xxx = Manufacturer OEM code — the same numbers can mean different things on Toyota vs. Ford vs. BMW.
Severity levels
When is it urgent and when can you wait?
Low
The vehicle can run normally. The stored code is informational or corresponds to an intermittent fault. Plan an inspection within the next few weeks to prevent the problem from escalating.
Moderate
The affected system operates below its optimal parameters. Driving with this code can degrade performance, increase fuel consumption or damage related components. Have it checked as soon as possible.
High / Critical — Do not drive
Risk of permanent damage to the engine, catalytic converter or other costly components. In some cases it involves a safety risk. Do not drive until the problem is resolved.
The 5 most common codes
The DTCs that appear most frequently in the shop
Catalyst efficiency below threshold — Bank 1
The post-catalyst oxygen sensor detects that the catalytic converter is not reducing emissions correctly. Common causes: worn catalytic converter, faulty lambda sensor or an exhaust leak.
Misfire detected — multiple cylinders
One or more cylinders are not firing correctly. Worn spark plugs, ignition coils, injectors or a compression problem. If the light flashes: stop immediately.
System too lean — Bank 1
The air/fuel mixture has too much air. A vacuum leak, contaminated MAF sensor, clogged injectors or a weak fuel pump are the most frequent causes.
Coolant temperature below thermostat threshold
The engine takes too long to reach operating temperature. Almost always caused by a faulty thermostat stuck open. It affects consumption and emissions.
Small evaporative leak detected in the EVAP system
A small leak in the fuel vapor control system. Most often: a loose gas cap or one with a worn seal. Check it before replacing costly components.
Electric and hybrid vehicles
P0A–P0D codes and high-voltage diagnostics
Electric and hybrid vehicles generate additional codes in the P0A00–P0D99 range, defined by the SAE J2012 standard. CARWEB includes all these curated codes with their specific causes and fixes.
P0A0x
Traction battery
High-voltage battery pack, cells, BMS (Battery Management System).
P0B0x
Charging system
Onboard charger (OBC), charge port, DC fast charging.
P0C0x
Electric drive motor
Drive motor, generator in hybrids, MG1/MG2 motors.
P0D0x
Inverter / Converter
Power module, DC/DC converter, inverter cooling system.
⚡ Warning — High voltage
Electric propulsion systems operate between 200 V and 800 V. Advanced diagnostics of traction batteries, inverters and motors must be performed exclusively by technicians with HV (High Voltage) certification and proper personal protective equipment (class 0 gloves, insulated tools).
Do you have a code in your vehicle?
Search the exact DTC in our database of 438+ codes or use the guided diagnosis to identify the affected system.