0

EV6 OBDII connection reflects incorrect battery temperature


Avatar
Alex Whittemore

With the EV6, and presumably Ioniq 5, ABRP reports battery temperature when connected via OBDII. This is especially useful since many of both cars don't have battery preconditioning yet. However, the reported temperature is that of the maximum cell, rather than the minimum, which is what drives all charging power determinations. This is confusing many users in the various forums who think they should be achieving certain charging speeds based on ABRP-reported temperature, but aren't because the battery is, in fact, too cold.

A

Activity Newest / Oldest

Avatar

Bo_ABRP

Status changed to: Closed

Avatar

Bo_ABRP

The ABRP OBD PIDs are available at github.com/iternio/ev-obd-pids and if you are into the technology enough you could help us out to find a better temperature reading.


Avatar

Alex Whittemore

Ahh thanks for that, it's definitely interesting to me! I'm not quite sure how best to help - if I should transition to an issue on github and make a PR or something, let me know.

Assuming the relevant PIDs are "Ioniq5.json" and you do reuse that for EV6, I see:

"_Bat_Min_Temp": {
"equation": "Signed(q)",
"minValue": "-40",
"maxValue": "80",
"type": "Number",
"command": "220101",
"ecu": "7E4"
},
"_Bat_Max_Temp": {
"equation": "Signed(p)",
"minValue": "-40",
"maxValue": "80",
"type": "Number",
"command": "220101",
"ecu": "7E4"
},

So it looks like you already poll min temp and max temp. I don't understand where "p" and "q" come from though - are those fields in the same longer data string returned by the "220101" command or something? (Edit: Doing a little more research, yeah, seems like "220101" returns a bunch of stuff, max temp is at byte number p, and min temp is at byte number q, that all looks right to me.)

If you do in fact poll both temps, and they are in fact set up correctly, I think the only hangup is that ABRP reports the _Bat_Max_Temp value in the UI, where the _Bat_Min_Temp would be much more useful to users. Perhaps you could report both, of course at the cost of increasing UI complexity.


Avatar

Bo_ABRP

I guess now in the winter the min temp is the most relevant one and in the summer (with hot batteries) it is the max instead?


Avatar

Bo_ABRP

Closing this for now - if we get proposals of better PIDs to the GitHub repo above we are happy to review it. Max or min cell temperature has different uses, and perhaps we should just use the average in ABRP.


Avatar

Pat Joy

I have seen temperatures of 32F, which is impossible since I live in Hawaii. When it does read correctly, I will see 76F, which is believable. So, what gives. Car is EV6 GT-Line RWD.


Avatar

Alex Whittemore

I do regularly notice that the values are stale even though the adapter is “connected” and Voltage will report as 0 instead of ~750, etc. I’d assume 32 is the “I didn’t actually get a number back” default value. The adapter connection in ABRP specifically seems pretty unreliable for me compared to ie car scanner, and it results in bogus values.


Avatar

Katya_ABRP

Status changed to: Investigate