GR Yaris PIDs reverse engineered revisited

O

OBD link/fusion has the knock feedback and knock correct learning value available
And may I ask if you can extract it from it? (Can you tell me the PID?) Since I am developing custom exhaust valves with an arduino and I want to make them open in case of knocking if they are closed.

Thanks a lot!
 
I am using OBD Link’s generic software but did not find anything knock related PID there - externally fusion looks like a same software as OBD Link.

Where are they available on OBD Link?
 
And may I ask if you can extract it from it? (Can you tell me the PID?) Since I am developing custom exhaust valves with an arduino and I want to make them open in case of knocking if they are closed.

Thanks a lot!
No, I'm not sure how to do that. dvim on other forum might be able to help out.

I am using OBD Link’s generic software but did not find anything knock related PID there - externally fusion looks like a same software as OBD Link.

Where are they available on OBD Link?
Toyota,Lexus,Scion->Engine-> "Knock F/B Value" and "Knock Correct Learn Value"
You need the addon for Toyota Camry 2.5L 2020 but it's free if you have an obdlink adapter
 
No, I'm not sure how to do that. dvim on other forum might be able to help out.


Toyota,Lexus,Scion->Engine-> "Knock F/B Value" and "Knock Correct Learn Value"
You need the addon for Toyota Camry 2.5L 2020 but it's free if you have an obdlink adapter
how does that add on work - that car is listed as a car in OBD Link.. ?
 
Does anyone have 'basic' PID's for:
- IAT (intake temp)
- CACT (charge temp)
- CAT 1 / EGT temp

Thanks
 
@CerN , these are the tire pressure and temperature pids, I've copied them from the old forum

SensorCategoryModePIDHeaderFormulaDiag Command
Tire ID 1 PressureTPM2215750B * 0.01373atcea2A
atta2A
Tire ID 2 PressureTPM2215750D * 0.01373atcea2A
atta2A
Tire ID 3 PressureTPM2215750F * 0.01373atcea2A
atta2A
Tire ID 4 PressureTPM2215750H * 0.01373atcea2A
atta2A
Tire ID 1 TemperatureTPM2214750A - 40atcea2A
atta2A
Tire ID 2 TemperatureTPM2214750B - 40atcea2A
atta2A
Tire ID 3 TemperatureTPM2214750C - 40atcea2A
atta2A
Tire ID 4 TemperatureTPM2214750D - 40atcea2A
atta2A

In practice, once the tire sensor identification successfully finished, for me the ID to position mapping was always this:
IDPosition
1FL
2FR
3RL
4RR

Also, the pressure formula did not work for me (it did not match the pressures displayed by either Carista, the dash and especially not my pressure gauge)
I ended up dividing B,D,F and H by 69 instead of multiplying them with 0.01373
 
IMG_1817.webp
 
Hi,
Could anybody advice on a couple of questions regarding PIDs I'm using through TorquePro?

1) Does the PID "Coupling Temp" provide the rear diff oil temp?

2) While my tire 1 and tire 2 temp PID s are perfect, my tire 3 and tire 4 temps are stuck on -41deg Celsius. This is peculiar because all 4 tpms are working and providing pressure reading through the OEM dash display. I can't understand why I am getting good readings for tire 1 & 2 but nothing for tire 3 & 4..

Any help gratefully received

Screenshot_20250331-103257.webp
 
Last edited:
1) Does the PID "Coupling Temp" provide the rear diff oil temp?
No, it does not. It measures the temperature of the ITCC (Intelligent Torque Controlled Coupling) unit, which does not share oil with rear differential but uses its own specific oil.

temp_sensor.webp

ITCC.webp
 
@CerN , these are the tire pressure and temperature pids, I've copied them from the old forum

SensorCategoryModePIDHeaderFormulaDiag Command
Tire ID 1 PressureTPM2215750B * 0.01373atcea2A
atta2A
Tire ID 2 PressureTPM2215750D * 0.01373atcea2A
atta2A
Tire ID 3 PressureTPM2215750F * 0.01373atcea2A
atta2A
Tire ID 4 PressureTPM2215750H * 0.01373atcea2A
atta2A
Tire ID 1 TemperatureTPM2214750A - 40atcea2A
atta2A
Tire ID 2 TemperatureTPM2214750B - 40atcea2A
atta2A
Tire ID 3 TemperatureTPM2214750C - 40atcea2A
atta2A
Tire ID 4 TemperatureTPM2214750D - 40atcea2A
atta2A

