E90Post
 


TNT Racewerks
 
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
      03-09-2017, 06:38 PM   #1475
Terraphantm
Captain
253
Rep
775
Posts

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

iTrader: (1)

Yep. I quite liked the throttle difference after getting it to work on my 330i (though I do wonder if the difference would be less pronounced on a valvetronic engine). I can't comment on transmission or steering since my 330 is a manual and has hydraulic steering.

It should be like a 10 minute retrofit since everything is prewired. Switch is overpriced at $50, but at least it has the factory fit/finish.

If you dig out the connector and momentarily connect a resistor between ground and the trigger pin (resistance has to be somewhere between 3.5kΩ and 18kΩ; I used 10k), you can trigger sport mode that way to see if you notice a difference before spending any money.

I also think you'd have to recode the EPS module with NCS Expert for the steering stuff to work, but that's easy.

Last edited by Terraphantm; 03-09-2017 at 06:52 PM..
Appreciate 0
      03-09-2017, 07:08 PM   #1476
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 Terraphantm View Post
Yep. I quite liked the throttle difference after getting it to work on my 330i (though I do wonder if the difference would be less pronounced on a valvetronic engine). I can't comment on transmission or steering since my 330 is a manual and has hydraulic steering.

It should be like a 10 minute retrofit since everything is prewired. Switch is overpriced at $50, but at least it has the factory fit/finish.

If you dig out the connector and momentarily connect a resistor between ground and the trigger pin (resistance has to be somewhere between 3.5kΩ and 18kΩ; I used 10k), you can trigger sport mode that way to see if you notice a difference before spending any money.

I also think you'd have to recode the EPS module with NCS Expert for the steering stuff to work, but that's easy.
I tried to locate the cable without pulling the center console with no luck.

If I'm going to remove the center console to get at the harness I'm going to finish the job ? cut the hole and install the switch.
Appreciate 0
      03-09-2017, 08:18 PM   #1477
Terraphantm
Captain
253
Rep
775
Posts

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

iTrader: (1)

Quote:
Originally Posted by rjahl View Post
I tried to locate the cable without pulling the center console with no luck.

If I'm going to remove the center console to get at the harness I'm going to finish the job ? cut the hole and install the switch.
Ah fair enough. Most of the ones I've seen seemed to have the wire pretty accessible from the shifter area, but I guess some might have it tucked away.
Appreciate 0
      03-09-2017, 09:59 PM   #1478
Terraphantm
Captain
253
Rep
775
Posts

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

iTrader: (1)

Quote:
Originally Posted by BimmerGeeks View Post
I know Hass dug into this for e90, would still love to figure it out. Canbus hack doesn't seem appealing.

Being us upgraded 325i guys don't have he exhaust flap to share the same pin, id love a solution.
We got most of the way there. We forced the code to use a physical button instead of the can-bus trigger, and he was able to get the DME to recognize that it was being pressed. I think we were still tripping one of the weirder checksums, but I think I know how to bypass that routine altogether.

What you won't get is an LED indicating whether or not you're in sport mode. MSV70 doesn't have the code or output to trigger an LED (in the E85, it's actually the EPS module that reads the sport status on the can bus and triggers the LED).

