BlueWave Studio forum
Missing oil temperature - Printable Version

+- BlueWave Studio forum (https://bluewavestudio.io/community)
+-- Forum: OpenAuto Pro (https://bluewavestudio.io/community/forum-86.html)
+--- Forum: OBD-II (https://bluewavestudio.io/community/forum-103.html)
+--- Thread: Missing oil temperature (/thread-2210.html)



Missing oil temperature - peetereczek - 11-22-2020

I setup PID querry and gauge as it's documented:

[ObdPid_10]
Query=015C
Formula=a-40

[ObdGauge_10]
MinValue=-40
MaxValue=150
Limit=120
Formula=getPidValue(10)
Label=Oil *C
Precision=0

Which aim was to query for engine oil temperature, which according to ELM documentation should be avaliable under service 01 PID 5C

But gauge is not working, with such errors in the log:
[2020-11-22 19:54:17.091649] [0x982d0140] [error]   [OpenAuto] [ObdGetPidValueFunction] empty values, query: 015C
[2020-11-22 19:54:17.092162] [0x982d0140] [error]   [OpenAuto] [ObdManager] gauge evaluation failed, formula: getPidValue(10), what: Unable to parse values for PID with query: 015C

I have tested ELM dongle with Android application and I'm sure car is returning the value for engine oil temperature, so the PID is supported

Any help will be appreaciated,
Thanks


RE: Missing oil temperature - BlueWave - 11-22-2020

Could you please post the exact query and response from your Android application? Oil temperature may not be available in default ECU and querying it may require additional AT command to switch ECU ID (PreCommands and PostCommands entries in PID configuration). More details about switching ECU can be found in https://www.elmelectronics.com/wp-content/uploads/2016/07/ELM327DS.pdf document at page 24 (AT SH command).


RE: Missing oil temperature - peetereczek - 11-22-2020

Aha, it looks like it requires such action

With simple querry 015C typed in command line returns: NO DATA
And 0140 querry says that PIDs from 50 to 5F ale not supported.

In the app parameter name has [ECM] prefix and provides value.

I need to investigate it futher


RE: Missing oil temperature - peetereczek - 11-22-2020

Ok, I found that command AT SH 00 07 E0 will switch communictaion to 7E8 can ID ECU and PID 015C returned value 7E8037F0112

Little step in the understanding Big Grin

And with below config
[ObdPid_10]
Query=015C
PreCommands=AT SH 00 07 E0
PostCommands=
Formula=a

Unfortunately value is not being returned correctly :|

There are no errors in the log, gauge display constant value 18, which is not true

Edit: ah, so module is responding with 7F code, which means that it doesn't understood the request...


RE: Missing oil temperature - peetereczek - 11-24-2020

I have found on some forum, that in VW CAN you can find

Calculate Speed.
ID 0x351. Speed is contained in Byte 2. Calculation is (Speed = (buf[2] * 256) + (buf[3]-1)) / 190; )

Oil Temp.
ID 0x35B Byte 4

Water Temp
ID 0x35B Byte 3. Calculation is (waterTemp = (buf[3]-64); )

Voltage
ID 0x571 Byte 0. Calculation is (Voltage = (((float)buf[0] / 2.00) + 50.00) / 10.00; )

So I'm about to test them