21.11.2013 Views

CANgate User's Manual - dataTaker

CANgate User's Manual - dataTaker

CANgate User's Manual - dataTaker

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

OBD-II Modes and PIDs<br />

OBD-II defines a standardised set of on-board diagnostic functions, which are described in the SAE J1979 and ISO 15031<br />

standards.<br />

Modes<br />

The first byte of an OBD-II request message specifies the mode of operation. Modes 0x00-0x0F are reserved for<br />

standardised (legislated) functions, of which nine are currently defined:<br />

Mode<br />

Description<br />

01 Show current value of specified PID<br />

02 Show stored (freeze frame) value of specified PID<br />

03 Show stored Diagnostic Trouble Codes (DTCs)<br />

04 Clear DTCs and stored values<br />

05 Test results, oxygen sensors<br />

06 Test results, non-continuously monitored<br />

07 Show pending DTCs<br />

08 Special control mode<br />

09 Request vehicle information<br />

Modes 0x10-0x3F are defined in ISO 14230. The precise details of how these modes work (eg. parameter definitions) are<br />

manufacturer specific.<br />

PIDs<br />

For Modes 01 and 02, the second byte of the request message is the PID of interest. The table below lists some of the<br />

standard PIDs. Refer to the standards for more details.<br />

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<br />

byte is the PID, and the third and subsequent bytes are the actual data value.<br />

PID<br />

(hex)<br />

Data Size<br />

(bytes) Description Scale Offset Units<br />

00 4 PIDs supported b31..0 = PIDs 0x01..0x20<br />

01 4 (Mode 01 only) MIL (Malfunction Indicator Light) status,<br />

number of DTCs, test status<br />

02 2 (Mode 02 only) DTC associated with freeze frame data,<br />

if 0 then there is no stored freeze frame data<br />

b31=MIL status, b30..24=num DTCs,<br />

b23..0=test status<br />

DTC code, see below<br />

03 2 Fuel systems #1 and #2 status (1 byte each) bit encoded<br />

04 1 Calculated engine load<br />

05 1 Engine coolant temperature 1 -40 °C<br />

06 1 Short term fuel % trim – bank 1 (- lean, + rich) 0.7812 -100 %<br />

07 1 Long term fuel % trim – bank 1 (- lean, + rich)<br />

08 1 Short term fuel % trim – bank 2 (- lean, + rich) 0.7812 -100 %<br />

09 1 Long term fuel % trim – bank 2 (- lean, + rich) 0.7812 -100 %<br />

0A 1 Fuel pressure 3 0 kPa (gauge)<br />

0B 1 Intake manifold pressure 1 0 kPa (abs)<br />

0C 2 Engine RPM 0.25 0 rpm<br />

0D 1 Vehicle speed 1 0 km/h<br />

0E 1 Timing advance 0.5 -64 degrees<br />

0F 1 Intake temperature 1 -40 °C<br />

10 2 MAF air flow rate 0.01 0 g/s<br />

11 1 Throttle position 0.3922 0 %<br />

12 1 Secondary air status bit encoded<br />

13 1 Oxygen sensors present b7..4=bank 2 sensors 4-1<br />

b3..0=bank 1 sensors 4-1<br />

14 2 (byte 1) Bank 1 sensor 1, oxygen sensor voltage 0.005 0 V<br />

(byte 2) Bank 1 sensor 1, short term fuel trim (0xFF if<br />

sensor not used)<br />

0.7812 -100 %<br />

UM-0086-A2 <strong>CANgate</strong> User’s <strong>Manual</strong> Page 40

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!