UM-0086-A2
CANgate User’s Manual
Page 40
OBD-II Modes and PIDs
OBD-II defines a standardised set of on-board diagnostic functions, which are described in the SAE J1979 and ISO 15031
standards.
Modes
The first byte of an OBD-II request message specifies the mode of operation. Modes 0x00-0x0F are reserved for
standardised (legislated) functions, of which nine are currently defined:
Mode
Description
01
Show current value of specified PID
02
Show stored (freeze frame) value of specified PID
03
Show stored Diagnostic Trouble Codes (DTCs)
04
Clear DTCs and stored values
05
Test results, oxygen sensors
06
Test results, non-continuously monitored
07
Show pending DTCs
08
Special control mode
09
Request vehicle information
Modes 0x10-0x3F are defined in ISO 14230. The precise details of how these modes work (eg. parameter definitions) are
manufacturer specific.
PIDs
For Modes 01 and 02, the second byte of the request message is the PID of interest. The table below lists some of the
standard PIDs. Refer to the standards for more details.
The first byte of the reply message is the mode byte with bit 6 set (eg. 0x41 for a reply to a mode 0x01 request). The second
byte is the PID, and the third and subsequent bytes are the actual data value.
PID
(hex)
Data Size
(bytes)
Description
Scale
Offset
Units
00
4
PIDs supported
b31..0 = PIDs 0x01..0x20
01
4
(Mode 01 only) MIL (Malfunction Indicator Light) status,
number of DTCs, test status
b31=MIL status, b30..24=num DTCs,
b23..0=test status
02
2
(Mode 02 only) DTC associated with freeze frame data,
if 0 then there is no stored freeze frame data
DTC code, see below
03
2
Fuel systems #1 and #2 status (1 byte each)
bit encoded
04
1
Calculated engine load
05
1
Engine coolant temperature
1
-40
°C
06
1
Short term fuel % trim – bank 1 (- lean, + rich)
0.7812
-100
%
07
1
Long term fuel % trim – bank 1 (- lean, + rich)
08
1
Short term fuel % trim – bank 2 (- lean, + rich)
0.7812
-100
%
09
1
Long term fuel % trim – bank 2 (- lean, + rich)
0.7812
-100
%
0A
1
Fuel pressure
3
0
kPa (gauge)
0B
1
Intake manifold pressure
1
0
kPa (abs)
0C
2
Engine RPM
0.25
0
rpm
0D
1
Vehicle speed
1
0
km/h
0E
1
Timing advance
0.5
-64
degrees
0F
1
Intake temperature
1
-40
°C
10
2
MAF air flow rate
0.01
0
g/s
11
1
Throttle position
0.3922
0
%
12
1
Secondary air status
bit encoded
13
1
Oxygen sensors present
b7..4=bank 2 sensors 4-1
b3..0=bank 1 sensors 4-1
(byte 1) Bank 1 sensor 1, oxygen sensor voltage
0.005
0
V
14
2
(byte 2) Bank 1 sensor 1, short term fuel trim (0xFF if
sensor not used)
0.7812
-100
%