• Welcome to N-cars.net - the largest Hyundai N car forum. Check out the model specific sections below and scroll down for country specific forums. Scroll down for i30 N, Ioniq 5 N, i20 N, Veloster N and Kona N forums! Check out the i30 N Bible Here!

Engine I Finally found the oil temperature PID!

Sweet!

Also don't play around in menu 13. This sort of resets some modules and will result in having to disconnect the battery to power them up again. I had no climate control for a while playing around menu 13 :p
 
  • Haha
Reactions: gdincu
I've added all of the PIDs worked out so far on a public github repo - https://github.com/gdincu/HyundaiElantraCN7-OBD2-PIDs

It would be a great idea to get PIDs from different Hyundai models as some of them seem to be shared across the entire model range.

Some of mine have been found on another public repo setup by owners of Hyundai EVs available at https://github.com/JejuSoul/OBD-PIDs-for-HKMC-EVs
The EN GitHub is incredibly useful thanks mate. Anyone found the PID for wastegate position?
 
  • Like
Reactions: gdincu
T
On my Elantra the below apply:
  • Front Left - J/5 for pressure and K-50 for temp
  • Front Right - E/5 for pressure and F-50 for temp
  • Rear Left - O/5 for pressure and P-50 for temp
  • Rear Right - T/5 for pressure and U-50 for temp
However, it's worth mentioning that the Korean plugin I got those PIDs from uses different tokens (E, I, O and M for pressures and F, J, P and L for temps - just in case that my values don't work on your car). I've found those by looking at the response for 0x22C00B and matching the pressures against the values displayed in the dashboard.

Quick mention re the transmission oil PID (in case anyone is looking for that) - this plugin looks at 0x221A0 (Header 7E1) and token L (I believe that the equation for this is L * 0.75 - 48 but it's just a guess as I couldn't decode the equations properly so far). It doesn't work on my Elantra (even if it's a manual as well) but might work on your i30s
On my Elantra the below apply:
  • Front Left - J/5 for pressure and K-50 for temp
  • Front Right - E/5 for pressure and F-50 for temp
  • Rear Left - O/5 for pressure and P-50 for temp
  • Rear Right - T/5 for pressure and U-50 for temp
However, it's worth mentioning that the Korean plugin I got those PIDs from uses different tokens (E, I, O and M for pressures and F, J, P and L for temps - just in case that my values don't work on your car). I've found those by looking at the response for 0x22C00B and matching the pressures against the values displayed in the dashboard.

Quick mention re the transmission oil PID (in case anyone is looking for that) - this plugin looks at 0x221A0 (Header 7E1) and token L (I believe that the equation for this is L * 0.75 - 48 but it's just a guess as I couldn't decode the equations properly so far). It doesn't work on my Elantra (even if it's a manual as well) but might work on your i30s
Thanks for sharing. Have just gone through for a pre facelift i30N and it was slightly different to both above (in the order of FL, FR, RL, RR)

E, I, Q, M - pressure
F, J, R, N - temp
 
Who needs the michelin track connect app when you can read out the TPMS sensors? :p
okay, it's not the surface temperature but close enough for me


1683549128164.png
 
  • Like
Reactions: Bu11eT
T


Thanks for sharing. Have just gone through for a pre facelift i30N and it was slightly different to both above (in the order of FL, FR, RL, RR)

E, I, Q, M - pressure
F, J, R, N - temp
Thanks for posting it.
Just tried it out and works quite well. However a small disadvantage is the polling rate of just roughly once per minute :/

Gotta try to get this setup with my Canchecked to be able to later on show tires pressure, tire temp and brake temp on a single graphic.
 
Thanks for posting it.
Just tried it out and works quite well. However a small disadvantage is the polling rate of just roughly once per minute :/

Gotta try to get this setup with my Canchecked to be able to later on show tires pressure, tire temp and brake temp on a single graphic.
Brake temps?
 
Thank you for the confirmation Lurchi :) that is good news.

I have noticed on a trackday that from about 100°C the reading is not very accurate and the cluster shows a higher oil temp vs the PID.

2 options here.
1. Cluster is correct and I need to calculate the offset
2. Cluster is a drama queen and oil temps are not the real world figure

To be sure I will need to unscrew the sensor, heat it and measure with an external device and compare

I have an aeroforce gauge that returns oil temps from OBD2, and it has the exact same problem. The higher in the temps you go, the more drift you get. At lower temps it's relatively close, but as you get to the upper end, the aeroforce will output up to 15C cooler than on the media display.
 
I have an aeroforce gauge that returns oil temps from OBD2, and it has the exact same problem. The higher in the temps you go, the more drift you get. At lower temps it's relatively close, but as you get to the upper end, the aeroforce will output up to 15C cooler than on the media display.
Trying this formula - AI*0.7435-49.2

Credit to Dave Foster in Australia who is a math genius and plotted this out.
 
Quick mention re the transmission oil PID (in case anyone is looking for that) - this plugin looks at 0x221A0 (Header 7E1) and token L (I believe that the equation for this is L * 0.75 - 48 but it's just a guess as I couldn't decode the equations properly so far). It doesn't work on my Elantra (even if it's a manual as well) but might work on your i30s

I'm interested in testing this as I have a DCT, but I'm still learning how to convert these values out. It almost looks like there might be a missing value on the end here for the mode+PID? Entirely possible I'm just not able to convert this though due to still learning.
 
I will give this a shot and see if I see the same drift on the other formula, and if so, will test this new formula to confirm. Thank you!

