LEMON Manuals: Even more car manuals for everyone: 1960-2025
Home >> Ford >> 2008 >> Escape Base, 2.3 Z, AWD, Automatic >> Repair and Diagnosis (Single Page) >> Engine Performance >> System >> Engine Controls - Description And Operation (Except Diesel & Hybrid) >> Powertrain Control Software >> International Standards Organization (ISO) 14229 Diagnostic Trouble Code (DTC) Descriptions
April 5, 2026: LEMON Manuals is launched! Read the announcement.

International Standards Organization (ISO) 14229 Diagnostic Trouble Code (DTC) Descriptions

The ISO 14229 is a global, diagnostic communication standard. The ISO 14229 is a set of standard diagnostic messages that can be used to diagnose any vehicle module in service, and at the assembly plant. The ISO 14229 is similar to the society of automotive engineers (SAE) J2190 diagnostic communication standard that was used by all original equipment manufacturers (OEMs) for previous communication protocols, like J1850 standard corporate protocol (SCP).

For the 2008 model year, the new ISO 14229 standard is standard on the Focus powertrain control module (PCM). The ISO 14229 changes the way PIDs, DTCs, and output state control is processed internally in the PCM and in the scan tool software. Most of the changes are to make data transfer between electronic modules more efficient, and the amount and type of information that is available for each DTC. This information may be helpful in diagnosing driveability concerns.

DTC Structure -   Like all digital signals, DTCs are sent to the scan tool as a series of 1s and 0s. Each DTC is made up of 2 data bytes which each consist of 8 bits that can be set to 1 or 0. The data is decoded by the scan tool to display each set of 4 bits as a hexadecimal number (0 to F) in order to display the DTCs in the conventional format. For example, P0420 - Catalyst System Efficiency Below Threshold (Bank 1).

DTC Byte 1 DTC Byte 2
0000 0100 0010 0000
P0 4 2 0

The table below shows how to decode the bits into hex digits.

Binary Bit Pattern Hex Digit Binary Bit Pattern Hex Digit
0000 0 1000 8
0001 1 1001 9
0010 2 1010 A
0011 3 1011 B
0100 4 1100 C
0101 5 1101 D
0110 6 1110 E
0111 7 1111 F

The first 4 bits of a DTC do not convert directly into hex digits. The conversion into different types of DTCs (P, B, C and U) is defined by SAE J2012. This standard contains DTC definitions and formats.

Binary Bit Pattern SAE DTC Type Binary Bit Pattern SAE DTC Type
0000 P0 1000 B0
0001 P1 1001 B1
0010 P2 1010 B2
0011 P3 1011 B3
0100 C0 1100 U0
0101 C1 1101 U1
0110 C2 1110 U2
0111 C3 1111 U3

ISO 14229 sends 2 additional bytes of information with each DTC, a failure type byte and a status byte.

DTC Byte 1 DTC Byte 2 Failure Type Byte Status Byte
0000 0100 0010 0000 0000 0000 1111 0101
P0 4 2 0 0 0 F 9

All ISO 14229 DTCs are 4 bytes long instead of 3 bytes or 2 bytes long. Additionally, the status byte for ISO 14229 DTCs is defined differently than the status byte for previous applications with 3 byte DTCs.

Failure Type Byte -   The failure type byte is designed to describe the specific failure associated with the basic DTC. For example, an failure type byte of 1C means circuit voltage out of range, 73 means actuator stuck closed. When combined with a basic component DTC, it allows one basic DTC to describe many types of failures.

DTC Byte 1 DTC Byte 2 Failure Type Byte Status Byte
0000 0001 0001 0000 0001 1100 1010 1111
P0 1 1 0 1 C A F

For example, P0110:1C-AF means intake air temperature sensor circuit voltage out of range. The base DTC, P0110, means intake air temperature sensor circuit, while the failure type byte 1C means circuit voltage out of range. This DTC structure was designed to allow manufacturers to more precisely identify different kinds of faults without always having to define new DTC numbers.

The PCM does not use failure type bytes and always sends a failure type byte of 00 (no sub type information). This is because OBD-II regulations require manufacturers to use 2 byte DTCs for generic scan tool communications. Additionally, the OBD-II regulations require the 2 byte DTCs to be very specific, so there is no additional information that the failure type byte could provide.

A list of failure type bytes is defined by SAE J2012 but is not described here because the PCM does not use the failure type byte.

Status Byte -   The status byte is designed to provide additional information about the DTC, such as when the DTC failed, when the DTC was last evaluated, and if any warning indication has been requested. Each of the 8 bits in the status byte has a precise meaning that is defined in ISO 14229.

The protocol is that bit 7 is the most significant bit and is the left-most bit while bit 0 is the least significant bit and is the right-most bit.

Most Significant Bits Least Significant Bit
Bit 7 Bit 6 Bit 5 Bit 4 Bit 3 Bit 2 Bit 1 Bit 0

DTC Status Bit Definitions -   Refer to the following status bit descriptions:

Bit 7

Bit 6

Bit 5

Bit 4

Bit 3

Bit 2

Bit 1

Bit 0

For DTCs that illuminate the MIL, a confirmed DTC means the PCM has stored a DTC and has illuminated the MIL. If the fault has corrected itself, the MIL may no longer be illuminated but the DTC still shows a confirmed status for 40 warm up cycles at which time the DTC is erased. Bit 7 can be used to determine if the MIL is illuminated for the DTC.

For DTCs that do not illuminate the MIL, a confirmed DTC means the PCM has stored a DTC. If the fault has corrected itself, the DTC still shows a confirmed status for 40 warm up cycles at which time the DTC is erased.

To determine if a test has completed and passed, for example, after a repair, information can be combined from 2 bits as follows:

If bit 6 is 0 (the DTC test completed this monitoring cycle), and bit 1 is 0 (the DTC never failed on the current monitoring cycle), then the DTC has been evaluated at least once this drive cycle and was a pass.

If bit 6 is 0 (the DTC test completed this monitoring cycle) and bit 0 is 0 (the DTC is not failed at the time of request), then the most recent test result for that DTC was a pass.

The status byte bits can be decoded as a 2 digit hexadecimal number, and can be displayed as the last 2 digits of the DTC, for example for DTC P0110:1C-AF, AF represents the status byte info.

Status Byte
A equals 1010 F equals 1111
Bit 7 equals 1 Bit 6 equals 0 Bit 5 equals 1 Bit 4 equals 0 Bit 3 equals 1 Bit 2 equals 1 Bit 1 equals 1 Bit 0 equals 1