What Is OBD2 and What Your Car's Diagnostic Port Can Tell You
Features

What Is OBD2 and What the Port Under Your Dash Can Tell You

Photo: Arp, Public domain, via Wikimedia Commons · Source

A 16-pin socket within reach of the driver, a standard set of fault codes and one question: what is the engine computer seeing right now?

FeaturesBy 10 min read
The short answer

OBD2 is the standardised self-diagnostic system built into modern cars. Its 16-pin port, within 2 feet of the steering wheel, lets a scan tool read fault codes such as P-codes for powertrain faults, live engine data, freeze frame snapshots and readiness checks.

In the early 1980s a car's computer could tell you something was wrong, and that was all it could tell you. A warning lamp came on, and the machine offered no clue about the cause. The socket that now sits within reach of the driver's knees exists because regulators got tired of that silence, and because of a rule that still shapes it: in the United States, the system must catch faults that could push tailpipe emissions above 150% of the standard the car was certified to.

What is OBD2?

On-board diagnostics, or OBD, is a vehicle's built-in ability to check itself and report what it finds. It gives an owner or technician a view of the status of the car's various sub-systems. OBD2, properly written OBD-II, is the second generation, and it is the one that matters on any modern car.

The difference between old and new is the difference between a smoke alarm and a fire report. Early systems would simply light a tell-tale lamp when something went wrong, with no information about the nature of the problem. Modern implementations use a standardised digital port to supply real-time data and diagnostic trouble codes, so a malfunction can be identified quickly.

The standard covers a good deal of ground. It fixes the diagnostic connector and which wire goes to which pin, the electrical protocols a car may use and the layout of messages. It also gives a list of vehicle parameters to monitor, with a way of encoding each one, and an extensible list of fault codes. With everything standardised, one tool can interrogate the computers of any vehicle.

Emissions were the driving force. Only emissions-related codes and data are required to pass through the port, but most manufacturers went further and made it the only connector through which every system on the car can be diagnosed and programmed.

Engine computerCAN bus16-pin portScan toolRequest 7DFhReplies 7E8hWithin 2 feetP0xxxP powertrainB bodyC chassisU network
A scan tool on the 16-pin port asks the engine computer for data and fault codes; the first letter of a code names the system.
Early systems lit a lamp and said nothing; OBD-II makes the car explain itself.

Where is the OBD2 port location?

The connector is a female 16-pin (2x8) plug of the J1962 type. Type A is used on 12-volt vehicles and type B on 24-volt ones. Its position is regulated: the OBD-II socket has to sit no more than 2 feet (0.61 m) from the steering wheel. A manufacturer can apply for an exemption, but even then the connector must still be somewhere within the driver's reach. The older OBD-I connector was sometimes found under the bonnet.

The pin assignments are laid out in the SAE J1962 standard, though pins it leaves unspecified are the manufacturer's to assign. One pin carries power from the car battery to the scan tool, so the tool needs no separate power source. Some technicians still connect an auxiliary supply to protect data if the car suffers an electrical failure.

How did OBD1 become OBD2?

It took about two decades, and the early steps were proprietary. Volkswagen introduced the first on-board computer system in 1968 on its fuel-injected Type 3, an entirely analog design with no diagnostic function. By 1975 Bosch and Bendix fuel injection was spreading among major manufacturers to improve exhaust emissions, and some of those systems offered rudimentary diagnostics through factory tools.

General Motors then made the early running. It introduced the first data link on its 1980 Cadillac Eldorado and Seville, with fault codes appearing on the digital readout of the climate control system. In 1981 its Computer Command Control system reached all US passenger vehicles, with a proprietary five-pin connector called ALDL that talked to the engine control module at 160 baud and reported live sensor data, component overrides and trouble codes. In 1986 an upgraded version raised the speed to 8192 baud on some models.

The first legal requirement came from California. In 1988 the California Air Resources Board demanded some basic OBD capability, such as detecting fuel metering and exhaust gas recirculation problems, on all new vehicles sold in the state. These requirements are now called OBD-I, a name applied after OBD-II appeared. The connector, its position and the data protocol were not standardised, although the Society of Automotive Engineers recommended a standard connector and set of test signals.

