Monit 2 09

broken image


  • Ambulatory Event Monitoring. Uses a recording device that uses the same type of electrodes as a Holter monitor, but is meant to record events that occur less frequently than daily, and thus require studying for a longer time. The patient typically wears the device for 20 or 30 days. Cardiac event monitor technology varies among different devices.
  • Pixio PXC327 32 inch Curved Gaming Monitor. Gamers, this Pixio PCX 327 32 Inch is what you need with its VA Panel gives you the best picture quality possible for making gaming easier. With Pixio AMD Free-Sync, you can play your favorite games and know you get the smoothies gameplay ever. Also, with their QHD 1440p Resolution, you get four times.
  1. Monitor 200
  2. Monit 2 09 17

OBD-II PIDs (On-board diagnosticsParameter IDs) are codes used to request data from a vehicle, used as a diagnostic tool.

SAE standard J1979 defines many OBD-II PIDs. All on-road vehicles and trucks sold in North America are required to support a subset of these codes, primarily for state mandated emissionsinspections. Manufacturers also define additional PIDs specific to their vehicles. Though not mandated, many motorcycles also support OBD-II PIDs.

In 1996, light duty vehicles (less than 8,500 lb [3,900 kg]) were the first to be mandated followed by medium duty vehicles (between 8,500–14,000 lb [3,900–6,400 kg]) in 2005.[1] They are both required to be accessed through a standardized data link connector defined by SAE J1962.

Heavy duty vehicles (greater than 14,000 lb [6,400 kg]) made after 2010,[1] for sale in the US are allowed to support OBD-II diagnostics through SAE standard J1939-13 (a round diagnostic connector) according to CARB in title 13 CCR 1971.1. Some heavy duty trucks in North America use the SAE J1962 OBD-II diagnostic connector that is common with passenger cars, notably Mack and Volvo Trucks, however they use 29 bit CAN identifiers (unlike 11 bit headers used by passenger cars).

MER 2.0 (Version 2.6) September 2021 Monitoring, Evaluation, and Reporting Indicator Reference Guide. 2 THIS PAGE IS INTENTIONALLY LEFT BLANK. EW 3 Table of Contents.

Services / Modes[edit]

There are 10 diagnostic services described in the latest OBD-II standard SAE J1979. Before 2002, J1979 referred to these services as 'modes'. They are as follows:

Monitor
Service / Mode (hex)Description
01Show current data
02Show freeze frame data
03Show stored Diagnostic Trouble Codes
04Clear Diagnostic Trouble Codes and stored values
05Test results, oxygen sensor monitoring (non CAN only)
06Test results, other component/system monitoring (Test results, oxygen sensor monitoring for CAN only)
07Show pending Diagnostic Trouble Codes (detected during current or last driving cycle)
08Control operation of on-board component/system
09Request vehicle information
0APermanent Diagnostic Trouble Codes (DTCs) (Cleared DTCs)

Vehicle manufacturers are not required to support all services. Each manufacturer may define additional services above #9 (e.g.: service 22 as defined by SAE J2190 for Ford/GM, service 21 for Toyota) for other information e.g. the voltage of the traction battery in a hybrid electric vehicle (HEV).[2]

The nonOBD UDS services start at 0x10 to avoid overlap of ID-range.

Standard PIDs[edit]

The table below shows the standard OBD-II PIDs as defined by SAE J1979. The expected response for each PID is given, along with information on how to translate the response into meaningful data. Again, not all vehicles will support all PIDs and there can be manufacturer-defined custom PIDs that are not defined in the OBD-II standard.

Note that services 01 and 02 are basically identical, except that service 01 provides current information, whereas service 02 provides a snapshot of the same data taken at the point when the last diagnostic trouble code was set. The exceptions are PID 01, which is only available in service 01, and PID 02, which is only available in service 02. If service 02 PID 02 returns zero, then there is no snapshot and all other service 02 data is meaningless.

When using Bit-Encoded-Notation, quantities like C4 means bit 4 from data byte C. Each bit is numerated from 0 to 7, so 7 is the most significant bit and 0 is the least significant bit (See below).

ABCD
A7A6A5A4A3A2A1A0B7B6B5B4B3B2B1B0C7C6C5C4C3C2C1C0D7D6D5D4D3D2D1D0

Service 01[edit]

PIDs
(hex)
PID
(Dec)
Data bytes returnedDescriptionMin valueMax valueUnitsFormula[a]
0004PIDs supported [01 - 20]Bit encoded [A7.D0][PID $01.PID $20] See below
0114Monitor status since DTCs cleared. (Includes malfunction indicator lamp (MIL) status and number of DTCs.)Bit encoded. See below
0222Freeze DTC
0332Fuel system statusBit encoded. See below
0441Calculated engine load0100%100255A{displaystyle {tfrac {100}{255}}A} (or A2.55{displaystyle {tfrac {A}{2.55}}})
0551Engine coolant temperature-40215°CA−40{displaystyle A-40}
0661Short term fuel trim—Bank 1-100 (Reduce Fuel: Too Rich)99.2 (Add Fuel: Too Lean)%
100128A−100{displaystyle {frac {100}{128}}A-100}
(or A1.28−100{displaystyle {tfrac {A}{1.28}}-100} )
0771Long term fuel trim—Bank 1
0881Short term fuel trim—Bank 2
0991Long term fuel trim—Bank 2
0A101Fuel pressure (gauge pressure)0765kPa3A{displaystyle 3A}
0B111Intake manifold absolute pressure0255kPaA{displaystyle A}
0C122Engine speed016,383.75rpm256A+B4{displaystyle {frac {256A+B}{4}}}
0D131Vehicle speed0255km/hA{displaystyle A}
0E141Timing advance-6463.5° before TDCA2−64{displaystyle {frac {A}{2}}-64}
0F151Intake air temperature-40215°CA−40{displaystyle A-40}
10162Mass air flow sensor (MAF) air flow rate0655.35grams/sec256A+B100{displaystyle {frac {256A+B}{100}}}
11171Throttle position0100%100255A{displaystyle {tfrac {100}{255}}A}
12181Commanded secondary air statusBit encoded. See below
13191Oxygen sensors present (in 2 banks)[A0.A3]Bank 1, Sensors 1-4. [A4.A7]Bank 2..
14202Oxygen Sensor 1
A: Voltage
B: Short term fuel trim
0
-100
1.275
99.2
volts