So I tried this today, and unfortunately it doesn't look like things quite align for me. I will mention that I am driving a 2022 Veloster N, Canadian edition (no TPMS, has heated seats and steering).

The infotainment screen will tell me 90-91C, but the reading in Torque with this formula using mode 22, PID E001 will return a value of 88.7C using AI*0.7435-49.2. It does seem to move relative to the oil temps, but the offset looks familiar. I will need to re-test with my aeroforce gauge and see if I get a similar reading just for comparison sakes.
 
Quick mention re the transmission oil PID (in case anyone is looking for that) - this plugin looks at 0x221A0 (Header 7E1) and token L (I believe that the equation for this is L * 0.75 - 48 but it's just a guess as I couldn't decode the equations properly so far). It doesn't work on my Elantra (even if it's a manual as well) but might work on your i30s

So spending a bit more time learning and going through things, I think this might have been a small typo here. I believe you're referring to mode 21, PID A0 rather than mode 22 with a missing character.

In my searching I found this google drive (https://drive.google.com/drive/fold...wa3o3Z3M?resourcekey=0-W8b3QGN-j1Fw_ibC61PAzw) which seems to indicate the same thing, of 0x21A0 as the value. I'm sure you were just used to writing out 0x22 and double tapped the key :) Please let me know if I misinterpreted.

I did some scanning with mode 21 with PID A0 but wasn't able to return any data. Didn't get much time to play around since it was just lunch time, but in case anyone else was wondering about a missing character, thought I'd say something.
 
So I tried this today, and unfortunately it doesn't look like things quite align for me. I will mention that I am driving a 2022 Veloster N, Canadian edition (no TPMS, has heated seats and steering).

The infotainment screen will tell me 90-91C, but the reading in Torque with this formula using mode 22, PID E001 will return a value of 88.7C using AI*0.7435-49.2. It does seem to move relative to the oil temps, but the offset looks familiar. I will need to re-test with my aeroforce gauge and see if I get a similar reading just for comparison sakes.
Great. Thanks. On the pre face lift we don’t get an actual temp read out… instead we get a series of bars that light up. Dave worked on the formula based on counting out the bars. With the actual read out that might help get even more accurate.
 
Great. Thanks. On the pre face lift we don’t get an actual temp read out… instead we get a series of bars that light up. Dave worked on the formula based on counting out the bars. With the actual read out that might help get even more accurate.
Oh I didn't realize that. OK, so I'll be starting to create a table from the AI column vs temp readout on the display. As you get higher in the temp range, the granularity decreases. Higher granularity at the lower temps vs higher temps. My guess is that as temps get hotter, there is a sort of stepping function in there which will need to be accounted for, so a linear equation might not be enough. I'm wondering if that's what I'm seeing.

Also I'm adding an oil cooler soon, and I'm adding an analog oil temp sensor at the sandwich plate. I'll be interested to see if there is a delta between the sensor read out at the filter vs temps at the CVVT.
 
Trying this formula - AI*0.7435-49.2

Credit to Dave Foster in Australia who is a math genius and plotted this out.
Hahaha, thats me :)

Was fun working with you!

So my methods were to use pictures of the gauge and then use photoshop tools to read the actual temp from the bars. I had to calculate the number of degrees per bar…you’d think that 50-100 is 50C, so maybe 50 or 25 bars, right? No some brainiac decided that something like 35 bars would be good wtf?? So each bar is worth 1.429 C.

Then I set my OBD2 reader to capture the AI value on its own. Took repeated reasons at different temps and pics of the bar chart on the dash, which I converted to actual temps, and screenshots of the AI values on my OBD2 scanner.

Then plotted out the gauge temp versus AI value. Dead straight line. Did a linear regression (left plot). That’s the equation to use. Note the r2 of 0.9999. Pretty sweet.

The middle plot shows the prediction for my equation, and two others. You can see the errors better in the right hand plot. Mine is in green. The blue one is pretty good, but has a constant error. The orange one is systematically in error and gets worse the further away from 75C.

There was another big ass 3rd order polynomial equation, that was basically the same as the blue one (some terms were so small that or collapsed into a straight line, typical excel crap haha) so I didn’t plot it out.

Scientific method for the win!

Dave

F68C819A-B31E-4F75-8BFC-ACFBF3A88FA8.png
 
Oh I didn't realize that. OK, so I'll be starting to create a table from the AI column vs temp readout on the display. As you get higher in the temp range, the granularity decreases. Higher granularity at the lower temps vs higher temps. My guess is that as temps get hotter, there is a sort of stepping function in there which will need to be accounted for, so a linear equation might not be enough. I'm wondering if that's what I'm seeing.

Also I'm adding an oil cooler soon, and I'm adding an analog oil temp sensor at the sandwich plate. I'll be interested to see if there is a delta between the sensor read out at the filter vs temps at the CVVT.
I couldn’t test above 95C as I could t get it hotter on the street (is cold here now).

When I do, I’ll check if it’s liner above 100C. The bars remain the same size, so it should stay linear. Maaayybbeee the AI value departs from linearity, but that’s be weird.
 
I have an aeroforce gauge that returns oil temps from OBD2, and it has the exact same problem. The higher in the temps you go, the more drift you get. At lower temps it's relatively close, but as you get to the upper end, the aeroforce will output up to 15C cooler than on the media )

The only way to figure this out is for someone to use an external oil temp gauge and compare that with the cluster temp.

My results above give en exact match for an OBD2 reading and the cluster reading. So unless the cluster reading is faulty, its correct.
 
  • Love
Reactions: jeroenvde