OBD-I was largely unsuccessful. The aim had been to push manufacturers to build emission controls that stayed effective over the vehicle's useful life, backed by annual emissions testing in California and refusal of registration for cars that failed. But because emissions diagnostic information was not reported in a standard way, getting reliable data from every vehicle was difficult, and the annual testing programme could not be implemented effectively.

Around 1994 the board issued the OBD-II specification, wanting a state-wide emissions testing programme, and required it on every car sold in California from model year 1996. The codes and connectors suggested by the engineers' society were built into it. In 1996 it became mandatory across the United States for every passenger car and light petrol truck below 8,500 lb (3,900 kg).

OBD2 vs OBD1

FeatureOBD-IOBD-II
IntroducedCalifornia, 1988Mandated in California from model year 1996, then across the United States in 1996
ConnectorMaker's own, sometimes under the bonnetStandard 16-pin J1962, within 2 feet (0.61 m) of the steering wheel
Fault codesMaker's own definitions, fewer of themStandardised, extensible list
Reading the codesOften by counting blinks of the check engine lightA scan tool on the standard port
Live dataOnly some cars, such as General Motors and some 1989-1995 Ford and Toyota/Lexus modelsStandardised parameters on any compliant car

Many OBD-I cars gave up their codes with no costly scan tool at all. Every manufacturer had its own connector, connector location, code definitions and reading procedure. A typical method was to connect certain pins of the diagnostic connector so the check engine light blinked out a two-digit number matching an error condition. Some Honda engine computers showed the code through the pattern of a few LEDs, and on a Cadillac, holding down the Off and Warmer buttons for several seconds switched the climate display into diagnostic mode.

General Motors also used a hybrid, sometimes called OBD 1.5, on some cars in 1994, 1995 and 1996. It was a partial OBD-II implementation. The 1994-1995 Corvettes, for example, had one post-catalyst oxygen sensor and a subset of the OBD-II codes, and a scan tool made for OBD 1.5 was needed to read them.

What do check engine light codes mean?

A fault code in OBD-II is a letter followed by four digits, and the letter says which part of the car is reporting. P stands for powertrain, meaning the engine and transmission. B is body, C is chassis and U is network.

European rules use the same scheme in a five-character form. The first character is the letter, and the next is a 0 when the code complies with the EOBD standard, so a standard powertrain code looks like P0xxx. The following character names the sub-system, and the last two identify the individual fault. For the powertrain, the sub-system blocks run like this:

  • P00xx: air and fuel measurement, together with extra emission equipment
  • P01xx: air and fuel measurement
  • P02xx: air and fuel measurement at the injector circuit
  • P03xx: ignition, or an engine misfire
  • P04xx: extra emissions equipment
  • P05xx: road speed and idle control
  • P06xx: the computer's output circuits
  • P07xx and P08xx: the gearbox

So a code that begins P03 points at the ignition system or a misfire, while one starting P07 points at the transmission. Not every block means the same thing on every car, though. Certain blocks carry a generic meaning on every make, but the meaning of others shifts with the manufacturer or even the model.

Inside the car's computer, each code takes two bytes. The first two bits give the category, the remaining 14 bits give the number, and the result is usually shown as five characters, such as U0158. A code is sometimes met in a four-character form, such as C158. That is simply the plain hexadecimal reading of the two bytes before the category has been decoded.

What can an OBD2 scanner read?

A scanner talks to the car using requests called parameter IDs, or PIDs, defined by the SAE J1979 standard. The standard describes ten diagnostic services, which it called modes before 2002. Manufacturers do not have to support all of them, and can add services of their own, for example to report the voltage of a hybrid's traction battery.

The ones a driver is most likely to meet are these:

  • Service 01 shows current data.
  • Service 02 shows freeze frame data, a snapshot of the same readings taken at the moment the last trouble code was set.
  • Service 03 lists the stored diagnostic trouble codes.
  • Service 04 clears the trouble codes and stored values.
  • Service 09 requests vehicle information.

