E90Post
 


 
BMW 3-Series (E90 E92) Forum > E90 / E92 / E93 3-series Powertrain and Drivetrain Discussions > NA Engine (non-turbo) / Drivetrain / Exhaust Modifications > I cloned my MSV70 DME



Reply
 
Thread Tools Search this Thread
      09-26-2016, 05:52 PM   #947
rjahl
Colonel
rjahl's Avatar
996
Rep
2,287
Posts

Drives: Z4 35is
Join Date: Jun 2011
Location: Tampa

iTrader: (0)

Garage List
2012 Z4 35is  [0.00]
Quote:
Originally Posted by hassmaschine
the maps are 3D. but the part load fuel is all lambda 1.0. There's no reason at all to mess with this map.

I'm sure I posted the ignition maps and full load fuel before in this thread. But it's going to look different depending on what tune you have - 325 vs 328 vs 330i.
You posted the lambda maps on page 5.
Appreciate 0
      09-27-2016, 11:46 AM   #948
roflmao
New Member
0
Rep
16
Posts

Drives: bmw e60
Join Date: Sep 2016
Location: tashkent

iTrader: (0)

Good day guys. I know, that it is e90 forum, but i have a problem with e60 and i believe i can find a solution here. The problem is with msv70, can anybody help me to change oulcoding to wert 2? I have dimps from my DME. I know, that i need to reset "operating time" or change one byte in bin file, but i can't find it. Can anybody help me?
Appreciate 0
      09-27-2016, 12:30 PM   #949
hassmaschine
Major General
United_States
3966
Rep
7,215
Posts

Drives: "NBO" 330i
Join Date: Jun 2014
Location: earth

iTrader: (0)

It's not really possible, and it isn't necessary anyway. the powerclass isn't stored on the DME, and I don't know how you change it or which module it gets it from.

The DME reads the vehicle powerclass value over CAN, which is sent by another module; there's no setting inside the DME you can change. It compares the vehicle power class with the power class byte stored in the DME, and if they don't match it runs in limp mode. Fortunately the work around is easy.

The simplest way is to take the tune for the 330i that you want to flash, Change the power class byte from 02 to 00 (which matches your car), and change the software number to match the one on your original tune (the program number must match, should be 049PP921S, the software number is after that). The easiest way to do this is with BDM at the moment.
Appreciate 0
      09-27-2016, 01:16 PM   #950
Terraphantm
Captain
253
Rep
775
Posts

Drives: E46 M3 Coupe
Join Date: Apr 2009
Location: N/A

iTrader: (1)

Quote:
Originally Posted by hassmaschine View Post
It's not really possible, and it isn't necessary anyway. the powerclass isn't stored on the DME, and I don't know how you change it or which module it gets it from.

The DME reads the vehicle powerclass value over CAN, which is sent by another module; there's no setting inside the DME you can change. It compares the vehicle power class with the power class byte stored in the DME, and if they don't match it runs in limp mode. Fortunately the work around is easy.

