It’s a part of ediabas toolset 32 manual of oil temperature coding for bmw E series. Bmwicomshop.com holds no responsibility for any illegal or improper usage. Carry out this procedure at your own risk.
You need prepare:
A working BMW ICOM A2 or ODB 2 cable (K+DCAN cable) is ready for use and connected to the car.
A working PC better running with Windows XP
Prerequisites Tool32 operate and deal with hexadecimal numbers.
Oil temperature coding… Here you go….
Start Ediabas ToolSet 32 and load Komb60.prg. File -> SGBD, Load Group File
Job codierdaten_lesen, there simply enter as argument 0x3105. And job once
Execute.
The encoding data should then appear in Results
The result is the same as you get with c_c_Lesen.
For job c_c_lesen you have to specify the following buffer as an argument and DATA
Hook
C_c_lesen Buffer:
01 01 01 00 00 00 00 00 00 00 00 00 00 00 00 00 05 00 00
FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
FF FF FF 03
As a result you get:
The red bytes are the encoding data. As you can see the FF placeholders in the
Transferred buffer.
01 01 01 00 00 00 00 00 00 00 00 00 00 00 00 00 05 00 00
FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
FF FF FF 03
01 01 01 00 00 00 00 00 00 00 00 00 00 00 00 00 05 00 00
73 12 0D 00 00 36 00 67 00 98 00 CA 00 00 00 BC 01 78 03 35 05
F1 06 6E 03
To code oil temp you have to change the blue:
73 12 0D 00 00 36 00 67 00 98 00 CA 00 00 00 BC 01 78 03 35 05
F1 06 6E
The valuesfor the scale division are 36 67 98 CA. The value 6E is for
KVA.
We have to change the scale division for the oil temperature display. Therefore
We need a correction value (46-48) to the desired temperature display.
add.
To program 50-150℃, we will divide the scale as follows.
50℃, 75℃, 100℃, 125℃, 150℃
Temperature + correction value = decimal value = convert to hex value
The value 6F turns on the oil temperature display.
The result of the calculations is as follows
73 12 0D 60 00 79 00 92 00 AB 00 C4 00 00 00 BC 01 78 03 35 05
0D 07 6F
0D and 07 are simply adopted. Currently its function is unknown
Then copy the changed values into buffers and the job c_checksumme in T32
And specify the buffer with the new values as an argument. (Data
Do not forget)
Job c_checksumme Argument:
01 01 01 00 00 00 00 00 00 00 00 00 00 00 00 00 05 00 00
73 12 0D 60 00 79 00 92 00 AB 00 C4 00 00 00 BC 01 78 03 35 05
0D 07 6F 03
As a result you get a new checksum, in my case 68
01 01 01 00 00 00 00 00 00 00 00 00 00 00 00 00 05 00 00
68 12 0D 60 00 79 00 92 00 AB 00 C4 00 00 00 BC 01 78 03 35 05
0D 07 6F 03
Then copy the entire buffer as an argument and by job
C_c_scribe, encode DATA do not forget.
Then execute job_controller_reset.
If necessary, run the date and time using the job time_time_time.
This takes the time from the laptop.
Now it is possible to test the temperature using the job_oeltemperature
Oil temperature display works
Give the desired oil temp in℃ as an argument. E.g. 100 and job once
To run.
If the display is not exactly correct, 100℃ should be at 10L, the
Correction value. In my case I am better with correction value 48
hazards. The hex values are then to be adjusted and the checksum must be renewed
be determined. Then write the new buffer with c_c_ and write
Control_reset_reset.
If everything is correct. Job control_oeltemperatur_aus.
(BIG THANKS to deliciouscars in the CT community)