More PIDs for Torque App

OP
OP
T

TJBaker57

Well-Known Member
I have found the following to be INCORRECT.

Having gathered more data logs and observations I believe PID 1120 Bit 0 to be related to fuel status, as are other bits of PID 1120, but not a true indicator of Loop status as it does not follow true with pid 0103 which is defined as the standard for Fuel Status in SAE Standard J1979.


Name = Loop Status
PID = 221120
Scale = x1
Units =
Equation = Lookup(Bit(A:0)::0='Open':1='Closed')
Header = Auto
 
OP
OP
T

TJBaker57

Well-Known Member
A little more on that Loop Status PID...

I did a couple test drives with the Tech2. Also checked and verified that the Tech2 does not load the fuel status "standard pid" of 0103 at all. So it is using something else, maybe the bit I am questioning. What I discovered yesterday is that the Tech2 reports closed loop operation even when in power enrichment or full decel with injector shutoff! This is the same behaviour my previously reported PID with Lookup(Bit) does. The standard fuel status pid of 0103 (that's what Torque displays as fuel status) indicates open loop at these times.

Anyone have ideas why this would be this way??

I plan to have another look at the data I recorded to check Fuel Trim Cell and Fuel Trim Index at the time of power enrichment and decel with injector cutoff to see if there are clues there.

Screenshot_20190911-204927.pngScreenshot_20190911-204624.png


Edit: just found this...

So others have seen this also.
 
Last edited:

Mektek

Well-Known Member
the error is "pid is too long, can be 3 bytes (6hex characters only) but it only appears after I click OK.
So when I enter 22114401 and OK in the obd2 mode line that is the message that pops up.
Without the 01 appended it works fine.
I have an 02 like you. The torque scan and track recorder add on installed.
One thing I'm thinking is that I have the "faster communication" option ticked in the adapter settings. Maybe that sends the 01 automatically?
 
OP
OP
T

TJBaker57

Well-Known Member
Been quiet here for a while...

I've been noodling about getting PIDs from modules that don't support the service that Torque uses for calling up PIDs. Modules like the TCCM (node 1A) and the HVAC (node 98). At least in 2002 these modules do not support service 22 requests so Torque can not access these PIDs.

I also got sort of mired down with just too many PIDs, bits, equations, spreadsheets, and so on that I needed a break and a regrouping. Still working on that..

But here is something that came up in another thread.....Crank Request. It is another bitmapped value of PID 1131 where I also found one of several 'Park/Neutral' indicators. When the key is turned to the start position I observe 4 bits from the return byte of this PID go high, #0,#1,#3,#4. If I shift to a drive gear and turn to start position only bit 4 goes high. I believe this to be the signal voltage from the ignition switch through the crank fuse to the PCM and further look at this as 'Crank Request' input to the PCM. That's my current (no pun intended) theory at least.

Name = ~Crank Request
PID= 221131
Scale= x1
Units =
Equation =Lookup(Bit(A:4)::0='OFF':1='CRANK_REQ')
Header = Auto

In .csv format:
"~Crank Request (1131 bit 4)","Crank_Req","0x221131","Lookup(Bit(A:4)::0='OFF':1='CRANK_REQ')",0,1,"","Auto","","1",1
 

MRRSM

Lifetime VIP Supporter
FWIW...

Without knowing whether or not PID Developments will help with creating Bi-Directional Tests (Such as Speedometer Sweeps and Dash Panel Lights) ...or if it can even can be achieved using the Torque APP... The Linked Video below and the related Screen Still Shots and Diagrams demonstrate how to Make and Wire up a Simple OBD2 Connector Harness to work in conjunction with any Blue Tooth ODB2 Scanner.

For
those WITH Bi-Directional Testing capabilities... This will work for the purposes of Pulling, Repairing and then Bench Testing the IPCs (Instrument Panel Cluster)s for GM and GMC Trucks and SUVs WITHOUT having to run back and forth to the Vehicle(s) and Test the Repairs and Functionality:


IPCLUSTERLAYOUT1.jpgIPCLUSTERLAYOUT2.jpgIPCLUSTERLAYOUT3.jpgIPCLUSTERLAYOUT4.jpgIPCLUSTERLAYOUT5.jpgIPCLUSTERLAYOUT6.jpgIPCLUSTERLAYOUT7.jpgIPCLUSTERLAYOUT8.jpgIPCLUSTERLAYOUT9.jpgIPCLUSTERLAYOUT10.jpg
 
OP
OP
T

TJBaker57

Well-Known Member
So in another recent thread here the possibility of a bad steering wheel position sensor was mentioned. My 02 TrailBlazer has no stabilitrak or such and thus has no steering sensor that I know of but my 05 Yukon does. I isolated this PID for the sensor.

Can someone try this out on a TrailBlazer to see if it is the same as my Yukon?

Name = Steering Wheel Sensor
PID = 222121
Scale = x1
Units = Volts
Header = Auto
Equation = A/255 * 5
 

YUKON87

Member
TFP Switch A/B/C. (Post #17, top left gauge) A couple of days ago I had little idea of what this was. Transmission Fluid Pressure manual valve position switch. Do what now??

I googled the term and came up with a diagram and an understanding of the switch and its output and in working these data streams I managed to match the switch output to PID 1951, bits 5, 6, and 7, in the order A, B, and C. (Thank goodness for spreadsheets) For a display I match the decimal equivalent of these 3 bits and substitute text indicating the positions as we would see them such as Park/Neutral, Drive, Reverse and so on.
This switch cannot distinguish between Park or Neutral as the valve body pressures are the same in these 2 positions. (Or so I've read)
Could this be useful somehow? I have no idea, but I found it and it works to display the switch position, if not the individual channels of A, B, or C. This switch will not indicate changes in transmission selection without the presence of fluid pressure so if one shifts through the selections with the engine off no change is seen of course.

Name = Transmission Fluid Pressure Switch A/B/C
PID = 221951(append 01 for faster response in Torque)
Scale = x1
Units =Bit Mapped
Equation = Lookup(A>5::5='P/N':4='Reverse':1='Drive':3='3rd':7='2nd':6='1st')
Header = Auto

Previously I have posted a PID for Park/Neutral as 221131, bit 2. That PID/bit does indeed indicate Park/Neutral as a value of 1 and all else as 0. That PID 221131 also contains things like crank request, starter relay command and a couple of other items I have yet to even hazard a guess. I have to remind myself that we are not in fact seeing the actual switch data. The PCM is seeing that information and outputting these PIDs that we then call up. I can only make logical guesses at where the PCM is getting its information based on testing and watching the data streams. I see that P/N as displayed by PID 221131 bit 2 changes without the engine running so it is not a derivative of the TFP switch. So where does it come from?

Transmission Range Switch A/B/C/P ?? (Post #17, center left gauge) Again I say "Do what now?" More tests, more googling, more noodling around and I find this switch is also represented in PID 1951 as bits 0,1,2, and 3. It has 4 switch outputs and through combinations represent all positions including separate park and neutral indications. I believe this to be a switch on the drivers side of the transmission. Since this has separate park and neutral indications it doesn't look like a candidate for the source of the 221131 bit 2 P/N indicator. I may never know what is that source so I will move on knowing only that it does appear to indicate P/N, if not an actual switch position. To further muddy the waters there is also a previously unmentioned PID 221920 (seen in post #17, bottom left gauge) that also displays a Transmission Selection with a single bit (#1 thru 7) each representing one of 7 positions, P,R,N,D,3,2,1. Confused yet?? I can tell you I am! I am currently wondering if this PID 221920 is for use by the Instrument Cluster for the display there.

Back to that Transmission Range Switch A/B/C/P.
PID = 221951( yes, this is the same PID# used above but we will be using different bits from it. And again I say "append 01 for faster response in Torque)
Scale = x1
Units = Bit Mapped
Equation = Lookup(A-(A>5)*32::6='Park':3='Reverse':10='Neutral':9='Drive':0='3rd':5='2nd':12='1st')
Header = Auto

And just for completions sake here is what I am currently using for PID 221920. I did not alter the value of A here and there exists a possibility that this will be erroneous if ever a value appears in bit #0. I have a solution for that if it comes up.

Name = Trans Select
PID = 22192001 (I have already appended the 01)
Scale = x1
Units = Bit Mapped
Equation = LOOKUP(A: :128='Park':64='Reverse':32='Nuetral':16='Drive':8='3rd':4='2nd':2='1st')
Header = Auto

Whew!!

TFP Switch A/B/C. (Post #17, top left gauge) A couple of days ago I had little idea of what this was. Transmission Fluid Pressure manual valve position switch. Do what now??

I googled the term and came up with a diagram and an understanding of the switch and its output and in working these data streams I managed to match the switch output to PID 1951, bits 5, 6, and 7, in the order A, B, and C. (Thank goodness for spreadsheets) For a display I match the decimal equivalent of these 3 bits and substitute text indicating the positions as we would see them such as Park/Neutral, Drive, Reverse and so on.
This switch cannot distinguish between Park or Neutral as the valve body pressures are the same in these 2 positions. (Or so I've read)
Could this be useful somehow? I have no idea, but I found it and it works to display the switch position, if not the individual channels of A, B, or C. This switch will not indicate changes in transmission selection without the presence of fluid pressure so if one shifts through the selections with the engine off no change is seen of course.

Name = Transmission Fluid Pressure Switch A/B/C
PID = 221951(append 01 for faster response in Torque)
Scale = x1
Units =Bit Mapped
Equation = Lookup(A>5::5='P/N':4='Reverse':1='Drive':3='3rd':7='2nd':6='1st')
Header = Auto

Previously I have posted a PID for Park/Neutral as 221131, bit 2. That PID/bit does indeed indicate Park/Neutral as a value of 1 and all else as 0. That PID 221131 also contains things like crank request, starter relay command and a couple of other items I have yet to even hazard a guess. I have to remind myself that we are not in fact seeing the actual switch data. The PCM is seeing that information and outputting these PIDs that we then call up. I can only make logical guesses at where the PCM is getting its information based on testing and watching the data streams. I see that P/N as displayed by PID 221131 bit 2 changes without the engine running so it is not a derivative of the TFP switch. So where does it come from?

Transmission Range Switch A/B/C/P ?? (Post #17, center left gauge) Again I say "Do what now?" More tests, more googling, more noodling around and I find this switch is also represented in PID 1951 as bits 0,1,2, and 3. It has 4 switch outputs and through combinations represent all positions including separate park and neutral indications. I believe this to be a switch on the drivers side of the transmission. Since this has separate park and neutral indications it doesn't look like a candidate for the source of the 221131 bit 2 P/N indicator. I may never know what is that source so I will move on knowing only that it does appear to indicate P/N, if not an actual switch position. To further muddy the waters there is also a previously unmentioned PID 221920 (seen in post #17, bottom left gauge) that also displays a Transmission Selection with a single bit (#1 thru 7) each representing one of 7 positions, P,R,N,D,3,2,1. Confused yet?? I can tell you I am! I am currently wondering if this PID 221920 is for use by the Instrument Cluster for the display there.

Back to that Transmission Range Switch A/B/C/P.
PID = 221951( yes, this is the same PID# used above but we will be using different bits from it. And again I say "append 01 for faster response in Torque)
Scale = x1
Units = Bit Mapped
Equation = Lookup(A-(A>5)*32::6='Park':3='Reverse':10='Neutral':9='Drive':0='3rd':5='2nd':12='1st')
Header = Auto

And just for completions sake here is what I am currently using for PID 221920. I did not alter the value of A here and there exists a possibility that this will be erroneous if ever a value appears in bit #0. I have a solution for that if it comes up.

Name = Trans Select
PID = 22192001 (I have already appended the 01)
Scale = x1
Units = Bit Mapped
Equation = LOOKUP(A: :128='Park':64='Reverse':32='Nuetral':16='Drive':8='3rd':4='2nd':2='1st')
Header = Auto

Whew!!
On my 2003 Yukon 4L 60e trans I'm using pid 221921 with the bit values reversed for the trans shifter selection as follows: LOOKUP(A: :128='Park':32='Reverse':64='Nuetral':8='Drive':4='3rd':2='2nd':16='1st')

By the way mine is a flex fuel with a sensor but all I ever get is a value of 0 was wondering if you've managed to come across any info to read this been trying PID 220052. And 22 1177. The ladder PID 1177 is labeled as ethanol/m/r and gives me a value of 10 and nothing else.
 
Last edited:
OP
OP
T

TJBaker57

Well-Known Member
ladder PID 1177 is labeled as ethanol/m/r
Labelled by who? What is the source ?

So except where expressly stated all of this thread to date has been worked out and tested solely on my 2002 4.2 LL8 TrailBlazer. I also own a 2005 5.3 LM7 Yukon and am going to be seeing what we can get there.

Glad to see someone making use of this and Thanks for the contribution! I'm traveling in my Yukon right now and just added your pid and equation to my Yukon profile.
 

YUKON87

Member
Labelled by who? What is the source ?

So except where expressly stated all of this thread to date has been worked out and tested solely on my 2002 4.2 LL8 TrailBlazer. I also own a 2005 5.3 LM7 Yukon and am going to be seeing what we can get there.

Glad to see someone making use of this and Thanks for the contribution! I'm traveling in my Yukon right now and just added your pid and equation to my Yukon profile.
1177 was acquired on another forum from a huge PID list. The only clue I have is the list is labeled as SS. Hopefully the rearranged equation will work in your Yukon.
 
OP
OP
T

TJBaker57

Well-Known Member
Hopefully the rearranged equation will work in your Yukon.
Well not quite. I just experimented and confirmed this PID 1921 in my 2005 5.3 LM7 appears to be the TFT switch. Transmission Fluid Pressure Switch. I say this because it does not reflect shifting through the gears unless the engine is running. Also, the TFT switch cannot differentiate between Park and Nuetral because the pressures acting on these switches are the same in both of those selections. The PIDs I mentioned earlier as "Range Select" (or maybe "Trans Select"?) reflect shifts with the engine off.

What DOES work for my 2005 Yukon for TFT switch ,PID 1921, is this...

Lookup(A::64='P/N':32='Reverse':8='Drive 4':4='Drive 3':2='Drive 2':1='Drive 1')
 

YUKON87

Member
Well not quite. I just experimented and confirmed this PID 1921 in my 2005 5.3 LM7 appears to be the TFT switch. Transmission Fluid Pressure Switch. I say this because it does not reflect shifting through the gears unless the engine is running. Also, the TFT switch cannot differentiate between Park and Nuetral because the pressures acting on these switches are the same in both of those selections. The PIDs I mentioned earlier as "Range Select" (or maybe "Trans Select"?) reflect shifts with the engine off.

What DOES work for my 2005 Yukon for TFT switch ,PID 1921, is this...

Lookup(A::64='P/N':32='Reverse':8='Drive 4':4='Drive 3':2='Drive 2':1='Drive 1')
I agree as I noticed this as well there was no way to get it to actually differentiate between Park and neutral as these are both seen as neutral positions according to the Transmission Fluid Pressure. You would be correct as the vehicle needs to be running in order to reflect this although it can be used as an alternative with engine running. At the very least it partially defines another potential PID.
 

YUKON87

Member
By the way, hats off to you sir for teaching me how to utilize a look up equation type. This should help me in further decoding and understanding more pids. Was unaware of the "Lookup" method.
 

YUKON87

Member
Heres one you may have.
"A/C PRESSURE OUT OF RANGE"
Pid: 221103
Type: Bit
Range: 0.0 - 1.0
Scale:1x
Header: Auto
Equation: (A&4)/4

Question: How would you do a "Lookup" Equation for this?? I believe Out of range shows "1" for me.

"lookup(bit(A:4)::0='No':1='Yes')??"..
 
OP
OP
T

TJBaker57

Well-Known Member
Heres one you may have.
"A/C PRESSURE OUT OF RANGE"
Pid: 221103
Type: Bit
Range: 0.0 - 1.0
Scale:1x
Header: Auto
Equation: (A&4)/4

Question: How would you do a "Lookup" Equation for this?? I believe Out of range shows "1" for me.

"lookup(bit(A:4)::0='No':1='Yes')??"..
You are very close...

Lookup(Bit(A:2)::0='No':1='Yes')

It literally took me hours to discover what that ampersand does! I am not a programmer. After much Googling I did however find out what the purpose of that equation is.
I suspect the author may have used this equation before other functions became available in Torque to do the same thing, that is isolate a single bit from a byte. That equation is the equivalent of "Bit(A:2)"

I also monitored that Pid 1103 in my 2005 5.3 Yukon. The equation for me yields a zero, as the the pid for me returns a value of 0x01. Only the zero bit is high for me and did not change. It appears the origin of this pid is from GaryDoug in FirebirdForums back in 2012. I suspect many if not most of these pids vary from vehicle to vehicle and we may actually be seeing something entirely unrelated to A/C pressures here.
 

YUKON87

Member
You are very close...

Lookup(Bit(A:2)::0='No':1='Yes')

It literally took me hours to discover what that ampersand does! I am not a programmer. After much Googling I did however find out what the purpose of that equation is.
I suspect the author may have used this equation before other functions became available in Torque to do the same thing, that is isolate a single bit from a byte. That equation is the equivalent of "Bit(A:2)"

I also monitored that Pid 1103 in my 2005 5.3 Yukon. The equation for me yields a zero, as the the pid for me returns a value of 0x01. Only the zero bit is high for me and did not change. It appears the origin of this pid is from GaryDoug in FirebirdForums back in 2012. I suspect many if not most of these pids vary from vehicle to vehicle and we may actually be seeing something entirely unrelated to A/C pressures here.
I agree. Unfortunately some of these parameters are extremely vehicle specific. Still knowledge is inexhaustible. Anytime I discover a new PID, I take the time to label it for the vehicle I know it works for. Thank you for your assistance. Keep up the good work. I will try to help and contribute as I can. I have witnessed new data from your post that I have not been able to figure out from years worth of essential research from many. Usually the moment proprietary knowledge becomes available, it gets hidden away. I feel like once we own these vehicles, the data should be ours to understand interpret, and to read. Specifically the data within any given software that is owned by you or me.
 
Last edited:
OP
OP
T

TJBaker57

Well-Known Member
For evaluation of new unidentified pids I employ the data logging of Torque Pro. The resulting file is synchronized to my Google Drive. I then have a Google spreadsheet that imports that data file and applies a color scale to the values. This helps me recognize patterns in the pid data stream that may help identify it. I find it also useful for troubleshooting purposes. Here's a screenshot showing fuel trim stuff....STFT, LTFT, Fuel Trim Index, Fuel Trim Cell, Engine RPM, ECT, MAP, IAT, and so on...

Screenshot_20191119-094835.png
 

YUKON87

Member
For evaluation of new unidentified pids I employ the data logging of Torque Pro. The resulting file is synchronized to my Google Drive. I then have a Google spreadsheet that imports that data file and applies a color scale to the values. This helps me recognize patterns in the pid data stream that may help identify it. I find it also useful for troubleshooting purposes. Here's a screenshot showing fuel trim stuff....STFT, LTFT, Fuel Trim Index, Fuel Trim Cell, Engine RPM, ECT, MAP, IAT, and so on...

View attachment 91825
Haven't played around with the logging feature yet. Definitely something I knew I needed to learn. Ive heard Torque is an excellent option for logging data. I like the way this is set up. Will definitely take your example for logging. Ty for this information.
 

YUKON87

Member
Would like to comment that the above revised equation and information for the bit look up method would seem to be a higher resolution equation. This can apply to all bit encoded pids. This is very valuable information for those who may be confused when reading bit encoded pids. Wikipedia explains much of this information in relative detail.
 

Online statistics

Members online
5
Guests online
273
Total visitors
278

Members online

Forum statistics

Threads
19,801
Messages
585,401
Unanswered questions
2
Answered questions
1
Members
12,558
Latest member
Nate Saxby
Top Bottom