The simplest way is to take the tune for the 330i that you want to flash, Change the power class byte from 02 to 00 (which matches your car), and change the software number to match the one on your original tune (the program number must match, should be 049PP921S, the software number is after that). The easiest way to do this is with BDM at the moment.
Chris, I'm still not convinced about the power class being obtained over CAN. The non-BN2000 cars (namely the E85) don't have any modules that would store that information, and they still verify the power class. I think serial EEPROM is the most likely candidate. NCS Expert seems to have the capability to write the power-class *IF* the DME is virginal (stat_bz_wert or whatever it's called = 0)

Have you ever written a full dump from a 325i DME to a 330 DME or vice versa (or 525/530, etc)? What does the DME report as the power class?

Last edited by Terraphantm; 09-27-2016 at 01:21 PM..
Appreciate 0
      09-27-2016, 01:33 PM   #951
roflmao
New Member
0
Rep
16
Posts

Drives: bmw e60
Join Date: Sep 2016
Location: tashkent

iTrader: (0)

Thank for you reply! The car is already flashed and as you say it runs in limp mode. If i look in dme coding via NCSEXPERT (msv70) i can see, that oulcoding is wert 0 (low power class) and i need wert 2 ( high power class). So, now i have an error in ISTA P (wrong coding).Can you tell me, where is the power class byte, that i should change? Thanks in advance!
Appreciate 0
      09-27-2016, 01:45 PM   #952
hassmaschine
Major General
United_States
3966
Rep
7,215
Posts

Drives: "NBO" 330i
Join Date: Jun 2014
Location: earth

iTrader: (0)

Quote:
Originally Posted by Terraphantm View Post
Chris, I'm still not convinced about the power class being obtained over CAN. The non-BN2000 cars (namely the E85) don't have any modules that would store that information, and they still verify the power class. I think serial EEPROM is the most likely candidate. NCS Expert seems to have the capability to write the power-class *IF* the DME is virginal (stat_bz_wert or whatever it's called = 0)

Have you ever written a full dump from a 325i DME to a 330 DME or vice versa (or 525/530, etc)? What does the DME report as the power class?
Maybe on the non-BN2000 cars it works differently, but it definitely references "power class received via CAN" in the assembly.

I would have to pull a RAM dump after cloning a DME, because the power class byte is tested against a value stored in RAM (which, as far as I can tell, is determined via CAN on the BN2000 cars). I don't think it will change until it connects to the car.

it is possible of course to write software that will reset the "stat_bz_wert" (I think that's close), but there's literally no point when you can just change the byte in the tune file to match what the DME is expecting.

The serial EEPROM is still problematic. But I'm not convinced any adaptations are stored there. I have actually tested it by zeroing out the entire thing, and none of the learned variants were affected.
Appreciate 0
      09-27-2016, 01:48 PM   #953
hassmaschine
Major General
United_States
3966
Rep
7,215
Posts

Drives: "NBO" 330i
Join Date: Jun 2014
Location: earth

iTrader: (0)

Quote:
Originally Posted by roflmao View Post
Thank for you reply! The car is already flashed and as you say it runs in limp mode. If i look in dme coding via NCSEXPERT (msv70) i can see, that oulcoding is wert 0 (low power class) and i need wert 2 ( high power class). So, now i have an error in ISTA P (wrong coding).Can you tell me, where is the power class byte, that i should change? Thanks in advance!
if your software number is current (049PP921S), then the power class byte is 0x44D50. Change it from 02 to 00 and it will work perfectly.
Appreciate 0
      09-27-2016, 02:00 PM   #954
Terraphantm
Captain
253
Rep
775
Posts

Drives: E46 M3 Coupe
Join Date: Apr 2009
Location: N/A

iTrader: (1)

Quote:
Originally Posted by hassmaschine View Post
Maybe on the non-BN2000 cars it works differently, but it definitely references "power class received via CAN" in the assembly.

I would have to pull a RAM dump after cloning a DME, because the power class byte is tested against a value stored in RAM (which, as far as I can tell, is determined via CAN on the BN2000 cars). I don't think it will change until it connects to the car.

it is possible of course to write software that will reset the "stat_bz_wert" (I think that's close), but there's literally no point when you can just change the byte in the tune file to match what the DME is expecting.

The serial EEPROM is still problematic. But I'm not convinced any adaptations are stored there. I have actually tested it by zeroing out the entire thing, and none of the learned variants were affected.
Just took a look at the code. Looks like BN2000 cars have an extra step of verification.

Non-BN2000 cars compare the value in the parameter space with a value in RAM (pow_conf_idx_ext_req), which is "power class via tester". I suspect "tester" in this case refers to what NCS can set. Where that value is retrieved from and loaded into RAM, I'm not sure. I'd investigate further, but I really should be studying for my anatomy final

BN2000 cars do the above comparison *and* a comparison that's received over CAN (CAN comparison is actually done first, but same difference)
Appreciate 0
      09-27-2016, 02:06 PM   #955
roflmao
New Member
0
Rep
16
Posts

Drives: bmw e60
Join Date: Sep 2016
Location: tashkent

iTrader: (0)

Quote:
Originally Posted by hassmaschine View Post
if your software number is current (049PP921S), then the power class byte is 0x44D50. Change it from 02 to 00 and it will work perfectly.
Now i have a dump from EEPROM (95320). As i know power klass byte is there. Or i need a full dump? Can kess v2 make this dump? The software number is 049PP0L921S.
Appreciate 0
      09-27-2016, 02:09 PM   #956
Terraphantm
Captain
253
Rep
775
Posts

Drives: E46 M3 Coupe
Join Date: Apr 2009
Location: N/A

iTrader: (1)

Quote:
Originally Posted by roflmao View Post
Now i have a dump from EEPROM (95320). As i know power klass byte is there. Or i need a full dump? Can kess v2 make this dump? The software number is 049PP0L921S.
Forget the 95320. Dump the parameter space ("tune") and change the byte hass mentioned. Correct checksums and flash back
Appreciate 0
      09-27-2016, 02:15 PM   #957
roflmao
New Member
0
Rep
16
Posts

Drives: bmw e60
Join Date: Sep 2016
Location: tashkent

iTrader: (0)

Thank you! Sorry for my stupid questions. Can kess read and write parameter space? (if you know of course). And sorry please, but 0x44D50 is the string in hex redactor? Sorry for my stupid question again
Appreciate 0
      09-27-2016, 02:18 PM   #958
dstrickland
Banned
329
Rep
325
Posts

Drives: BMW 06 325I
Join Date: Mar 2016
Location: Atlanta, Ga, USA

iTrader: (0)

Quote:
Originally Posted by roflmao View Post
Now i have a dump from EEPROM (95320). As i know power klass byte is there. Or i need a full dump? Can kess v2 make this dump? The software number is 049PP0L921S.
We used a Kess v2 to do my 325/330 conversion. As Hassmachine said, flash the 330/530 software with winkfp, use kess v2 to read the entire file, open the bin & change the powerclass from 02 to 00. Then upload the new modified file.
Attached Images
 
Appreciate 0
      09-27-2016, 02:20 PM   #959
hassmaschine
Major General
United_States
3966
Rep
7,215
Posts

Drives: "NBO" 330i
Join Date: Jun 2014
Location: earth

iTrader: (0)

Quote:
Originally Posted by roflmao View Post
Thank you! Sorry for my stupid questions. Can kess read and write parameter space? (if you know of course). And sorry please, but 0x44D50 is the string in hex redactor? Sorry for my stupid question again
0x44D50 is the offset (or address). Yes, Kess can write to the parameter space. You can use a hex editor to find the address and change the byte (the value will be 02, change it to 00).
Appreciate 0
      09-27-2016, 02:21 PM   #960
roflmao
New Member
0
Rep
16
Posts

Drives: bmw e60
Join Date: Sep 2016
Location: tashkent

iTrader: (0)

Thank you very much! God bless you, guys
Appreciate 0
      09-27-2016, 07:57 PM   #961
rjahl
Colonel
rjahl's Avatar
996
Rep
2,287
Posts

Drives: Z4 35is
Join Date: Jun 2011
Location: Tampa

iTrader: (0)

Garage List
2012 Z4 35is  [0.00]
Quote:
Originally Posted by hassmaschine
Quote:
Originally Posted by Terraphantm View Post
Chris, I'm still not convinced about the power class being obtained over CAN. The non-BN2000 cars (namely the E85) don't have any modules that would store that information, and they still verify the power class. I think serial EEPROM is the most likely candidate. NCS Expert seems to have the capability to write the power-class *IF* the DME is virginal (stat_bz_wert or whatever it's called = 0)

Have you ever written a full dump from a 325i DME to a 330 DME or vice versa (or 525/530, etc)? What does the DME report as the power class?
Maybe on the non-BN2000 cars it works differently, but it definitely references "power class received via CAN" in the assembly.

I would have to pull a RAM dump after cloning a DME, because the power class byte is tested against a value stored in RAM (which, as far as I can tell, is determined via CAN on the BN2000 cars). I don't think it will change until it connects to the car.

it is possible of course to write software that will reset the "stat_bz_wert" (I think that's close), but there's literally no point when you can just change the byte in the tune file to match what the DME is expecting.

The serial EEPROM is still problematic. But I'm not convinced any adaptations are stored there. I have actually tested it by zeroing out the entire thing, and none of the learned variants were affected.
I can confirm this. I took a full read of all three chips, ECU, flash and EEPROM then reset adaptions took another full read and compared the three files again and nothing changed. Adaptions must be stored some where else.
Appreciate 0
      09-27-2016, 10:44 PM   #962
hassmaschine
Major General
United_States
3966
Rep
7,215
Posts

Drives: "NBO" 330i
Join Date: Jun 2014
Location: earth

iTrader: (0)

They are save in ram. A portion of it is non volatile and doesn't get erased if you remove power.
Appreciate 0
      09-27-2016, 10:49 PM   #963
Terraphantm
Captain
253
Rep
775
Posts

Drives: E46 M3 Coupe
Join Date: Apr 2009
Location: N/A

iTrader: (1)

Quote:
Originally Posted by hassmaschine View Post
They are save in ram. A portion of it is non volatile and doesn't get erased if you remove power.
Must be an external chip that the BDM doesn't dump then; MPC5xx datasheets don't mention anything about non-volatile memory.
Appreciate 0
      09-27-2016, 11:36 PM   #964
hassmaschine
Major General
United_States
3966
Rep
7,215
Posts

Drives: "NBO" 330i
Join Date: Jun 2014
Location: earth

iTrader: (0)

Are you sure? I specifically remember reading that a portion of it was. Anyway, I'm not neccesarily convinced the EEPROM doesn't play a role. We just don't know where it really fits, or how the cpu reads and writes to it.

On MSV70, there's a bunch of references to data at 0x180000 (all of them are mapped in MSS70 disassembly, many in MSV70). Unfortunately it doesn't seem to line up at all with the data in the EEPROM (some of which i have mapped out seperately - IBS data is stored there for sure).

Also, there are no references to a data section like that in MS45, which has the same EEPROM...
Appreciate 0
      09-28-2016, 12:51 PM   #965
roflmao
New Member
0
Rep
16
Posts

Drives: bmw e60
Join Date: Sep 2016
Location: tashkent

iTrader: (0)

Hello guys! Today i tried to change the byte in "tune" section of my dme. There was 02, changet to 00, but no effect at all. Is there any way to reset "run time" (operating minutes) in my dme (to get stat_bsz_wert 0)?
Appreciate 0
      09-28-2016, 12:55 PM   #966
hassmaschine
Major General
United_States
3966
Rep
7,215
Posts

Drives: "NBO" 330i
Join Date: Jun 2014
Location: earth

iTrader: (0)

Did you change the correct byte? It will work. You don't need to reset the runtime. I've done this several times on different cars.

if you have your binary, PM me your email and I can look at it.
Appreciate 0
      09-28-2016, 01:20 PM   #967
roflmao
New Member
0
Rep
16
Posts

Drives: bmw e60
Join Date: Sep 2016
Location: tashkent

iTrader: (0)

I will send it to you tomorrow, thank you! The entire string was like on dstrickland's picture. I changed 02 to 00. I already changed the model number from ne53 to ne73 and coded the entire car via ista P. But nothing worked.
Appreciate 0
      09-28-2016, 01:42 PM   #968
hassmaschine
Major General
United_States
3966
Rep
7,215
Posts

Drives: "NBO" 330i
Join Date: Jun 2014
Location: earth

iTrader: (0)

Is the model number NE53 the 525i, and NE73 the 530i?

that could be your problem. It's not necessary to change anything on the car. The DME has no idea that the tune is from a 530i - that's why we change the power class byte to match the car, instead of the other way around.

That byte is the only thing the DME is looking at, so it's possible changing the model number is now making it fault because now the car doesn't match the DME.

again, the only necessary change for using a 530i/330i file (higher power class) on 525/325i car is the power class byte. Nothing else needs to be changed.
Appreciate 0
Reply

Bookmarks


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off



All times are GMT -5. The time now is 05:05 PM.




e90post
Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.
1Addicts.com, BIMMERPOST.com, E90Post.com, F30Post.com, M3Post.com, ZPost.com, 5Post.com, 6Post.com, 7Post.com, XBimmers.com logo and trademark are properties of BIMMERPOST