Thread: my M3 CSL
View Single Post
Old 16-05-2015, 07:58 PM   #104
alexk
Driving it like I nicked it
 
alexk's Avatar
 

Join Date: Mar 2009
Posts: 2,784
Casino cash: $29947
alexk is on a distinguished road
Talking Check engine light - secondary air pump

After a couple of days the engine light turned on. Remember I have removed the secondary air pump.
The Diagnostic Trouble Code (aka DTC) is the AA (0xAA) from the DME.

The credit for the below belongs to the great work done by a few guys in the m3forum.net . I have helped them more than a year ago when I gave them a full export of the CSL map (I have an unrestricted CSL).
Here is the forum thread with all the info -> http://www.m3forum.net/m3forum/showthread.php?t=423771
I have read all pages and NO I don't have so much free time.

1. First I take a partial export of the CSL ECU code which is 64kB (aka kilobytes = 64 x 1024 bytes = 65536 bytes). The full export of the CSL ECU code is 1024 kB = 1MB.

2. I need to find the version of the map.
You go to the byte offset (or address) 0xBFB8 and see the last 4 digits.
2113 2500 0301 PD71. (there is also 0401 version)
This means, the secondary air pump configuration is in byte offset 0xC100.

3. I go to offset 0xC100.
The stock string is 01 FF 04 B0 5F AA.
01 -> K_SLS_OBD = switch on / off
5F -> K_SLS_UB_MIN = default is 9.5V
AA -> K_SLS_UB_MAX = default is 17.0V

I switch the 01 to 00 to completely disable the pump, the 5F to B9 (18.5V) and the AA to B9 (18.5V). With the high values the pump will never be enabled.
The new string is 00 FF 04 B0 B9 B9

4. Now I need to disable the DTC checking. This will mean there will be no check engine lights from now on. The ECU will just ignore whether the pump exists, works etc.

The 301 version of the CSL map that I have has the 0xAA DTC code in offset 0xF3BE.

The OEM string is -> AA 01 01 01 01 01 01 00 01 02 03 28 27 FF
There are a few methods to disable this.
I will zero out the last 2 digits before the FF digits so the string becomes.
AA 01 01 01 01 01 01 00 01 02 03 28 00 FF


5. At this point I decided that I need to finally enable the sport button memory. It's always annoying having to press the sport button. I always use sport mode.

The CSL map has this in offset 0x8026.

You find the string -> 01 02 1E 14 FF FF 03. Change 03 to 04.
The updated string -> 01 02 1E 14 FF FF 04

6. Now I need to calculate and update the checksum of the ECU map file, otherwise the ECU will not boot and the car will not work.

I used the MSS54CheckSumCorrectionTool.exe program that works like a dream.
You can download this here https://dl.dropbox.com/s/ym8amldnz79...nTool.exe?dl=1


7. Then I use again the BMWFlash.exe software to write the map to the car.
http://bimmersoftware.com/bmwflash

8. Start the car and enjoy

In order to do the above someone needs a USB to OBD cable.
I have this one.



Here the code of the map.


Here when I was writing the map back to the car.
You need a good laptop with charger and also the car to be in a battery charger.
You don't want this to abort



Last point.
If someone needs help with your maps to enable/disable any of the features found by the m3forum group, I could help you.
However you would need to buy your own cable and then read/write the maps on your own.
__________________

www.clubcsl.com - I am a BMW Motorsport fan !

My youtube channel is here

Last edited by alexk; 16-05-2015 at 08:01 PM.
alexk is offline   Reply With Quote