In practice, once the tire sensor identification successfully finished, for me the ID to position mapping was always this:
IDPosition
1FL
2FR
3RL
4RR

Also, the pressure formula did not work for me (it did not match the pressures displayed by either Carista, the dash and especially not my pressure gauge)
I ended up dividing B,D,F and H by 69 instead of multiplying them with 0.01373
Is the formula for pressure like this: B/69 D/69 or B:69 and so on? I don't get any values with the multiplication formula.
 
Is the formula for pressure like this: B/69 D/69 or B:69 and so on? I don't get any values with the multiplication formula.
This what I ended up with in Torque pro...
It won't work without the diagnostic start/stop commands
I also slightly fine-tuned the pressure formulas, now I get a much better fit with the dash pressure display and Carista...
IMG_20250401_204752.webp
 
Screenshot 2025-08-20 at 15.18.59.webp


I'm using these in RaceChrono Pro. The equations are the same used in Torque Pro but the variables read should be offset by 1 byte, i.e., replace A in Torque with B in RaceChrono, B with C, etc.


Acc pedal position
Channel: Accelerator position (%)
Header: 0x700
PID 0x221059
Equation: float(b-41)/1.42


Brake pedal position
Channel: Brake position(%)
Header: 0x7B0
PID: 0x221004
Equation: min(100, float(b - 10) / 120 * 100)


Charge Air Cooler Temperature (CACT)
Channel: Air temperature (°C)
Header:
PID: 0x0177
Equation: b-40


GR4 clutch temperature (ITCC)
Channel: Clutch temperature (°C)
Header: 0x7B1
PID: 0x221026
Equation: (b*256 + c) / 128


Oil pressure
Channel: Engine oil pressure (psi)
Header: 0x700
PID: 0x221074
Equation: float(b*256 + c)/12.8
(the result is in "bar" unit)


Transmission temperature
Channel: Temperature (°C)
Header: 0x700
PID: 0x221638
Equation: b + c/256 - 40
 
Knock Correction Learned Value
OBD2 Mode and PID: 22105c
Long name: Knock Correction Learned Value
Short name: KCLV
Minimum value: 0
Maximum value: 100
Scale factor: x1
Unit type: °CA (Crankshaft Angle)
Equation: ((A*256+B)-32768)/32
OBD header: 700

This is the ECU's long-term memory of ignition timing corrections based on past knock events. It changes slowly and adjusts the ignition map so the engine "remembers" safe timing for future runs. A high value means the engine can safely run more advance (no knock history). A low value means the ECU has learned to hold back timing because knock has been persistent. This can be caused by poor fuel, oil in the intake, carbon deposits on pistons, etc. It doesn't change frequently, so it's not that interesting to monitor constantly. However, it's useful to check from time to time as it can reveal underlying issues and show if the engine is lacking potential power.

Knock Feedback Value
OBD2 Mode and PID: 22105c
Long name: Knock Feedback Value
Short name: KFB
Minimum value: -6
Maximum value: 0
Scale factor: x1
Unit type: °CA
Equation: ((C*256+D)-32768)/32
OBD header: 700

KFB is the instant, real-time correction the ECU applies to ignition timing when knock is detected. KCLV is adjusted based on that.

7f995f6d-c884-4854-8207-b4639ff80c10.webp

Image from the EcuTek G16E-GTS Tuning Guide, where they refer to KFB as Knock Correction Angle. Shows how KCLV is updated based on KFB.

The GR Yaris service manual doesn't go into much detail, but here is more information from a Lexus forum. EcuTek also references this, so it's very likely the GRY uses the same algorithm.

756EEE70-EF59-4756-AED7-FC28E7E4EC4D.webp
 
Brake Master Cylinder Pressure
OBD2 Mode and PID: 221004
Long name: Brake Master Cylinder Pressure
Short name: BrakePr
Minimum value: 0
Maximum value: 100
Scale factor: x1
Unit type: bar
Equation: ((A*0.9807)-10)
OBD header: 7B0

There are examples in this thread that give brake percentage, but they didn't work for me. They read byte B, which in my case is empty. According to Techstream, byte A is brake pressure. I think the scaling is close, but I'll recheck it at some point.

