Results 1 to 3 of 3

Thread: More stuff.

  1. #1
    Tuner in Training
    Join Date
    Jan 2003
    Location
    Posts
    23

    More stuff.

    Ok, one thing to ignore is the 'packet formatting discussed'. Its for a specific cable not VPW. But the rest of the reading is good for you guys..

    --------------


    Vehicle Communication
    “Modes” of operation to read data, read trouble codes and clear trouble codes. Mode 1,2,3 and 4. This communication is described below.

    Mode 1
    Mode 1 - Read OBD-II data, format ‘MODE-PP-BC’ PP=Parameter Identification (PID), BC=byte count to be received by protocol converter. Remember that the received byte count is actually double the value because each byte is transmitted as two ASCII characters.

    PID 00 - return supported PID’s - send string ‘010009’ You would read 19 bytes, the V and the 18 ASCII characters which represent the 9 bytes response message.
    PID 00 returns four data bytes, 32 bits, where each bit represents a PID starting with PID 01, a ‘1’ indicates a supported PID and a ‘0’ represents a non-supported PID.
    Bytes 12-13 represent hex byte 1, 14-15 represent hex byte 2, 16-17 represent hex byte 3 and 18-19 represent hex byte 4.

    PID 01 - returns MIL status, send ‘010109’
    This PID returns two bytes of ODB test status
    receive 19 ASCII bytes


    Byte 1 -
    MIL Status -------x

    Byte 2 -
    Misfire support -------x
    Fuel support ------x-
    Component support -----0--
    Reserved ----x---
    Misfire status ---x----
    Fuel status --x-----
    Component status -x------
    Reserved status 0-------


    PID 02 - Get trouble codes – used by Mode2 only

    PID 03 - Get Fuel System status, send ‘010307’
    receive 15 bytes from this command
    returns two bytes, each bit is defined as follows:
    Byte 1 -- Fuel System 1
    open loop 1-------
    closed loop -1------
    open loop driving --1-----
    open loop fault ---1----
    closed loop fault ----1---

    Byte 2 -- Fuel System 2
    open loop 1-------
    closed loop -1------
    open loop driving --1-----
    open loop fault ---1----
    closed loop fault ----1---
    Fuel System 1 will be received as bytes 12-13 and Fuel system 2 as bytes 14-15 of the received data stream.

    PID 04 - Get Calculated Load - send string ‘010406’
    Receive 13 bytes
    Returns one byte response in location 12-13 of received data
    Calculated load% = b/255*100

    PID 05 - Get Coolant Temp.- send string ‘010506’
    Receive 13 bytes
    Returns one byte response in location 12-13 of received data
    coolant temp.C = b-40
    coolant temp.F= (b-40)*1.8+32

    PID 06 - Short term fuel trim bank 1 -send string ‘010606’
    Receive 13 bytes
    Returns one byte response in location 12-13 of received data
    short fuel trim bank1 = b/128*100-100 %

    PID 07 - Long term fuel trim bank 1 -send string ‘010706’
    Receive 13 bytes
    Returns one byte response in location 12-13 of received data
    long fuel trim bank1 = b/128*100-100 %

    PID 08 - Short term fuel trim bank 2 send string ‘010806’
    Receive 13 bytes
    Returns one byte response in location 12-13 of received data
    short fuel trim bank2 = b/128*100-100 %

    PID 09 - Long term fuel trim bank 2 -send string ‘010906’
    Receive 13 bytes
    Returns one byte response in location 12-13 of received data
    long fuel trim bank2 = b/128*100-100 %

    PID 0A - Get Fuel Pressure -send string ‘010A06’
    Receive 13 bytes
    Returns one byte response in location 12-13 of received data
    fuel pressure.Kpa = b
    fuel pres. psi = b*3*0.14504

    PID 0B - Get Manifold Air Pressure -send string ‘010B06’
    Receive 13 bytes
    Returns one byte response in location 12-13 of received data
    Manifold Pressure KPa = b
    Manifold Pressure PSI = b*.29613

    PID 0C - Get RPM - send string ‘010C07’
    Receive 15 bytes
    Returns two byte response in location 12-13 and 14-15 of received data
    RPM=((b1*256)+b2)/4D
    PID OD - Get Speed- send string ‘01040 Ù6’
    Receive 13 bytes
    Returns one byte response in location 12-13 of received data
    Speed Kph = b1
    Speed MPH = b1/.621

    PID 0E - Get Ignition Advance -send string ‘010E06’
    Receive 13 bytes
    Returns one byte response in location 12-13 of received data
    Ignition Advance Deg. = (b1/2)-64


  2. #2
    Tuner in Training
    Join Date
    Jan 2003
    Location
    Posts
    23

    dammit you and your message length limit!

    part 2
    -----

    PIF 0F - Get intake Air Temp -send string ‘010F06’
    Receive 13 bytes
    Returns one byte response in location 12-13 of received data
    Intake Air Temp. C= b-40
    Intake Air Temp F = (b-40)*1.8+32

    PID 10 - Get Air Flow - send string ‘011007’
    Receive 15 bytes
    Returns 2 bytes in location 12-13 and 14-15
    Air Flow gm/sec=((b1*256)+b2)/100

    PID 11 - Get Throttle Position
    Receive 13 bytes
    Returns one byte response in location 12-13 of received data
    Throttle % = b/255*100

    PID 12 - Get Commanded Secondary Air Status - send ‘011206’
    Receive 13 bytes
    Returns one byte response in location 12-13 of received data
    bits defined as follows:
    air upstream cat 1-------
    air downstream ca -1------
    air off --1-----
    air reserved ---00000


    PID 13 - Get O2 Sensor location send ‘011306’
    Receive 13 bytes
    Returns one byte response in location 12-13 of received data
    bits defined as follows:

    O2 location 1-1 1xxxxxxx
    O2 location 1-2 x1xxxxxx
    O2 location 1-3 xx1xxxxx
    O2 location 1-4 xxx1xxxx
    O2 location 2-1 xxxx1xxx
    O2 location 2-2 xxxxx1xx
    O2 location 2-3 xxxxxx1x
    O2 location 2-4 xxxxxxx1

    O2 sensor 7 voltage = b/200

    PID 1B - Get O2 sensor 8 voltage -send ‘011B06’
    Receive 13 bytes
    Returns one byte response in location 12-13 of received data
    O2 sensor 8 voltage = b/200

    PID 1C - Get OBD type -send ‘011C06’

    Receive 13 bytes
    Returns one byte response in location 12-13 of received data Receive 13 bytes
    Returns one byte response in location 12-13 of received data

    OBDII CARB 10000000
    OBD Fed 01000000
    OBDII and OBD 11100000
    OBD I 00100000
    None 00110000


    PID 1D - Get O2 sensor locations - 7 same as PID 13
    Receive 13 bytes
    Returns one byte response in location 12-13 of received data
    O2 location 1-1 1xxxxxxx
    O2 location 1-2 x1xxxxxx
    O2 location 2-1 xx1xxxxx
    O2 location 2-2 xxx1xxxx
    O2 location 3-1 xxxx1xxx
    O2 location 3-2 xxxxx1xx
    O2 location 4-1 xxxxxx1x
    O2 location 4-2 xxxxxxx1


    Mode 2 – Read Freeze Frame Data
    Mode 2 - Read OBD-II Freeze Frame data, format ‘MODE-PP-BC’ PP=Parameter Identification (PID), BC=byte count to be received by protocol converter. Remember that the received byte count is actually double the value because each byte is transmitted as two ASCII characters.

    PID 00 - return supported PID’s - send string ‘02000A’ You would read 21 bytes, the V and the 20 ASCII characters which represent the 9 bytes response message.
    PID 00 returns four data bytes, 32 bits, where each bit represents a PID starting with PID 01, a ‘1’ indicates a supported PID and a ‘0’ represents a non-supported PID.
    Bytes 14,15 represent hex byte 1, 16,17 represent hex byte 2, 18,19 represent hex byte 3 and 20,21 represent hex byte 4.
    Other than the above differences, Mode2 operates like Mode1.


    Mode 3 – Read Trouble Codes

    Mode 3 - Read OBD-II Trouble Codes, format ‘MODE-PP-BC’ PP=Parameter Identification (PID), BC=byte count to be received by protocol converter. Remember that the received byte count is actually double the value because each byte is transmitted as two ASCII characters.

    Send string ‘03000A’ You would read 21 bytes, the V and the 20 ASCII characters which represent the 10 bytes response message. There are three trouble code values packed into the response. They are sent as 12 ASCII characters, starting with byte 10 of the received string, as shown below. Each trouble code consists of four characters.




    In the above figure there is one trouble code which is P0125, as all powertrain trouble codes always start with P. There are other trouble codes for Chassis and Body computers but these are outside of the OBD-II requirements. If the first digit of the trouble code is not 0 then the code is a manufacturer.

    Mode 4 – Clear Trouble Codes and Turn off the MIL

    Mode 4 - Clear Trouble Codes, format ‘MODE-PP-BC’ PP=Parameter Identification (PID), BC=byte count to be received by protocol converter. Remember that the received byte count is actually double the value because each byte is transmitted as two ASCII characters.

    Send string ‘040004’ You would read 9 bytes, the V and the 8 ASCII characters which represent the 2 bytes response message.


  3. #3

    Re: More stuff.

    is the &# supposed to be sent? I dont recall ever seeing that before..
    Business Network Solutions - for all your PC, network, printer and computer security needs.