BMWTool32 Tutorial of Coding Oil Temperature for E series  

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

ediabas toolset 32 download

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

ediabs-tool32-oil-temperature-coding (1)

Job codierdaten_lesen, there simply enter as argument 0x3105. And job once

Execute.

ediabs-tool32-oil-temperature-coding (2)

The encoding data should then appear in Results

ediabs-tool32-oil-temperature-coding (3)

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

ediabs-tool32-oil-temperature-coding (4)

As a result you get:

ediabs-tool32-oil-temperature-coding (10)

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℃

ediabs-tool32-oil-temperature-coding (9)

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.

ediabs-tool32-oil-temperature-coding (6) ediabs-tool32-oil-temperature-coding (5)

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

ediabs-tool32-oil-temperature-coding (7)

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)