Ambient Temperature
OBD2 Mode and PID: 221141
Long name: Ambient Temperature
Short name: AmbTemp
Minimum value: -40
Maximum value: 100
Scale factor: x1
Unit type: °C
Equation: (A/2)-40
OBD header: 7C0

Intake Air Temperature @ Manifold
OBD2 Mode and PID: 0177
Long name: Intake Air Temperature Manifold
Short name: IAT_Manf
Minimum value: -40
Maximum value: 100
Scale factor: x1
Unit type: °C
Equation: C-40
OBD header: 7DF

It's quite interesting to combine all three intake and ambient air temperature. Gives quite a good picture of what's going on.
For reference, Torque Pro's standard "CACT" shows the temperature after the intercooler, while "Intake Air Temperature" - the MAF temperature.

IAT.webp

You can see how the MAF temperature shoots up when the airbox flap opens, as well as the heat soak at the end of a ride when going slow or idling. Would be interesting to see similar log from the track.

If anybody has additional parameters they'd like to read, let me know. I might be able to find their PIDs.
 
Brake Master Cylinder Pressure
OBD2 Mode and PID: 221004
Long name: Brake Master Cylinder Pressure
Short name: BrakePr
Minimum value: 0
Maximum value: 100
Scale factor: x1
Unit type: bar
Equation: ((A*0.9807)-10)
OBD header: 7B0

There are examples in this thread that give brake percentage, but they didn't work for me. They read byte B, which in my case is empty. According to Techstream, byte A is brake pressure. I think the scaling is close, but I'll recheck it at some point.

Ambient Temperature
OBD2 Mode and PID: 221141
Long name: Ambient Temperature
Short name: AmbTemp
Minimum value: -40
Maximum value: 100
Scale factor: x1
Unit type: °C
Equation: (A/2)-40
OBD header: 7C0

Intake Air Temperature @ Manifold
OBD2 Mode and PID: 0177
Long name: Intake Air Temperature Manifold
Short name: IAT_Manf
Minimum value: -40
Maximum value: 100
Scale factor: x1
Unit type: °C
Equation: C-40
OBD header: 7DF

It's quite interesting to combine all three intake and ambient air temperature. Gives quite a good picture of what's going on.
For reference, Torque Pro's standard "CACT" shows the temperature after the intercooler, while "Intake Air Temperature" - the MAF temperature.

View attachment 37984
You can see how the MAF temperature shoots up when the airbox flap opens, as well as the heat soak at the end of a ride when going slow or idling. Would be interesting to see similar log from the track.

If anybody has additional parameters they'd like to read, let me know. I might be able to find their PIDs.

WOW
wonderful

thx u so much really for these info
i have both mk1 than mk2 automatic
on the 2 cars i have also canchecked

do you know in which way i can obtain these new pids from canchecked??

and then
i will be in nordschleife all next week
if you explain me in which way i can do logs for you
 
Brake Master Cylinder Pressure
OBD2 Mode and PID: 221004
Long name: Brake Master Cylinder Pressure
Short name: BrakePr
Minimum value: 0
Maximum value: 100
Scale factor: x1
Unit type: bar
Equation: ((A*0.9807)-10)
OBD header: 7B0

There are examples in this thread that give brake percentage, but they didn't work for me. They read byte B, which in my case is empty. According to Techstream, byte A is brake pressure. I think the scaling is close, but I'll recheck it at some point.

Ambient Temperature
OBD2 Mode and PID: 221141
Long name: Ambient Temperature
Short name: AmbTemp
Minimum value: -40
Maximum value: 100
Scale factor: x1
Unit type: °C
Equation: (A/2)-40
OBD header: 7C0

Intake Air Temperature @ Manifold
OBD2 Mode and PID: 0177
Long name: Intake Air Temperature Manifold
Short name: IAT_Manf
Minimum value: -40
Maximum value: 100
Scale factor: x1
Unit type: °C
Equation: C-40
OBD header: 7DF

It's quite interesting to combine all three intake and ambient air temperature. Gives quite a good picture of what's going on.
For reference, Torque Pro's standard "CACT" shows the temperature after the intercooler, while "Intake Air Temperature" - the MAF temperature.

View attachment 37984
You can see how the MAF temperature shoots up when the airbox flap opens, as well as the heat soak at the end of a ride when going slow or idling. Would be interesting to see similar log from the track.

If anybody has additional parameters they'd like to read, let me know. I might be able to find their PIDs.
Nice!
Could you find the wastegate duty cycle?
 
Back
Top