Jump to content

Possible bug in Thermistor Calc?


Recommended Posts

Since switching to Link ECU, I have noticed that my IATs during driving have seemed higher than they should be. Around room temperature, the calibration is close. But when I expect IAT to be about 100F cruising on a hot day, The ECU was reading 130F. This was with the same calibration numbers as my old ECU (ohm scale). 

With the car having been turned off for a few hours, I would expect IAT to be slightly lower than CLT. However, IAT was about 20F higher. I tried converting my ohm values to Volt values (I'm using 1kohm internal pullup and assuming 5v reference is used internally). I found that when I plugged these values in, the IAT immediately dropped from 120F to 88F (following pictures were less than a minute apart). Obviously, we would expected both calibration methods to give the same reading. 




I tried inputing with F and C, both gave the same result. I have only gone for a short drive, but it seems like the IATs are more what I would expect. Unless I messed up my calculation, it seems to me like there is an issue with the Ohm calibration function. My spreadsheet is below. 

V = 5v * (R1/(R1+R2))

R1 = sensor ohm value

R2 = pullup resistor value




Link to comment
Share on other sites

The problem is the ecu uses linear interpolation between the cells in any table, yet a thermistor is highly non linear.  Since you have such a big gap between the 24°C and 94°C cal points it will be very noticeable.  The reason you see difference between voltage Vs ohms cal is because the voltage divider calculation will inverse the non-linearity affect (I suspect the voltage cal will be closer to reality than the ohms in this case).  You typically want no more than 10°C break points for a thermistor cal.

Pic at the bottom to show the effect, straight lines are your cal, pink line is more like how the sensor would behave.

I would suggest you try the pre-defined Hella 6PT calibration as that looks like it matches your sensor reasonably well.




Link to comment
Share on other sites

@Adamw beat me to it while I was busy drawing graphs and eating dinner, but my graphs have more lines on them so i'm going to post it anyway :)

Neither number is probably right because of the interpolation issues. The real number at the point you mention is probably around 105F. Red lines show approx actual sensor response. Green are the values I calculated that you would have seen at the time the screenshots were taken. Yellow lines show the approx value if the sensor calibration had been more complete, vs where it crosses the white line of the calibration as entered. 


Link to comment
Share on other sites

Ah, thanks for the replies. I figured that it would apply an exponential trendline... I can figure it out from here then. 


Just so the info is out there - The sensor is an IAT for BMW M52/S52 (US). I plotted it out against some values that I measured, and it seems to be a Hella 6PT as you suggested, Adam. 

It seems like thermistors do not follow a perfect exponential trend.






Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Create New...