%

100128B−100{displaystyle {frac {100}{128}}B-100}
(if B$FF, sensor is not used in trim calculation)
15212Oxygen Sensor 2
A: Voltage
B: Short term fuel trim
16222Oxygen Sensor 3
A: Voltage
B: Short term fuel trim
17232Oxygen Sensor 4
A: Voltage
B: Short term fuel trim
18242Oxygen Sensor 5
A: Voltage
B: Short term fuel trim
19252Oxygen Sensor 6
A: Voltage
B: Short term fuel trim
1A262Oxygen Sensor 7
A: Voltage
B: Short term fuel trim
1B272Oxygen Sensor 8
A: Voltage
B: Short term fuel trim
1C281OBD standards this vehicle conforms to1250-enumerated. See below
1D291Oxygen sensors present (in 4 banks)Similar to PID 13, but [A0.A7][B1S1, B1S2, B2S1, B2S2, B3S1, B3S2, B4S1, B4S2]
1E301Auxiliary input statusA0Power Take Off (PTO) status (1active)
[A1.A7] not used
1F312Run time since engine start065,535seconds256A+B{displaystyle 256A+B}
20324PIDs supported [21 - 40]Bit encoded [A7.D0][PID $21.PID $40] See below
21332Distance traveled with malfunction indicator lamp (MIL) on065,535km256A+B{displaystyle 256A+B}
22342Fuel Rail Pressure (relative to manifold vacuum)05177.265kPa0.079(256A+B){displaystyle 0.079(256A+B)}
23352Fuel Rail Gauge Pressure (diesel, or gasoline direct injection)0655,350kPa10(256A+B){displaystyle 10(256A+B)}
24364Oxygen Sensor 1
AB: Air-Fuel Equivalence Ratio (lambda,λ)
CD: Voltage
0
0
< 2
< 8
ratio
V
265536(256A+B){displaystyle {frac {2}{65536}}(256A+B)}
865536(256C+D){displaystyle {frac {8}{65536}}(256C+D)}
25374Oxygen Sensor 2
AB: Air-Fuel Equivalence Ratio (lambda,λ)
CD: Voltage
26384Oxygen Sensor 3
AB: Air-Fuel Equivalence Ratio (lambda,λ)
CD: Voltage
27394Oxygen Sensor 4
AB: Air-Fuel Equivalence Ratio (lambda,λ)
CD: Voltage
28404Oxygen Sensor 5
AB: Air-Fuel Equivalence Ratio (lambda,λ)
CD: Voltage
29414Oxygen Sensor 6
AB: Air-Fuel Equivalence Ratio (lambda,λ)
CD: Voltage
2A424Oxygen Sensor 7
AB: Air-Fuel Equivalence Ratio (lambda,λ)
CD: Voltage
2B434Oxygen Sensor 8
AB: Air-Fuel Equivalence Ratio (lambda,λ)
CD: Voltage
2C441Commanded EGR0100%100255A{displaystyle {tfrac {100}{255}}A}
2D451EGR Error-10099.2%100128A−100{displaystyle {tfrac {100}{128}}A-100}
2E461Commanded evaporative purge0100%100255A{displaystyle {tfrac {100}{255}}A}
2F471Fuel Tank Level Input0100%100255A{displaystyle {tfrac {100}{255}}A}
30481Warm-ups since codes cleared0255countA{displaystyle A}
31492Distance traveled since codes cleared065,535km256A+B{displaystyle 256A+B}
32502Evap. System Vapor Pressure-8,1928191.75Pa256A+B4{displaystyle {frac {256A+B}{4}}}

