Results 1 to 11 of 11

Thread: GM PIDs

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1
    Fuel Injected!
    Join Date
    Jan 2019
    Location
    Canada
    Posts
    477

    GM PIDs

    I am trying to find definition for the PIDs my ECM responds to. I have a list, but going backwards to figure out each one is quite time consuming. It would be great if you could give me a boost with my project.
    Here is the table of supported PIDs for a 5.7 LT1 96/7 vintage... Some are easy to find, defined in the standards but others are defined by GM and I just can't find a list. All help appreciated. I will publish result
    once complete to this thread.

    -Tom

    * SAE J1979 ASSIGNMENTS
    PID
    | NUMBER OF BYTES:00
    | | LOCATION OR ROUTINE
    | | |
    E484 0000 0000 0000 ;
    0000 0400 42E4 ; SUPPORTED PID $01 - $20, BIT MAP FLASH CONST $BFBFF990
    0001 0400 DFC8 ; NUMBER OF EMISSION-RELATED TROUBLE CODES AND MIL STATUS
    0003 0200 DFE2 ; FUEL SYSTEM STATUS:
    0004 0100 DFE8 ; CALCULATED LOAD VALUE: 0% TO 100%
    0005 0100 01D5 ; ENGINE COOLANT TEMPERATURE: -40C TO 215C
    0006 0100 016B ; LEFT SHORT TERM FUEL TRIM: -100% (LEAN) TO 99.22% (RICH)
    0007 0100 016E ; LEFT LONG TERM FUEL TRIM: -100% (LEAN) TO 99.22% (RICH)
    0008 0100 016A ; RIGHT SHORT TERM FUEL TRIM: -100% (LEAN) TO 99.22% (RICH)
    0009 0100 016F ; RIGHT LONG TERM FUEL TRIM: -100% (LEAN) TO 99.22% (RICH)
    000B 0100 01D7 ; MANAFOLD ABSOLUTE PRESSURE: 0KPA TO 255KPA
    000C 0200 01D0 ; ENGINE RPM HIGH RES (RPM X 4): 0 TO 16383.75 RPM
    000D 0100 01D2 ; SPEED IN KPH: 0 TO 255 KPH
    000E 0100 E001 ; ROUTINE: IGNITION TIMING: -64 TO +63.5 DEGREES
    000F 0100 01D6 ; INTAKE AIR TEMPERATURE: -40C TO 215C
    0010 0200 01D3 ; MASS AIR FLOW: G/SEC 0GM/S TO 655.35GM/S
    0011 0100 01CF ; THROTTLE POSITION SENSOR: 0% TO 100%
    0012 0100 E015 ; ROUTINE: COMMANDED SECOND AIR:
    0013 0100 E023 ; ROUTINE: O2 SENSOR CONFIGURATION: $33 = 2 SENSORS/BANK
    0014 0200 E028 ; ROUTINE: O2 B1S1 VOLTAGE: 0 TO 1 VOLT: SHORT TERM FUEL TRIM
    0015 0200 E043 ; ROUTINE: O2 B1S2 VOLTAGE: 0 TO 1 VOLT: $FF
    0018 0200 E05D ; ROUTINE: O2 B2S1 VOLTAGE: 0 TO 1 VOLT: SHORT TERM FUEL TRIM
    0019 0200 E078 ; ROUTINE: O2 B2S2 VOLTAGE: 0 TO 1 VOLT: $FF
    001C 0100 E092 ; OBD II TYPE: $01

    E514 1104 0100 E097 ; ROUTINE:LMP STAT
    1105 0100 E0CE ; ROUTINE:fuel stat
    1106 0100 E102 ; ROUTINE:contingent ?VTD Fuel Disable
    1107 0100 E12D ; ROUTINE:misc stat ?Throttle at Idle
    1108 0100 E172 ; ROUTINE:
    1109 0100 E1AC ; ROUTINE:
    110A 0100 E1EE ; ROUTINE:
    110C 0100 1E02 ; qdasro air
    110D 0100 1E03 ; qdasr1 air
    110E 0100 1E04 ; qdasr2 air
    110F 0100 1E76 ; MWSPIN2

    1110 0100 1E77 ;
    1111 0100 008F ; OCTAL DRIVER 0 STATUS
    1112 0100 0090 ; OCTAL DRIVER 0 STATUS
    1113 0100 0091 ; OCTAL DRIVER 1 STATUS
    1114 0100 0092 ; OCTAL DRIVER 1 STATUS
    1115 0100 0093 ; OCTAL DRIVER 1 STATUS
    1116 0100 0094 ; OCTAL DRIVER 2 STATUS

    1140 0200 025C ; MAF AIR FLOW g/sec 0-512
    1141 0100 0117 ; IGNITION VOLTAGE VALUE/10
    1142 0100 0108 ; MAP?map kpa 122-10
    1143 0100 0107 ; THROTTLE POSITION SENSOR VOLTS 5.12-0
    1144 0100 0102 ; AC?ac pressure volts 5.1-0 AC Hi Side Pressure
    1145 0100 0124 ; O2 main BANK1S1 ho2 0-1.107V
    E5A4 1146 0100 0128 ; O2 post BANK1S2 ho2 0-1.107V
    1148 0100 0126 ; O2 main BANK2S1 ho2 0-1.107V
    1149 0100 012A ; O2 post BANK2S2 ho2 0-1.107V
    1151 0100 0182 ; TPS LINEAR? NRMLZD TPS tps angle 100-0%
    115E 0100 1826 ; CAM REF ACT cam engine spd

    116F 0100 E22E ; ROUTINE: STARTUP ECT

    1170 0100 0235 ; EVAP CANISTER PURGE PWM(range 0 - 100%)
    1171 0100 0242 ; EGR DUTY CYCLE (range 0 - 100%)
    1176 0100 181F ; LEARNED IAC POSITION
    1179 0100 181E ; IAC POSITION
    1190 0100 0170 ; CURRENT BLM CELL IN CONTROL OF FUEL
    1192 0100 013A ; TARGET IDLE RPM: RANGE 0-3200
    119D 0100 1821 ; BAROMETRIC PRESSURE (SAMPLE AT KEY ON AND WOT)
    119E 0100 0249 ; TARGET AIR FUEL RATIO (range 0 - 25.5:1)

    11A1 0200 004A ; ENGINE RUN TIME(range 0-65K) "((A*256)+B)/60", 0, 999, "Mins"
    11A3 0100 0259 ; CALCULATED CATALYTIC TEMPERATURE (RANGE 0 - 2040C)
    11BD 0100 1BD3 ; dcltrp spl ?? EGR TEST COUNTS
    11C0 0100 1BD1 ;
    11C2 0100 1BCA ; cruz smpl
    11C4 0100 1BC8 ;
    11D5 0100 1BBA ; b1s102lnav bk1 o21 ml MEDIAN LEFT?
    11D7 0200 1DE2 ; b1s1 o2rse
    11D8 0100 1B43 ; #devsmpls
    11DD 0100 1BBC ; b2s102lnav bk2 o21 ml
    11DE 0100 1BB9 ; b1s1o2rhav bk1 o21 mr RIGHT H AVERAGE
    11E0 0100 1BBB ; b2s1o2rhav bk2 o21 mr
    11E3 0200 01E0 ; TIMER TICKS BETWEEN LOW RES INTS

    11E4 0200 0278 ; pp mf delt msf 1st pk
    11E6 0200 0272 ; balancedtm msf bal tm MSF = MISFIRE
    11E9 0100 0277 ; mfcylidsts msf cur st
    11EA 0100 027C ; CURRENT MISFIRE CYLINDER 5
    11EB 0100 027B ; CURRENT MISFIRE CYLINDER 6
    11EC 0100 027D ; CURRENT MISFIRE CYLINDER 7
    11ED 0100 0280 ; CURRENT MISFIRE CYLINDER 8
    11F3 0100 0274 ; msf inst v
    11F8 0200 0286 ; HISTORY MISFIRE CYLINDER 5
    11F9 0200 0284 ; HISTORY MISFIRE CYLINDER 6
    11FA 0200 0288 ; HISTORY MISFIRE CYLINDER 7
    11FB 0200 028E ; HISTORY MISFIRE CYLINDER 8

    1200 0100 0276 ; totmisfire msf hst st
    1201 0200 028C ; CURRENT MISFIRE CYLINDER 1
    1202 0200 028A ; CURRENT MISFIRE CYLINDER 2
    1203 0200 0282 ; CURRENT MISFIRE CYLINDER 3
    1204 0200 0290 ; CURRENT MISFIRE CYLINDER 4
    1205 0100 027E ; HISTORY MISFIRE CYLINDER 2
    1206 0100 027F ; HISTORY MISFIRE CYLINDER 1
    1207 0100 027A ; HISTORY MISFIRE CYLINDER 3
    1208 0100 0281 ; HISTORY MISFIRE CYLINDER 4

    120A 0100 1E5F ;
    120B 0100 1E61 ;
    120C 0100 1E60 ;
    1212 0100 1DEE ; o2f-rt rat b1s1 rl:lr
    1216 0200 1DFB ; o2fallb2s1 b2s1 lr sw
    1217 0200 1DF5 ; o2riseb2s1 b2s1 rl sw
    121A 0200 1DE8 ; o2fallb1s1 b1s1 rl sw
    121C 0100 1D9C ; b1s2o2bias
    121D 0100 1D91 ; b1s1o2bias b1s1 bias
    1221 0200 191A ; dev cntrl $ae overrd (?TP Sensors 1,2 Performance -A?)
    1226 0100 1DA7 ; b1s2o2bias b2s1 bias
    1227 0200 0292 ; TOTAL MISFIRE TEST CYCLES FAILED
    1228 0200 0294 ; TOTAL MISFIRE TEST CYCLES PASSED
    122A 0100 0275 ; MISFIRE cycles

    1232 0100 1B2A ; COUNT OF... CYLW/OEMFT cyc wo e.f. CYCLES WITHOUT EMISSIONS RELATED FAILURE
    1233 0100 1B2B ; COUNT OF... CYLW/ONEMF

    1234 0200 1B2D ; malf odo MILAGE SINCE MIL REQUEST
    1235 0200 1B19 ; fc 1st odo MILEAGE SINCE FIRST FAILURE
    1236 0200 1B1B ; fc last odo MILEAGE SINCE LAST FAILURE
    1237 0100 1B1D ; fc fld cntr
    1238 0100 1B1E ; fc psd cntr
    1239 0100 1B1F ; fcnoruncnt ? FC NO RUN COUNT
    123A 0100 1E62 ;
    123B 0100 0162 ; RPM/25
    123C 0100 1DB2 ; b2s2 bias
    123D 0200 1DB4 ; b2s2 tuact
    123F 0200 1DE4 ; b1s1o2rtac b1s1 lr tt
    1240 0200 1DF7 ; b2s1o2rtac b2s1 lr tt
    1241 0200 1DEA ; b1s1o2ftac b1s1 rl tt
    1242 0200 1DFD ; b2s1o2ftac b2s1 rl tt
    1243 0200 1DE6 ; b1s1avgrt b1s1 l/rav
    1244 0200 1DF9 ; b2s1avgrt b2s1 l/rav
    1245 0200 1DEC ; B1S1AVGFT b1s1 r/lav
    1246 0200 1DFF ; B2S1AVGFT b2s1 r/lav
    1247 0100 1E01 ; ft-rt ratio b2s1 rl:lr
    1248 0100 1B44 ; avgdevdiff b1 l devdf
    1249 0100 1B4C ; b2 l devdf
    124A 0100 1B48 ; fltdevdiff b1 2fdevdf
    124B 0100 1B50 ; b2 2fdevdf
    124D 0100 1B4B ;
    124E 0100 1B47 ; #ewma smpl
    1257 0200 1D93 ; b1s1 tuact
    1258 0200 1D9E ; b1s2 tuact
    1259 0200 1DA9 ; b2s1 tuact
    125A 0200 025E ; INJECTOR PW BANK1 AVERAGE BPLS
    125B 0200 0266 ; INJECTOR PW BANK2 AVERAGE BPLS
    125D 0100 0252 ; KNOCK RETARD
    125E 0200 0243 ; KNOCK COUNT
    125F 0100 1DA1 ; b1s1 aaflw
    1260 0100 1B4F ;
    1261 0100 01FA ; SCI COMMAND ID

    LEFT BLOCK LEARN
    1262 0100 1B55 ;
    1263 0100 1B56 ;
    1264 0100 1B57 ;
    1265 0100 1B58 ;
    1266 0100 1B59 ;
    1267 0100 1B5A ;
    1268 0100 1B5B ;
    1269 0100 1B5C ;
    126A 0100 1B5D ;
    126B 0100 1B5E ;

    RIGHT BLOCK LEARN
    126C 0100 1B5F ;
    126D 0100 1B60 ;
    126E 0100 1B61 ;
    126F 0100 1B62 ;
    1270 0100 1B63 ;
    1271 0100 1B64 ;
    1272 0100 1B65 ;
    1273 0100 1B66 ;
    1274 0100 1B67 ;
    1275 0100 1B68 ;

    1276 0200 0257 ; ckp ratio ? CRANKSHAFT POSITION SENSOR LOW RESOLUTION ANGLE
    1277 0200 024F ; ckp eng sp

    1278 0100 1D96 ; b1s1 aaflw
    1279 0100 1DAC ; b2s1 aaflw

    127A 0100 1DB7 ; b2s2 aaflw

    127C 0100 1E1F ;
    127D 0100 1E20 ;
    127E 0100 1E21 ; COUNT
    127F 0100 1E22 ; COUNT

    1280 0100 1E0F ;
    1281 0100 1E10 ;
    1282 0100 1E17 ;
    1283 0100 1E19 ;
    1284 0100 1E16 ;
    1285 0100 1E18 ;
    1286 0100 1E13 ;
    1287 0100 1E0E ;
    1288 0100 1E0A ;
    1289 0100 1E0B ;
    128A 0100 1E28 ;
    128B 0100 1E29 ;
    128C 0100 1E2A ;
    128D 0100 1E2B ;
    128E 0100 1E82 ;
    12BE 0200 1BD6 ;
    12BF 0200 1BCD ;
    12C0 0200 1BCF ;
    12C1 0200 1BD8 ;

    1601 0100 E23A ; ROUTINE: AIR COND EVAP TEMP? evap temp
    1602 0100 01C8 ;

    1920 0100 E24F ; ROUTINE: STATUS BITS OF OCTAL DRIVERS
    1921 0100 E27D ; ROUTINE: STATUS BITS OF OCTAL DRIVERS
    1922 0100 E2A5 ; ROUTINE:
    1923 0100 E2B2 ; ROUTINE:
    1924 0100 E2C5 ; ROUTINE:
    1925 0100 E2FC ; ROUTINE:
    1926 0100 00CB ; tcc mode
    1927 0100 00BD ;
    1928 0100 00BE ;
    1929 0100 E32A ; ROUTINE:
    192A 0100 00CF ;
    192B 0100 E337 ; ROUTINE: tccoffrsns
    192C 0100 00E1 ; trans range
    1941 0200 1D56 ; turb speed INPUT SHAFT SPEED
    1942 0200 1D67 ; no OUTPUT SHAFT SPEED
    1970 0100 180D ; PWM OUTPUT 2 tcc dc
    1971 0100 0241 ; dspresbias 3-2 DOWNSDC
    1972 0100 1D1B ; fm dc FORCE MTR D.C.
    1991 0200 1D7E ; tcc slip
    1992 0100 1D74 ; lasttime ? LAST SHIFT TIME
    1993 0100 1D05 ; 1-2 SHIFT TIME
    1994 0100 1D06 ; 2-3 SHIFT TIME
    1995 0100 1D07 ; 3-4 SHIFT TIME
    1996 0100 1D75 ; last error
    1997 0100 1D08 ; 1-2 SHIFT ERROR
    1998 0100 1D09 ; 2-3 SHIFT ERROR
    1999 0100 1D0A ; 3-4 SHIFT ERROR
    199B 0100 1D17 ; curradpmod ADAPT CELL
    199C 0100 1D18 ; currcell# ADAPT MEM
    199D 0100 1D7A ; VBS pressure
    199E 0100 1D1E ; act fm cur VBS CURRENT PC Solenoid Actual Current
    199F 0100 1D1D ; des fm cur VBSCOMCRNT PC Solenoid Reference Current
    19A0 0100 1D72 ; shift delay
    19AD 0100 0118 ; RAW AUTO TRANS TEMP trantmpa/d
    19F3 0100 03DB ; trns oil temp
    19F4 0200 039A ; box ratio
    19F5 0100 1D71 ; gear

    1A01 0200 1D3B ;

    FC00 0200 201F ; FLASH CONST $0A 02 sw id
    FC01 0400 2017 ; FLASH CONST $16 23 63 11 cal id
    FC02 0100 0108 ; RAW MAP
    FC05 0100 0242 ; EGR PWM DUTY CYCLE
    FC1F 0400 0024 ; LEFT BLMS 0- 950 RPM GROUP
    FC20 0400 0028 ; LEFT BLMS 950-1300 RPM GROUP
    FC21 0400 002C ; LEFT BLMS 1300-2000 RPM GROUP
    FC22 0400 0030 ; LEFT BLMS 2000 & UP RPM GROUP
    FC23 0300 0034 ;
    FC24 0400 0037 ; RIGHT BLMS 0- 950 RPM GROUP
    FC25 0400 003B ; RIGHT BLMS 950-1300 RPM GROUP
    FC26 0400 003F ; RIGHT BLMS 1300-2000 RPM GROUP
    FC27 0400 0043 ; RIGHT BLMS 2000 & UP RPM GROUP
    FC28 0300 0047 ;

    EA5A 0000 0000 0000 ;
    0000 0400 42E8 ; SUPPORTED PID $21 - $40 BIT MAP FLASH CONST $7FB98000
    0002 0200 1B02 ; FREEZE DATA T5 BYTE 5
    0003 0200 1B15 ; FREEZE DATA T5 BYTE 18
    0004 0100 1B20 ; JUST AFTER FREEZE DATA T5
    0005 0100 1B07 ; T5 BYTE A
    0006 0100 1B0E ;
    0007 0100 1B10 ;
    0008 0100 1B0F ;
    0009 0100 1B11 ;
    000B 0100 1B12 ;
    000C 0200 1B13 ;
    000D 0100 1B18 ;
    0010 0200 1B05 ;
    0011 0100 1B17 ;

  2. #2
    Fuel Injected!
    Join Date
    Jan 2018
    Posts
    57
    Thanks so much for posting this. I've been wanting to write a data logger for a while now, and this is a HUGE help.

    Between this and an ADX file that I came across (which seems to show how to create multi-PID packets) I think I'm finally actually ready to start.

    I don't have anything to add to this table, but I sure am going to use it.
    Last edited by NSFW; 08-23-2019 at 11:15 AM.

  3. #3
    Fuel Injected!
    Join Date
    Jan 2019
    Location
    Canada
    Posts
    477
    Hi NSFW,

    I am still working away on the code, also interested in what you are doing. Is the ADX file something you could share with us?

    Cheers -Tom

  4. #4
    Fuel Injected!
    Join Date
    Jan 2018
    Posts
    57
    The ADX file I've been looking at is in this thread:

    https://pcmhacking.net/forums/viewtopic.php?f=42&t=6269

    It's attached to a message from 160plus, I think it's the 20th message it the thread. The file name is "AVT Change DPID format_NowMucFaster.adx" but I have to admit I haven't actually tried to use it with Tuner Pro.

    The AVT data format has very little extra data beyond the bytes that over the OBD2 connection (just one leading byte, I think) and there are some comments in the file, and between those two things, I think can see how the protocol works. I've started writing code based on that, but I haven't gotten to the point where I can test it yet.

  5. #5
    Fuel Injected!
    Join Date
    Jan 2020
    Posts
    31
    How are the values for 1192 interpreted? The tables shows that it returns 1 byte, but the description says that it ranges from 0-3200. Maybe a 12.5 times the byte value?

  6. #6
    Fuel Injected!
    Join Date
    Jan 2019
    Location
    Canada
    Posts
    477
    Quote Originally Posted by ColPaul View Post
    How are the values for 1192 interpreted? The tables shows that it returns 1 byte, but the description says that it ranges from 0-3200. Maybe a 12.5 times the byte value?
    It's been a long time since I looked at this... The value for PID1192 is returned in a single byte from location $013A in the TSide internal RAM. I believe it is tested against rpm/12.5 as you suggest. Here is a snip o code I found from some earlier work...

    Code:
    52A1  B6 01 64        LDAA   $0164        ; RPM/12.5 AVERAGE
    52A4  B1 01 3A        CMPA   $013A        ; TARGET IDLE RPM: RANGE 0-3200
    52A7  22 05           BHI    $52AE        ; BRANCH IDLE ABOVE TARGET
    
    52A9  20 18           BRA    $52C3        ; IDLE <= TARGET
    -Tom

  7. #7
    Fuel Injected!
    Join Date
    Jan 2018
    Posts
    57
    Quote Originally Posted by Tom H View Post
    Hi NSFW,

    I am still working away on the code, also interested in what you are doing. Is the ADX file something you could share with us?

    Cheers -Tom
    If you're still interested, my code is here: http://pcmhammer.org
    The relevant stuff is in the PcmLibrary\Logging folder.
    Under the Apps folder there's a PcmLogger app for Windows.

    The last known-good release is available in a zip file at GitHub, and I'm hoping to do another release soon that will fix a couple of minor bugs and will add a few more parameters - some of which I poached from the list you posted above. :)

  8. #8
    Fuel Injected!
    Join Date
    Jan 2020
    Posts
    31
    Thanks everyone for all the help. I got OBD Fusion with user PIDs working on Dad's iPad to log. One of the PIDs that's missing is $199D. I added that but don't know how to interpret the results. I currently just using the default conversion of (A * 256 + B) to convert hex to decimal output.

  9. #9
    Fuel Injected!
    Join Date
    Jan 2020
    Posts
    31
    I tested today and evidently it returns a single byte (vs 2 byte). Very spurious results with iOS and OBD Fusion.

Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •