Bosch ME7.1.1

From The 07K Wiki

Revision as of 20:28, 17 January 2023 by Arte (talk | contribs) (DTC disabling)

This section is underdevelopment. Feel free to add content.

Reading, writing and checksums

For reading and writing procedures refer to Reading and writing ECU (ME7.1.1)

Most flashing tools fix checksums automatically, if you wish to fix them manually, you can use LSuite

Definition file can be found here. If you are getting started with tuning with recommend consulting : Introduction to tuning

Disabling DTC

The DTC are stored under error class that are defined in a "DTC table". The index at which a certain error class/DTC is stored in the DTC table can be calculated with a simple formula.

Before getting started, you should define the following address that you will use for calculations:

  • CDC (CARB codes, OBD2 generic) start address : CDCAAA
  • CDK (Kundle (Customer) / Manufacturers codes) : CDKAAA
  • CLA (Error class aka DTC table) : CLAAAA

You can use the .A2L file that match your ECU:

Cdc address.png

In this case the CDC start address would be 0xE59C2. (The offset of 0x800000 has been substracted from the address)

Once the start address are defined, we can proceed to the calculation of the DTC index.

For generic codes (Starts with P0XXX):

We will use the table CDC

For manufacturer code:

We will use the table CDK

Finding the index

Let's assume we want to remove the code P0302, this is a generic code, so we will be using the table CDC.

In WinOLS (or your map editor of choice), set the view in 16bits, FF, LoHi

Go to (Control-G) the start address of CDC, in this example it would be 0xE59C2

Search for an hexadecimal (using Control-F) with the DTC code : 0302

You should see 0302 repeating 4 times, we want the address of the first occurence of the block of 4. If you see a block of 6, ignore the first two occurences.

CDC table.png

The address of the first occurence of 0302 would be 0xE5DE2.

Now to get the index we use this formula :

Index = (address of the first occurence - start address of the table) / 8

In our example it would be :

(0xE5DE2 - 0xE59C2) / 8 = 0x84

Index is 0x84

Locating the error class in the CLA table

Using the start address provided by CLAAAA, use the following formula:

CLA error class address = CLA start address (CLAAAA) + index

In our example it would be :

CLA error class address = 0xE05B1 + 0x84 = 0xE0635

The address 0xE0635 contains the error class for the DTC P0302.

To disable the DTC set the byte at the address 0xE0635 to 0.