One of the first things a scanner can learn is whether the malfunction indicator light, the check engine light, is on, and how many trouble codes are currently flagged in the computer. The same request returns readiness checks. These show which on-board tests are available and whether they have completed, and they are read differently for petrol and diesel engines. Another request returns which of the next 32 PIDs the car supports, so a tool can learn what to ask for.

Performance tracking is built in as well. On petrol engines it covers the catalyst, oxygen sensors, evaporative leak detection, exhaust gas recirculation and secondary air system. On diesels the list includes the NOx catalyst, the particulate filter monitor, the boost pressure monitor and the fuel system.

There is a limit to what any scanner can see. Most of the PIDs in use are non-standard, and there is relatively little overlap between manufacturers.

On modern cars the exchange runs over the CAN bus. A scanner broadcasts its request using CAN ID 7DFh and accepts replies from IDs 7E8h to 7EFh, so up to eight control units can answer independently. Typically the engine computer replies at 7E8h, while other modules, such as the hybrid controller in a Prius, answer at the IDs that follow.

What is the ECU the port talks to?

The computer on the other end is the engine control unit, also called the engine control module. It controls subsystems of the engine, most commonly fuel injection and ignition, along with idle speed and variable valve timing. Secondary jobs include launch control, a rev limiter, wastegate control and anti-lag, and blocking the ignition when an immobiliser asks it to.

Its history runs further back than most drivers would guess. The first units, used on aircraft engines in the late 1930s, were mechanical and hydraulic. BMW built one in 1939 for its 801 radial engine that replaced six separate controls with one. In cars, the Ford EEC system, which used a Toshiba microprocessor, entered mass production in 1975, and the first Bosch engine management system, Motronic 1.0, arrived in the 1979 BMW 7 Series. By 1988 Delco Electronics was producing over 28,000 units a day.

Is OBD2 the same worldwide?

Close, but the dates differ. The European version, EOBD, is the equivalent of OBD-II and uses the same J1962 connector and signal protocols. It became mandatory for petrol cars sold in the European Union in model year 2001 and for diesels in 2004. Euro V and Euro VI lowered its emission thresholds compared with Euro III and IV.

For readers in Australia and New Zealand, the date to know is 1 January 2006: every vehicle manufactured in the two countries had to be OBD-II compliant after it. In China certain light vehicles had to implement OBD by 1 July 2008. In the United States, all cars sold from 2008 have been required to use the ISO 15765-4 signalling standard, a variant of the CAN bus.

Where this goes next

The latest changes in the rules concern heavier vehicles. Phase-in of OBD-II to US vehicles of 14,000 lb (6,400 kg) and above began in 2010 and was completed by the 2013 model year. Heavy-duty vehicles built after 2010 for sale in the United States may use the J1939-13 round diagnostic connector in place of the 16-pin plug, although some heavy trucks, notably from Mack and Volvo, use the same J1962 connector as passenger cars.

Frequently asked questions

Where is the OBD2 port?
The OBD-II connector is required to be within 2 feet (0.61 m) of the steering wheel. A manufacturer can apply for an exemption, but the port must still be within reach of the driver.
What do the letters in OBD2 fault codes mean?
The first letter names the system: P is powertrain (engine and transmission), B is body, C is chassis and U is network. Four digits follow.
What do P03 codes cover?
Codes in the P03xx block cover the ignition system or misfire. P01xx and P02xx cover fuel and air metering, and P07xx and P08xx cover the transmission.
What is the difference between OBD1 and OBD2?
OBD-I had no standard connector, code list or protocol, so each maker did its own thing. OBD-II standardised the 16-pin connector, signalling, message format and an extensible list of codes.
Can an OBD2 scanner clear codes?
Service 04 clears diagnostic trouble codes and stored values, while service 03 lists stored codes and service 02 shows a freeze frame snapshot of the readings when the last code was set.

Sources

  1. On-board diagnostics - Wikipedia
  2. OBD-II PIDs - Wikipedia
  3. Engine control unit - Wikipedia
Next story / Features

Idling for More Than Ten Seconds Uses More Fuel Than Restarting