You *might* be able to get the instrument cluster to display the sport status like in the E60. E90 cluster has the necessary functions which can be enabled via NCS (and they're used in DCT cars). But what I don't now is what normally broadcasts the status to the instrument cluster in BN2000 cars. If it's the DME, then the above hack should work. If it's a different module, then you'll pretty much have to trigger sport mode via CAN if you want to be able to see its status.
Appreciate 0
      03-09-2017, 10:11 PM   #1479
Terraphantm
Captain
253
Rep
775
Posts

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

iTrader: (1)

In that case if you want I could try to dig up my notes on the patches and send you a file.
Appreciate 0
      03-09-2017, 10:39 PM   #1480
hassmaschine
Major General
United_States
3975
Rep
7,215
Posts

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

iTrader: (0)

Yeah, I sort of stopped at the internal error - tried some things to get around it, but moved on to other things. The switch is still wired into my car, lol.

Needless to say, Terra and I have learned a lot since then.. i just need the motivation to try it again. Presently, I still have higher priorities.
Appreciate 0
      03-09-2017, 11:41 PM   #1481
3002 tii
Lieutenant General
3002 tii's Avatar
2304
Rep
12,570
Posts

Drives: Z4 M, X5, GX460
Join Date: Apr 2008
Location: CT

iTrader: (99)

Garage List
Quote:
Originally Posted by rjahl View Post
Yes, that's something I want to try. It also affects the steering and engine throttle response. One more project.....
Throttle response yet, steering maybe but I never noticed a difference. Fwiw I don't like sport mode, throttle is way too twitchy.

Here's info on retrofit but think conclusion was that only works on m54
http://www.zpost.com/forums/showthre...=266281&page=6
__________________
Follow for latest mods

Last edited by 3002 tii; 03-09-2017 at 11:53 PM..
Appreciate 0
      03-10-2017, 12:14 AM   #1482
Terraphantm
Captain
253
Rep
775
Posts

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

iTrader: (1)

I guess check if the trigger wire is at the VIM module. If it is, then the connection should be somewhere under the dash.
Appreciate 0
      03-10-2017, 03:05 PM   #1483
hassmaschine
Major General
United_States
3975
Rep
7,215
Posts

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

iTrader: (0)

Just deleted my MAF (swapped in the IAT that I got from Pete months ago). Using all factory settings (except the tuned stuff I already have), it runs perfectly. Can't tell any difference on intial startup. Obviously it's not going to be a huge difference in power (just less restrictive), but it seems smoother.

The only real difference is lv_var_maf is still set to 1, so I had to delete 2D0F, (air mass meter, signal). Not a big deal - it didn't even cause a CEL or anything when it triggered.

We'll see when I eventually go back to a dyno whether any of this really made a difference.
Appreciate 0
      03-10-2017, 03:41 PM   #1484
Taskmaster
Banned
Japan
2469
Rep
9,004
Posts

Drives: M235i 6MT / E92 328 Msport 6MT
Join Date: Nov 2013
Location: Florida

iTrader: (6)

Quote:
Originally Posted by hassmaschine View Post
Just deleted my MAF (swapped in the IAT that I got from Pete months ago). Using all factory settings (except the tuned stuff I already have), it runs perfectly. Can't tell any difference on intial startup. Obviously it's not going to be a huge difference in power (just less restrictive), but it seems smoother.

The only real difference is lv_var_maf is still set to 1, so I had to delete 2D0F, (air mass meter, signal). Not a big deal - it didn't even cause a CEL or anything when it triggered.

We'll see when I eventually go back to a dyno whether any of this really made a difference.
I think my code for that is deleted as well, it just shows up as 0000 now if (when) the car starts throwing codes out. If it works for the MSV70, maybe it's not supposed to work for the MSZV80 cars...?
Appreciate 0
      03-10-2017, 03:55 PM   #1485
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
Just deleted my MAF (swapped in the IAT that I got from Pete months ago). Using all factory settings (except the tuned stuff I already have), it runs perfectly. Can't tell any difference on intial startup. Obviously it's not going to be a huge difference in power (just less restrictive), but it seems smoother.

The only real difference is lv_var_maf is still set to 1, so I had to delete 2D0F, (air mass meter, signal). Not a big deal - it didn't even cause a CEL or anything when it triggered.

We'll see when I eventually go back to a dyno whether any of this really made a difference.
Probably a dumb question, but did you clear the learned variants beforehand?
Appreciate 0
      03-10-2017, 05:26 PM   #1486
hassmaschine
Major General
United_States
3975
Rep
7,215
Posts

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

iTrader: (0)

Yeah I tried that. Doesn't do anything - it goes right back to "1".

Might go away if you know which byte it is in the EEPROM and manually change it. or maybe setting the appropriate lc_ad_clr parameter and then clearing the learned variants again..

anyway it doesn't seem to matter - it runs like stock (well, better).
Appreciate 0
      03-10-2017, 05:30 PM   #1487
hassmaschine
Major General
United_States
3975
Rep
7,215
Posts

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

iTrader: (0)

Quote:
Originally Posted by TheAxiom View Post
I think my code for that is deleted as well, it just shows up as 0000 now if (when) the car starts throwing codes out. If it works for the MSV70, maybe it's not supposed to work for the MSZV80 cars...?
yeah, I'm not convinced many tuners understand how you actually delete error codes on these things. They just blank out the whole line, which does nothing - it will still trigger for many error codes.

An lv_err_xxx byte will be stored in ram and still have the same consequences, but an OBD reader just can't read what code is set because the id is set to 0000. Worse you may have more than 1 code set but since they all have the same id (0000) you would never know.

the right way is to change the .c_err_clas to 0 and the c_abc_inc factor to 0 (this stops the error "counter" from incrementing, so the lv_err_xxx never sets). I never touch the error code itself.

on older DMEs, just zeroing the whole line is enough but not since MS45. Actually I think MS43 and maybe MS42 work the same way.

some codes don't have a corresponding c_abc_inc factor which makes deleting them challenging.. and others, like 2D58/2D59 will not even start if you change c_abc_inc.
Appreciate 0
      03-10-2017, 05:35 PM   #1488
hassmaschine
Major General
United_States
3975
Rep
7,215
Posts

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

iTrader: (0)

speaking of deleting error codes - the EWS delete is getting 2F44 EWS manipulation even though the c_abc_inc code is 0, the .c_err_class is 0, and a bunch of other stuff that should turn it off. Ugh. And you can't even see how it's storing lv_err_imob1 in RAM because it's not directly referenced anywhere in the code..
Appreciate 0
      03-10-2017, 05:46 PM   #1489
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
Yeah I tried that. Doesn't do anything - it goes right back to "1".

Might go away if you know which byte it is in the EEPROM and manually change it. or maybe setting the appropriate lc_ad_clr parameter and then clearing the learned variants again..

anyway it doesn't seem to matter - it runs like stock (well, better).
Sure seems like lc_maf_det_di should prevent it from ever setting. But I assume that's the first thing you've tried

Quote:
Originally Posted by hassmaschine View Post
speaking of deleting error codes - the EWS delete is getting 2F44 EWS manipulation even though the c_abc_inc code is 0, the .c_err_class is 0, and a bunch of other stuff that should turn it off. Ugh. And you can't even see how it's storing lv_err_imob1 in RAM because it's not directly referenced anywhere in the code..
Since there are some references that don't have the 0x40000 shift for whatever reason, which causes xrefs to not work too great with IDA and the MSx70 , I wonder if maybe something is simply being missed.
Appreciate 0
      03-10-2017, 05:51 PM   #1490
hassmaschine
Major General
United_States
3975
Rep
7,215
Posts

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

iTrader: (0)

yeah that's one of the switches in the stock no-maf tune. I copied pretty much everything that made sense - reset variants, and it was still 1.

yeah, I'm sure. That and it's just not too clear where the EEPROM fits in. I'm pretty sure it's the 1802000 segment although the data doesn't really seem to fit..
Appreciate 0
      03-10-2017, 06:04 PM   #1491
Terraphantm
Captain
253
Rep
775
Posts

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

iTrader: (1)

It's been a while since I ran your MS45 EWS delete in my car, but from what I remember, it didn't set off any codes. Don't know if you did anything differently there.
Appreciate 0
      03-10-2017, 06:11 PM   #1492
hassmaschine
Major General
United_States
3975
Rep
7,215
Posts

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

iTrader: (0)

They are all a little different. IIRC, MS45 has less EWS error codes (2) and both were obvious to delete.

MSx80 has 4 active error codes - interestingly, MSx70 has the same 4 codes, but only 3 are actually active.
Appreciate 0
      03-10-2017, 09:51 PM   #1493
Terraphantm
Captain
253
Rep
775
Posts

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

iTrader: (1)

So just so we have it written down somewhere, I've figured out how the CAN-bus Sport Mode trigger works.

There's a message with ARBID 0x315 which BMW called "Vehicle Mode". On the E60, this message is broadcast by the SZM model (center switch module). The message is two bytes. The first byte constantly cycles and appears to be a timer. The second byte is either F1 or F2. If it's set to F2, the DME will enter sport mode. Otherwise it won't. As far as I can tell in BN2000 cars, the DME itself doesn't broadcast anything to tell other modules it's in sport mode. So the transmission and cluster probably also look at that message 0x315.

In LCI E60s with the sports automatic transmission, all of the above is true, but the sport button isn't wired directly to the SZM. Instead, it's wired up to the GWS module. While the button is being pressed, the GWS module broadcasts messageid 0x28D with data "EF FF", and when the button is released, it broadcasts "DF FF" 3 times. A single "EF FF" followed by 3 "DF FF"s seems to be enough to trigger the SZM module to change the sport status to F2. There's no checksums or timing sequence on that message ID.

Now in the E90s case, the DCT models *did* have a sport button (and it seems to work pretty much like it does on the E60 -- button is wired up the GWS module, which then does its thing). So perhaps the "easiest" way to add the sport functionality would be to throw an arduino with a can-shield on the PT-CAN bus, and just send that 0xEF FF when the button is pressed, followed by the DF FFs when it's released. Should be really easy to code instead of having to worry about timers and such. You can also trigger an LED based on what's being sent on 0x315
Appreciate 0
      03-11-2017, 11:39 AM   #1494
Terraphantm
Captain
253
Rep
775
Posts

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

iTrader: (1)

Okay, I think I figured out yet another way to add sport mode to E9xs. You can use the E89 Z4 stuff (however it looks like it would require a JBE II with coding index 09 or 0A, or a JBE III module).



Basically wire up one end of the switch to pin 18 on that JBE module, and the other to ground. Then wire a second switch to pin 36 (or use a rocker). And then in NCS, go to the JBE module and set "FDS_Switch" to aktiv. Then in the Kombi, set FDC_ID_MONITOR to aktiv, along with either FDC_VERBAUT or SPORT_ANZEIGE (both are the same function, but newer clusters have the second label for whatever reason). Maybe also set FDS_ENABLE, FDS_ID_MONITOR, FDS_CSUM_MONITOR, and FDS_ALIVE_ZAEHLER to aktiv (these functions are only in KMBI_PL2.C08 and C09).




DME will still need programming to enter sport mode, but it's only a single byte if you're using the CAN-bus to trigger it IIRC.

Last edited by Terraphantm; 03-11-2017 at 12:13 PM..
Appreciate 1
      03-12-2017, 10:09 AM   #1495
808AWD325xi
Ballin' out of control.
808AWD325xi's Avatar
No_Country
520
Rep
1,289
Posts

Drives: 2009 335i
Join Date: Jul 2007
Location: Moline, IL

iTrader: (0)

Quote:
Originally Posted by Terraphantm View Post
Okay, I think I figured out yet another way to add sport mode to E9xs. You can use the E89 Z4 stuff (however it looks like it would require a JBE II with coding index 09 or 0A, or a JBE III module).



Basically wire up one end of the switch to pin 18 on that JBE module, and the other to ground. Then wire a second switch to pin 36 (or use a rocker). And then in NCS, go to the JBE module and set "FDS_Switch" to aktiv. Then in the Kombi, set FDC_ID_MONITOR to aktiv, along with either FDC_VERBAUT or SPORT_ANZEIGE (both are the same function, but newer clusters have the second label for whatever reason). Maybe also set FDS_ENABLE, FDS_ID_MONITOR, FDS_CSUM_MONITOR, and FDS_ALIVE_ZAEHLER to aktiv (these functions are only in KMBI_PL2.C08 and C09).




DME will still need programming to enter sport mode, but it's only a single byte if you're using the CAN-bus to trigger it IIRC.
Interesting stuff, I've been thinking about this myself. MSD8x DMEs have PIDs that return the voltage of the sports button and whether it's active.
__________________
Alpina B3 Flash/BMS OCC/ER CP/ETS 5/HKS BOV/M3 Control Arms
Appreciate 0
      03-12-2017, 10:55 AM   #1496
Terraphantm
Captain
253
Rep
775
Posts

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

iTrader: (1)

Voltage is irrelevant for BN2000 cars (unless you do a lot of program modifications to wire a switch physically to the DME, and even then, that wouldn't work on the MSD81). The 335i tunes do seem to have sport mode enabled by default, so it would be a matter of triggering it (whether you use the Z4 stuff or emulate the E60 signals, end result should be the same as far as the DME is concerned)
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 07:57 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