(AB is two's complement signed)[3]

33511Absolute Barometric Pressure0255kPaA{displaystyle A}
34524Oxygen Sensor 1
AB: Air-Fuel Equivalence Ratio (lambda,λ)
CD: Current
0
-128
< 2
<128
ratio
mA
265536(256A+B){displaystyle {frac {2}{65536}}(256A+B)}
256C+D256−128{displaystyle {frac {256C+D}{256}}-128}
35534Oxygen Sensor 2
AB: Air-Fuel Equivalence Ratio (lambda,λ)
CD: Current
36544Oxygen Sensor 3
AB: Air-Fuel Equivalence Ratio (lambda,λ)
CD: Current
37554Oxygen Sensor 4
AB: Air-Fuel Equivalence Ratio (lambda,λ)
CD: Current
38564Oxygen Sensor 5
AB: Air-Fuel Equivalence Ratio (lambda,λ)
CD: Current
39574Oxygen Sensor 6
AB: Air-Fuel Equivalence Ratio (lambda,λ)
CD: Current
3A584Oxygen Sensor 7
AB: Air-Fuel Equivalence Ratio (lambda,λ)
CD: Current
3B594Oxygen Sensor 8
AB: Air-Fuel Equivalence Ratio (lambda,λ)
CD: Current
3C602Catalyst Temperature: Bank 1, Sensor 1-406,513.5°C256A+B10−40{displaystyle {frac {256A+B}{10}}-40}
3D612Catalyst Temperature: Bank 2, Sensor 1
3E622Catalyst Temperature: Bank 1, Sensor 2
3F632Catalyst Temperature: Bank 2, Sensor 2
40644PIDs supported [41 - 60]Bit encoded [A7.D0][PID $41.PID $60] See below
41654Monitor status this drive cycleBit encoded. See below
42662Control module voltage065.535V256A+B1000{displaystyle {frac {256A+B}{1000}}}
43672Absolute load value025,700%100255(256A+B){displaystyle {tfrac {100}{255}}(256A+B)}
44682Commanded Air-Fuel Equivalence Ratio (lambda,λ)0< 2ratio265536(256A+B){displaystyle {tfrac {2}{65536}}(256A+B)}
45691Relative throttle position0100%100255A{displaystyle {tfrac {100}{255}}A}
46701Ambient air temperature-40215°CA−40{displaystyle A-40}
47711Absolute throttle position B0100%100255A{displaystyle {frac {100}{255}}A}
48721Absolute throttle position C
49731Accelerator pedal position D
4A741Accelerator pedal position E
4B751Accelerator pedal position F
4C761Commanded throttle actuator
4D772Time run with MIL on065,535minutes256A+B{displaystyle 256A+B}
4E782Time since trouble codes cleared
4F794Maximum value for Fuel–Air equivalence ratio, oxygen sensor voltage, oxygen sensor current, and intake manifold absolute pressure0, 0, 0, 0255, 255, 255, 2550ratio, V, mA, kPaA{displaystyle A}, B{displaystyle B}, C{displaystyle C}, D∗10{displaystyle D*10}
50804Maximum value for air flow rate from mass air flow sensor02550g/sA∗10{displaystyle A*10}, B{displaystyle B}, C{displaystyle C}, and D{displaystyle D} are reserved for future use
51811Fuel TypeFrom fuel type table see below
52821Ethanol fuel %0100%100255A{displaystyle {tfrac {100}{255}}A}
53832Absolute Evap system Vapor Pressure0327.675kPa256A+B200{displaystyle {frac {256A+B}{200}}}
54842Evap system vapor pressure-32,76832,767Pa256A+B{displaystyle 256A+B}(AB is two's complement signed)[3]
55852Short term secondary oxygen sensor trim, A: bank 1, B: bank 3-10099.2%100128A−100{displaystyle {frac {100}{128}}A-100}

100128B−100{displaystyle {frac {100}{128}}B-100}

56862Long term secondary oxygen sensor trim, A: bank 1, B: bank 3
57872Short term secondary oxygen sensor trim, A: bank 2, B: bank 4
58882Long term secondary oxygen sensor trim, A: bank 2, B: bank 4
59892Fuel rail absolute pressure0655,350kPa10(256A+B){displaystyle 10(256A+B)}
5A901Relative accelerator pedal position0100%100255A{displaystyle {tfrac {100}{255}}A}
5B911Hybrid battery pack remaining life0100%100255A{displaystyle {tfrac {100}{255}}A}
5C921Engine oil temperature-40210°CA−40{displaystyle A-40}
5D932Fuel injection timing-210.00301.992°256A+B128−210{displaystyle {frac {256A+B}{128}}-210}
5E942Engine fuel rate03212.75L/h256A+B20{displaystyle {frac {256A+B}{20}}}
5F951Emission requirements to which vehicle is designedBit Encoded
60964PIDs supported [61 - 80]Bit encoded [A7.D0][PID $61.PID $80] See below
61971Driver's demand engine - percent torque-125130%A−125{displaystyle A-125}
62981Actual engine - percent torque-125130%A−125{displaystyle A-125}
63992Engine reference torque065,535Nm256A+B{displaystyle 256A+B}
641005Engine percent torque data-125130%A−125{displaystyle A-125} Idle
B−125{displaystyle B-125} Engine point 1
C−125{displaystyle C-125} Engine point 2
D−125{displaystyle D-125} Engine point 3
E−125{displaystyle E-125} Engine point 4
651012Auxiliary input / output supportedBit Encoded
661025Mass air flow sensor02047.96875grams/sec[A0] Sensor A Supported
[A1] Sensor B Supported
Sensor A:256B+C32{displaystyle {frac {256B+C}{32}}}
Sensor B:256D+E32{displaystyle {frac {256D+E}{32}}}
671033Engine coolant temperature-40215°C[A0] Sensor 1 Supported
[A1] Sensor 2 Supported
Sensor 1:B−40{displaystyle B-40}
Sensor 2:C−40{displaystyle C-40}
681043Intake air temperature sensor-40215°C[A0] Sensor 1 Supported
[A1] Sensor 2 Supported
Sensor 1:B−40{displaystyle B-40}
Sensor 2:C−40{displaystyle C-40}
691057Actual EGR, Commanded EGR, and EGR Error
6A1065Commanded Diesel intake air flow control and relative intake air flow position
6B1075Exhaust gas recirculation temperature
6C1085Commanded throttle actuator control and relative throttle position
6D10911Fuel pressure control system
6E1109Injection pressure control system
6F1113Turbocharger compressor inlet pressure
7011210Boost pressure control
711136Variable Geometry turbo (VGT) control
721145Wastegate control
731155Exhaust pressure
741165Turbocharger RPM
751177Turbocharger temperature
761187Turbocharger temperature
771195Charge air cooler temperature (CACT)
781209Exhaust Gas temperature (EGT) Bank 1Special PID. See below
791219Exhaust Gas temperature (EGT) Bank 2Special PID. See below
7A1227Diesel particulate filter (DPF)

differential pressure

7B1237Diesel particulate filter (DPF)
7C1249Diesel Particulate filter (DPF) temperature°C256A+B10−40{displaystyle {frac {256A+B}{10}}-40}
7D1251NOx NTE (Not-To-Exceed) control area status
7E1261PM NTE (Not-To-Exceed) control area status
7F12713Engine run time [b]seconds
801284PIDs supported [81 - A0]Bit encoded [A7.D0][PID $81.PID $A0] See below
8112941Engine run time for Auxiliary Emissions Control Device(AECD)
8213041Engine run time for Auxiliary Emissions Control Device(AECD)
831319NOx sensor
841321Manifold surface temperature
8513310NOx reagent system
861345Particulate matter (PM) sensor
871355Intake manifold absolute pressure
8813613SCR Induce System
8913741Run Time for AECD #11-#15
8A13841Run Time for AECD #16-#20
8B1397Diesel Aftertreatment
8C14017O2 Sensor (Wide Range)
8D1411Throttle Position G0100%
8E1421Engine Friction - Percent Torque-125130%A−125{displaystyle A-125}
8F1437PM Sensor Bank 1 & 2
901443WWH-OBD Vehicle OBD System Informationhours
911455WWH-OBD Vehicle OBD System Informationhours
921462Fuel System Control
931473WWH-OBD Vehicle OBD Counters supporthours
9414812NOx Warning And Inducement System
981529Exhaust Gas Temperature Sensor
991539Exhaust Gas Temperature Sensor
9A1546Hybrid/EV Vehicle System Data, Battery, Voltage
9B1554Diesel Exhaust Fluid Sensor Data
9C15617O2 Sensor Data
9D1574Engine Fuel Rateg/s
9E1582Engine Exhaust Flow Ratekg/h
9F1599Fuel System Percentage Use
A01604PIDs supported [A1 - C0]Bit encoded [A7.D0][PID $A1.PID $C0] See below
A11619NOx Sensor Corrected Datappm
A21622Cylinder Fuel Rate02047.96875mg/stroke256A+B32{displaystyle {frac {256A+B}{32}}}
A31639Evap System Vapor PressurePa
A41644Transmission Actual Gear065.535ratio[A1]Supported

256C+D1000{displaystyle {frac {256C+D}{1000}}}

A51654Commanded Diesel Exhaust Fluid Dosing0127.5%[A0]= 1:Supported; 0:Unsupported

B2{displaystyle {frac {B}{2}}}

A61664Odometer[c]0429,496,729.5kmA(224)+B(216)+C(28)+D10{displaystyle {frac {A(2^{24})+B(2^{16})+C(2^{8})+D}{10}}}
A71674NOx Sensor Concentration Sensors 3 and 4
A81684NOx Sensor Corrected Concentration Sensors 3 and 4
A91694ABS Disable Switch State[A0]= 1:Supported; 0:Unsupported

[B0]= 1:Yes;0:No

C01924PIDs supported [C1 - E0]0x00xffffffffBit encoded [A7.D0][PID $C1.PID $E0] See below
C3195?????Returns numerous data, including Drive Condition ID and Engine Speed*
C4196?????B5 is Engine Idle Request
B6 is Engine Stop Request*
PID
(hex)
PID
(Dec)
Data bytes returnedDescriptionMin valueMax valueUnitsFormula[a]

Service 02[edit]

Service 02 accepts the same PIDs as service 01, with the same meaning,[5] but information given is from when the freeze frame[6] was created.

You have to send the frame number in the data section of the message.

PID
(hex)
Data bytes returnedDescriptionMin valueMax valueUnitsFormula[a]
022DTC that caused freeze frame to be stored.BCD encoded. Decoded as in service 3

Service 03[edit]

PID
(hex)
Data bytes returnedDescriptionMin valueMax valueUnitsFormula[a]
N/An*6Request trouble codes3 codes per message frame. See below

Service 04[edit]

PID
(hex)
Data bytes returnedDescriptionMin valueMax valueUnitsFormula[a]
N/A0Clear trouble codes / Malfunction indicator lamp (MIL) / Check engine lightClears all stored trouble codes and turns the MIL off.

Service 05[edit]

PID
(hex)
Data bytes returnedDescriptionMin valueMax valueUnitsFormula[a]
01004OBD Monitor IDs supported ($01 – $20)0x00xffffffff
01012O2 Sensor Monitor Bank 1 Sensor 10.001.275volts0.005 Rich to lean sensor threshold voltage
0102O2 Sensor Monitor Bank 1 Sensor 20.001.275volts0.005 Rich to lean sensor threshold voltage
0103O2 Sensor Monitor Bank 1 Sensor 30.001.275volts0.005 Rich to lean sensor threshold voltage
0104O2 Sensor Monitor Bank 1 Sensor 40.001.275volts0.005 Rich to lean sensor threshold voltage
0105O2 Sensor Monitor Bank 2 Sensor 10.001.275volts0.005 Rich to lean sensor threshold voltage
0106O2 Sensor Monitor Bank 2 Sensor 20.001.275volts0.005 Rich to lean sensor threshold voltage
0107O2 Sensor Monitor Bank 2 Sensor 30.001.275volts0.005 Rich to lean sensor threshold voltage
0108O2 Sensor Monitor Bank 2 Sensor 40.001.275volts0.005 Rich to lean sensor threshold voltage
0109O2 Sensor Monitor Bank 3 Sensor 10.001.275volts0.005 Rich to lean sensor threshold voltage
010AO2 Sensor Monitor Bank 3 Sensor 20.001.275volts0.005 Rich to lean sensor threshold voltage
010BO2 Sensor Monitor Bank 3 Sensor 30.001.275volts0.005 Rich to lean sensor threshold voltage
010CO2 Sensor Monitor Bank 3 Sensor 40.001.275volts0.005 Rich to lean sensor threshold voltage
010DO2 Sensor Monitor Bank 4 Sensor 10.001.275volts0.005 Rich to lean sensor threshold voltage
010EO2 Sensor Monitor Bank 4 Sensor 20.001.275volts0.005 Rich to lean sensor threshold voltage
010FO2 Sensor Monitor Bank 4 Sensor 30.001.275volts0.005 Rich to lean sensor threshold voltage
0110O2 Sensor Monitor Bank 4 Sensor 40.001.275volts0.005 Rich to lean sensor threshold voltage
0201O2 Sensor Monitor Bank 1 Sensor 10.001.275volts0.005 Lean to Rich sensor threshold voltage
0202O2 Sensor Monitor Bank 1 Sensor 20.001.275volts0.005 Lean to Rich sensor threshold voltage
0203O2 Sensor Monitor Bank 1 Sensor 30.001.275volts0.005 Lean to Rich sensor threshold voltage
0204O2 Sensor Monitor Bank 1 Sensor 40.001.275volts0.005 Lean to Rich sensor threshold voltage
0205O2 Sensor Monitor Bank 2 Sensor 10.001.275volts0.005 Lean to Rich sensor threshold voltage
0206O2 Sensor Monitor Bank 2 Sensor 20.001.275volts0.005 Lean to Rich sensor threshold voltage
0207O2 Sensor Monitor Bank 2 Sensor 30.001.275volts0.005 Lean to Rich sensor threshold voltage
0208O2 Sensor Monitor Bank 2 Sensor 40.001.275volts0.005 Lean to Rich sensor threshold voltage
0209O2 Sensor Monitor Bank 3 Sensor 10.001.275volts0.005 Lean to Rich sensor threshold voltage
020AO2 Sensor Monitor Bank 3 Sensor 20.001.275volts0.005 Lean to Rich sensor threshold voltage
020BO2 Sensor Monitor Bank 3 Sensor 30.001.275volts0.005 Lean to Rich sensor threshold voltage
020CO2 Sensor Monitor Bank 3 Sensor 40.001.275volts0.005 Lean to Rich sensor threshold voltage
020DO2 Sensor Monitor Bank 4 Sensor 10.001.275volts0.005 Lean to Rich sensor threshold voltage
020EO2 Sensor Monitor Bank 4 Sensor 20.001.275volts0.005 Lean to Rich sensor threshold voltage
020FO2 Sensor Monitor Bank 4 Sensor 30.001.275volts0.005 Lean to Rich sensor threshold voltage
0210O2 Sensor Monitor Bank 4 Sensor 40.001.275volts0.005 Lean to Rich sensor threshold voltage
PID
(hex)
Data bytes returnedDescriptionMin valueMax valueUnitsFormula[a]

Service 09[edit]

PID
(hex)
Data bytes returnedDescriptionMin valueMax valueUnitsFormula[a]
004Service 9 supported PIDs (01 to 20)Bit encoded. [A7.D0] = [PID $01.PID $20] See below
011VIN Message Count in PID 02. Only for ISO 9141-2, ISO 14230-4 and SAE J1850.Usually the value will be 5.
0217Vehicle Identification Number (VIN)17-char VIN, ASCII-encoded and left-padded with null chars (0x00) if needed to.
031Calibration ID message count for PID 04. Only for ISO 9141-2, ISO 14230-4 and SAE J1850.It will be a multiple of 4 (4 messages are needed for each ID).
0416,32,48,64.Calibration IDUp to 16 ASCII chars. Data bytes not used will be reported as null bytes (0x00). Several CALID can be outputed (16 bytes each)
051Calibration verification numbers (CVN) message count for PID 06. Only for ISO 9141-2, ISO 14230-4 and SAE J1850.
064,8,12,16Calibration Verification Numbers (CVN) Several CVN can be output (4 bytes each) the number of CVN and CALID must matchRaw data left-padded with null characters (0x00). Usually displayed as hex string.
071In-use performance tracking message count for PID 08 and 0B. Only for ISO 9141-2, ISO 14230-4 and SAE J1850.8108 if sixteen values are required to be reported, 9 if eighteen values are required to be reported, and 10 if twenty values are required to be reported (one message reports two values, each one consisting in two bytes).
084In-use performance tracking for spark ignition vehicles4 or 5 messages, each one containing 4 bytes (two values). See below
091ECU name message count for PID 0A
0A20ECU nameASCII-coded. Right-padded with null chars (0x00).
0B4In-use performance tracking for compression ignition vehicles5 messages, each one containing 4 bytes (two values). See below
PID
(hex)
Data bytes returnedDescriptionMin valueMax valueUnitsFormula[a]
  1. ^ abcdefghiIn the formula column, letters A, B, C, etc. represent the first, second, third, etc. byte of the data. For example, for two data bytes 0F 19, A = 0F and B = 19. Where a (?) appears, contradictory or incomplete information was available.
  2. ^Starting with MY 2010 the California Air Resources Board mandated that all diesel vehicles must supply total engine hours [4]
  3. ^Starting with MY 2019 the California Air Resources Board mandated that all vehicles must supply odometer[4]

Bitwise encoded PIDs[edit]

Some of the PIDs in the above table cannot be explained with a simple formula. A more elaborate explanation of these data is provided here:

Service 01 PID 00[edit]

A request for this PID returns 4 bytes of data (Big-endian). Each bit, from MSB to LSB, represents one of the next 32 PIDs and specifies whether that PID is supported.

For example, if the car response is BE1FA813, it can be decoded like this:

HexadecimalBE1FA813
Binary10111110000111111010100000010011
Supported?YesNoYesYesYesYesYesNoNoNoNoYesYesYesYesYesYesNoYesNoYesNoNoNoNoNoNoYesNoNoYesYes
PID number0102030405060708090A0B0C0D0E0F101112131415161718191A1B1C1D1E1F20

So, supported PIDs are: 01, 03, 04, 05, 06, 07, 0C, 0D, 0E, 0F, 10, 11, 13, 15, 1C, 1F and 20

Service 01 PID 01[edit]

A request for this PID returns 4 bytes of data, labeled A B C and D.

The first byte(A) contains two pieces of information. Bit A7 (MSB of byte A, the first byte) indicates whether or not the MIL (check engine light) is illuminated. Bits A6 through A0 represent the number of diagnostic trouble codes currently flagged in the ECU.

The second, third, and fourth bytes(B, C and D) give information about the availability and completeness of certain on-board tests. Note that test availability is indicated by set (1) bit and completeness is indicated by reset (0) bit.

BitNameDefinition
A7MILOff or On, indicates if the CEL/MIL is on (or should be on)
A6-A0DTC_CNTNumber of confirmed emissions-related DTCs available for display.
B7RESERVEDReserved (should be 0)
B3NO NAME0 = Spark ignition monitors supported (e.g. Otto or Wankel engines)
1 = Compression ignition monitors supported (e.g. Diesel engines)

Here are the common bit B definitions, they are test based.

Test availableTest incomplete
ComponentsB2B6
Fuel SystemB1B5
MisfireB0B4

The third and fourth bytes are to be interpreted differently depending on if the engine is sparkignition (e.g. Otto or Wankel engines) or compression ignition (e.g. Diesel engines). In the second (B) byte, bit 3 indicates how to interpret the C and D bytes, with 0 being spark (Otto or Wankel) and 1 (set) being compression (Diesel).

The bytes C and D for spark ignition monitors (e.g. Otto or Wankel engines):

Test availableTest incomplete
EGR SystemC7D7
Oxygen Sensor HeaterC6D6
Oxygen SensorC5D5
A/C RefrigerantC4D4
Secondary Air SystemC3D3
Evaporative SystemC2D2
Heated CatalystC1D1
CatalystC0D0

And the bytes C and D for compression ignition monitors (Diesel engines):

Test availableTest incomplete
EGR and/or VVT SystemC7D7
PM filter monitoringC6D6
Exhaust Gas SensorC5D5
- Reserved -C4D4
Boost PressureC3 D3
- Reserved -C2D2
NOx/SCR MonitorC1D1
NMHC Catalyst[a]C0D0
  1. ^NMHC may stand for Non-Methane HydroCarbons, but J1979 does not enlighten us. The translation would be the ammonia sensor in the SCR catalyst.

Service 01 PID 41[edit]

A request for this PID returns 4 bytes of data. The first byte is always zero. The second, third, and fourth bytes give information about the availability and completeness of certain on-board tests. As with PID 01, the third and fourth bytes are to be interpreted differently depending on the ignition type (B3) – with 0 being spark and 1 (set) being compression. Note again that test availability is represented by a set (1) bit and completeness is represented by a reset (0) bit.

Here are the common bit B definitions, they are test based.

Test availableTest incomplete
ComponentsB2B6
Fuel SystemB1B5
MisfireB0B4

The bytes C and D for spark ignition monitors (e.g. Otto or Wankel engines):

Test availableTest incomplete
EGR SystemC7D7
Oxygen Sensor HeaterC6D6
Oxygen SensorC5D5
A/C RefrigerantC4D4
Secondary Air SystemC3D3
Evaporative SystemC2D2
Heated CatalystC1D1
CatalystC0D0

And the bytes C and D for compression ignition monitors (Diesel engines):

Test availableTest incomplete
EGR and/or VVT SystemC7D7
PM filter monitoringC6D6
Exhaust Gas SensorC5D5
- Reserved -C4D4
Boost PressureC3 D3
- Reserved -C2D2
NOx/SCR MonitorC1D1
NMHC Catalyst[a]C0D0
  1. ^NMHC may stand for Non-Methane HydroCarbons, but J1979 does not enlighten us. The translation would be the ammonia sensor in the SCR catalyst.

Service 01 PID 78[edit]

A request for this PID will return 9 bytes of data.The first byte is a bit encoded field indicating which EGT sensors are supported:

ByteDescription
ASupported EGT sensors
B-CTemperature read by EGT11
D-ETemperature read by EGT12
F-GTemperature read by EGT13
H-ITemperature read by EGT14

The first byte is bit-encoded as follows:

BitDescription
A7-A4Reserved
A3EGT bank 1, sensor 4 Supported?
A2EGT bank 1, sensor 3 Supported?
A1EGT bank 1, sensor 2 Supported?
A0EGT bank 1, sensor 1 Supported?

The remaining bytes are 16 bit integers indicating the temperature in degrees Celsius in the range -40 to 6513.5 (scale 0.1), using the usual (A×256+B)/10−40{displaystyle (Atimes 256+B)/10-40} formula (MSB is A, LSB is B). Only values for which the corresponding sensor is supported are meaningful.

The same structure applies to PID 79, but values are for sensors of bank 2.

Service 03 (no PID required)[edit]

A request for this service returns a list of the DTCs that have been set. The list is encapsulated using the ISO 15765-2 protocol.

If there are two or fewer DTCs (4 bytes) they are returned in an ISO-TP Single Frame (SF). Three or more DTCs in the list are reported in multiple frames, with the exact count of frames dependent on the communication type and addressing details.

Each trouble code requires 2 bytes to describe. The text description of a trouble code may be decoded as follows. The first character in the trouble code is determined by the first two bits in the first byte:

A7-A6First DTC character
00P - Powertrain
01C - Chassis
10B - Body
11U - Network

The two following digits are encoded as 2 bits. The second character in the DTC is a number defined by the following table:

A5-A4Second DTC character
000
011
102
113

The third character in the DTC is a number defined by

A3-A0Third DTC character
00000
00011
00102
00113
01004
01015
01106
01117
10008
10019
1010A
1011B
1100C
1101D
1110E
1111F

The fourth and fifth characters are defined in the same way as the third, but using bits B7-B4 and B3-B0. The resulting five-character code should look something like 'U0158' and can be looked up in a table of OBD-II DTCs. Hexadecimal characters (0-9, A-F), while relatively rare, are allowed in the last 3 positions of the code itself.

Service 09 PID 08[edit]

It provides information about track in-use performance for catalyst banks, oxygen sensor banks, evaporative leak detection systems, EGR systems and secondary air system.

The numerator for each component or system tracks the number of times that all conditions necessary for a specific monitor to detect a malfunction have been encountered.The denominator for each component or system tracks the number of times that the vehicle has been operated in the specified conditions. Affinity photo 1 5 2 full crack mac os x.

The count of data items should be reported at the beginning (the first byte).

All data items of the In-use Performance Tracking record consist of two bytes and are reported in this order (each message contains two items, hence the message length is 4).

MnemonicDescription
OBDCONDOBD Monitoring Conditions Encountered Counts
IGNCNTRIgnition Counter
CATCOMP1Catalyst Monitor Completion Counts Bank 1
CATCOND1Catalyst Monitor Conditions Encountered Counts Bank 1
CATCOMP2Catalyst Monitor Completion Counts Bank 2
CATCOND2Catalyst Monitor Conditions Encountered Counts Bank 2
O2SCOMP1O2 Sensor Monitor Completion Counts Bank 1
O2SCOND1O2 Sensor Monitor Conditions Encountered Counts Bank 1
O2SCOMP2O2 Sensor Monitor Completion Counts Bank 2
O2SCOND2O2 Sensor Monitor Conditions Encountered Counts Bank 2
EGRCOMPEGR Monitor Completion Condition Counts
EGRCONDEGR Monitor Conditions Encountered Counts
AIRCOMPAIR Monitor Completion Condition Counts (Secondary Air)
AIRCONDAIR Monitor Conditions Encountered Counts (Secondary Air)
EVAPCOMPEVAP Monitor Completion Condition Counts
EVAPCONDEVAP Monitor Conditions Encountered Counts
SO2SCOMP1Secondary O2 Sensor Monitor Completion Counts Bank 1
SO2SCOND1Secondary O2 Sensor Monitor Conditions Encountered Counts Bank 1
SO2SCOMP2Secondary O2 Sensor Monitor Completion Counts Bank 2
SO2SCOND2Secondary O2 Sensor Monitor Conditions Encountered Counts Bank 2

Service 09 PID 0B[edit]

It provides information about track in-use performance for NMHC catalyst, NOx catalyst monitor, NOx adsorber monitor, PM filter monitor, exhaust gas sensor monitor, EGR/ VVT monitor, boost pressure monitor and fuel system monitor.

All data items consist of two bytes and are reported in this order (each message contains two items, hence message length is 4):

MnemonicDescription
OBDCONDOBD Monitoring Conditions Encountered Counts
IGNCNTRIgnition Counter
HCCATCOMPNMHC Catalyst Monitor Completion Condition Counts
HCCATCONDNMHC Catalyst Monitor Conditions Encountered Counts
NCATCOMPNOx/SCR Catalyst Monitor Completion Condition Counts
NCATCONDNOx/SCR Catalyst Monitor Conditions Encountered Counts
NADSCOMPNOx Adsorber Monitor Completion Condition Counts
NADSCONDNOx Adsorber Monitor Conditions Encountered Counts
PMCOMPPM Filter Monitor Completion Condition Counts
PMCONDPM Filter Monitor Conditions Encountered Counts
EGSCOMPExhaust Gas Sensor Monitor Completion Condition Counts
EGSCONDExhaust Gas Sensor Monitor Conditions Encountered Counts
EGRCOMPEGR and/or VVT Monitor Completion Condition Counts
EGRCONDEGR and/or VVT Monitor Conditions Encountered Counts
BPCOMPBoost Pressure Monitor Completion Condition Counts
BPCONDBoost Pressure Monitor Conditions Encountered Counts
FUELCOMPFuel Monitor Completion Condition Counts
FUELCONDFuel Monitor Conditions Encountered Counts

Enumerated PIDs[edit]

Some PIDs are to be interpreted specially, and aren't necessarily exactly bitwise encoded, or in any scale.The values for these PIDs are enumerated.

Service 01 PID 03[edit]

A request for this PID returns 2 bytes of data.The first byte describes fuel system #1.

ValueDescription
0The motor is off
1Open loop due to insufficient engine temperature
2Closed loop, using oxygen sensor feedback to determine fuel mix
4Open loop due to engine load OR fuel cut due to deceleration
8Open loop due to system failure
16Closed loop, using at least one oxygen sensor but there is a fault in the feedback system

Any other value is an invalid response.

The second byte describes fuel system #2 (if it exists) and is encoded identically to the first byte.

Service 01 PID 12[edit]

A request for this PID returns a single byte of data which describes the secondary air status.

ValueDescription
1Upstream
2Downstream of catalytic converter
4From the outside atmosphere or off
8Pump commanded on for diagnostics

Any other value is an invalid response.

Service 01 PID 1C[edit]

A request for this PID returns a single byte of data which describes which OBD standards this ECU was designed to comply with. The different values the data byte can hold are shown below, next to what they mean:

ValueDescription
1OBD-II as defined by the CARB
2OBD as defined by the EPA
3OBD and OBD-II
4OBD-I
5Not OBD compliant
6EOBD (Europe)
7EOBD and OBD-II
8EOBD and OBD
9EOBD, OBD and OBD II
10JOBD (Japan)
11JOBD and OBD II
12JOBD and EOBD
13JOBD, EOBD, and OBD II
14Reserved
15Reserved
16Reserved
17Engine Manufacturer Diagnostics (EMD)
18Engine Manufacturer Diagnostics Enhanced (EMD+)
19Heavy Duty On-Board Diagnostics (Child/Partial) (HD OBD-C)
20Heavy Duty On-Board Diagnostics (HD OBD)
21World Wide Harmonized OBD (WWH OBD)
22Reserved
23Heavy Duty Euro OBD Stage I without NOx control (HD EOBD-I)
24Heavy Duty Euro OBD Stage I with NOx control (HD EOBD-I N)
25Heavy Duty Euro OBD Stage II without NOx control (HD EOBD-II)
26Heavy Duty Euro OBD Stage II with NOx control (HD EOBD-II N)
27Reserved
28Brazil OBD Phase 1 (OBDBr-1)
29Brazil OBD Phase 2 (OBDBr-2)
30Korean OBD (KOBD)
31India OBD I (IOBD I)
32India OBD II (IOBD II)
33Heavy Duty Euro OBD Stage VI (HD EOBD-IV)
34-250Reserved
251-255Not available for assignment (SAE J1939 special meaning)

Fuel Type Coding[edit]

Service 01 PID 51 returns a value from an enumerated list giving the fuel type of the vehicle. The fuel type is returned as a single byte, and the value is given by the following table:

ValueDescription
0Not available
1Gasoline
2Methanol
3Ethanol
4Diesel
5LPG
6CNG
7Propane
8Electric
9Bifuel running Gasoline
10Bifuel running Methanol
11Bifuel running Ethanol
12Bifuel running LPG
13Bifuel running CNG
14Bifuel running Propane
15Bifuel running Electricity
16Bifuel running electric and combustion engine
17Hybrid gasoline
18Hybrid Ethanol
19Hybrid Diesel
20Hybrid Electric
21Hybrid running electric and combustion engine
22Hybrid Regenerative
23Bifuel running diesel


Any other value is reserved by ISO/SAE. There are currently no definitions for flexible-fuel vehicle.

Non-standard PIDs[edit]

The majority of all OBD-II PIDs in use are non-standard. For most modern vehicles, there are many more functions supported on the OBD-II interface than are covered by the standard PIDs, and there is relatively minor overlap between vehicle manufacturers for these non-standard PIDs.

There is very limited information available in the public domain for non-standard PIDs. The primary source of information on non-standard PIDs across different manufacturers is maintained by the US-based Equipment and Tool Institute and only available to members. The price of ETI membership for access to scan codes varies based on company size defined by annual sales of automotive tools and equipment in North America:

Annual Sales in North AmericaAnnual Dues
Under $10,000,000$5,000
$10,000,000 - $50,000,000$7,500
Greater than $50,000,000$10,000

However, even ETI membership will not provide full documentation for non-standard PIDs. ETI state:[7][8]

Some OEMs refuse to use ETI as a one-stop source of scan tool information. They prefer to do business with each tool company separately. These companies also require that you enter into a contract with them. The charges vary but here is a snapshot as of April 13th, 2015 of the per year charges:

GM$50,000
Honda$5,000
Suzuki$1,000
BMW$25,500 plus $2,000 per update. Updates occur annually.

CAN (11-bit) bus format[edit]

The PID query and response occurs on the vehicle's CAN bus. Standard OBD requests and responses use functional addresses. The diagnostic reader initiates a query using CAN ID 7DFh[clarification needed], which acts as a broadcast address, and accepts responses from any ID in the range 7E8h to 7EFh. ECUs that can respond to OBD queries listen both to the functional broadcast ID of 7DFh and one assigned ID in the range 7E0h to 7E7h. Their response has an ID of their assigned ID plus 8 e.g. 7E8h through 7EFh.

This approach allows up to eight ECUs, each independently responding to OBD queries. The diagnostic reader can use the ID in the ECU response frame to continue communication with a specific ECU. In particular, multi-frame communication requires a response to the specific ECU ID rather than to ID 7DFh.

CAN bus may also be used for communication beyond the standard OBD messages. Physical addressing uses particular CAN IDs for specific modules (e.g., 720h for the instrument cluster in Fords) with proprietary frame payloads.

Query[edit]

The functional PID query is sent to the vehicle on the CAN bus at ID 7DFh, using 8 data bytes. The bytes are:

Byte
PID Type01234567
SAE StandardNumber of
additional
data bytes:
2
Service
01 = show current data;
02 = freeze frame;
etc.
PID code
(e.g.: 05 = Engine coolant temperature)
not used
(ISO 15765-2 suggests CCh)
Vehicle specificNumber of
additional
data bytes:
3
Custom service: (e.g.: 22 = enhanced data)PID code
(e.g.: 4980h)
not used
(ISO 15765-2 suggests CCh)

Response[edit]

The vehicle responds to the PID query on the CAN bus with message IDs that depend on which module responded. Typically the engine or main ECU responds at ID 7E8h. Other modules, like the hybrid controller or battery controller in a Prius, respond at 07E9h, 07EAh, 07EBh, etc. These are 8h higher than the physical address the module responds to. Even though the number of bytes in the returned value is variable, the message uses 8 data bytes regardless (CAN bus protocol form Frameformat with 8 data bytes).The bytes are:

Byte
CAN Address01234567
SAE Standard
7E8h,
7E9h,
7EAh,
etc.
Number of
additional
data bytes:
3 to 6
Custom service
Same as query, except that 40h is added to the service value. So:
41h = show current data;
42h = freeze frame;
etc.
PID code
(e.g.: 05 = Engine coolant temperature)
value of the specified parameter, byte 0value, byte 1 (optional)value, byte 2 (optional)value, byte 3 (optional)not used
(may be 00h or 55h)
Vehicle specific
7E8h, or 8h + physical ID of module.
Number of
additional
data bytes:
4to 7
Custom service: same as query, except that 40h is added to the service value.(e.g.: 62h = response to service 22h request)PID code
(e.g.: 4980h)
value of the specified parameter, byte 0value, byte 1 (optional)value, byte 2 (optional)value, byte 3 (optional)
Vehicle specific
7E8h, or 8h + physical ID of module.
Number of
additional
data bytes:
3
7Fh this a general response usually indicating the module doesn't recognize the request.Custom service: (e.g.: 22h = enhanced diagnostic data by PID, 21h = enhanced data by offset)31hnot used
(may be 00h)

See also[edit]

  • ELM327, a very common microcontroller (silicon chip) used in OBD-II interfaces

References[edit]

  1. ^ ab'Basic Information | On-Board Diagnostics (OBD)'. US EPA. 16 March 2015. Retrieved 24 June 2015.
  2. ^'Escape PHEV TechInfo - PIDs'. Electric Auto Association - Plug in Hybrid Electric Vehicle. Retrieved 11 December 2013.
  3. ^ ab'Extended PID's - Signed Variables'. Torque-BHP. Retrieved 17 March 2016.
  4. ^ ab'Final Regulation Order'(PDF). US: California Air Resources Board. 2015. Retrieved 4 September 2021.
  5. ^'OBD2 Codes and Meanings'. Lithuania: Baltic Automotive Diagnostic Systems. Retrieved 11 June 2020.
  6. ^'OBD2 Freeze Frame Data: What is It? How To Read It?'. OBD Advisor. 2018-02-28. Retrieved 2020-03-14.
  7. ^'ETI Full Membership FAQ'. The Equipment and Tool Institute. Retrieved 29 November 2013. showing cost of access to OBD-II PID documentation
  8. ^'Special OEM License Requirements'. The Equipment and Tool Institute. Retrieved 13 April 2015.

Further reading[edit]

  • 'E/E Diagnostic Test Modes'. Vehicle E E System Diagnostic Standards Committee. SAE J1979. SAE International. 2017-02-16. doi:10.4271/J1979_201702.
  • 'Digital Annex of E/E Diagnostic Test Modes'. Vehicle E E System Diagnostic Standards Committee. SAE J1979-DA. SAE International. 2017-02-16. doi:10.4271/J1979DA_201702.
  • Wagner, Bernhard. 'The Lifecycle of a Diagnostic Trouble Code (DTC)'. KPIT. Germany. Retrieved 2020-08-29.
Retrieved from 'https://en.wikipedia.org/w/index.php?title=OBD-II_PIDs&oldid=1055139763'

A couple of months ago a friend showed me his BM2 Battery Monitor installed on his 420SEL. It is a bluetooth enabled battery monitor that connects to a phone app. The app lets you monitor the battery in real time, run some tests and download history from the battery monitor device.

I already have various battery testers which are useful for standalone battery testing. However, I didn't have a good way of checking the overall charging system of the cars. In particular, I have seen some strange behavior with the radios in my 250SE and Citroen DS that may be related to over or under charging.

I ordered the BM2 Battery Monitor devices a while back, and they finally arrived yesterday. I had the E-Type at my house this week, so thought I would try out one of the devices.

There are two apps you can choose from. The free app, that lets you connect to one Battery Monitor at a time, and a paid one that lets you connect to four. I started with the free app. You don't connect your phone directly to the BM2 battery monitor bluetooth, you start the app and give it permission to use the bluetooth device.

When I first connected the phone, it showed the current status of the battery in the car. As expected the battery was fairly low. The last drive was quite short, in the rain and dark.

When I started the car, I was able to use the cranking test which passed (as expected). Next, I tried the charging test. This is where the unit somewhat fails on older cars. According to the BM2 Battery monitor, the car wasn't running, so I couldn't start the test at idle. Its not really surprising as modern cars have very large alternators that provide plenty of amps even at idle. The E-Type has a 43 amp alternator. It doesn't produce a whole lot at idle. I was only able to start the test holding the revs above 2000. I imagine it would have even less luck on an older model equipped with a generator.

In any case it showed that once the revs were up, the alternator created plenty of current. This was even more apparent during normal driving where the Alternator was putting out plenty of power. I was seeing a regular 14.5-14.6 volts while driving.

Monitor 200

I did get an alarm at idle when the cooling fan was running and I switched on the headlights. Once I took off again there was plenty of power. The E-Type has pretty low power needs. During normal driving only the fuel pump, the ignition system and sometimes the cooling fan are drawing power.

I think this will work well to test the charging system of the 250SE and Citroen DS. I may even get a couple more to keep them on the older cars. It would be good if the app could be put in a mode where the screen does not turn off, as it could function as a temporary voltage gauge. The range is quite good as I was able to connect to the device from outside the garage.

Monit 2 09 17

Related Posts:





broken image