M-Drive and MDM in non M cars

bosolanu

Private
Dec 7, 2020
44
12
0
Thank you very much @RSL.

Just to confirm, byte 1 bit 1 not byte 0 bit 0, right?
So, as you said the position of 0x51/0x52.

I'll modify my code to have all the bits displayed in the code and not hex as it is now. Hopefully it'll make it easier to spot the errors.
 

RSL

Lieutenant
Aug 11, 2017
937
501
0
Correct. Technically, byte 1 bit 0 = 1 when M Drive is off, so byte 1 = b10 when on, b01 when off.
 
  • Like
Reactions: bosolanu

bosolanu

Private
Dec 7, 2020
44
12
0
I managed to turn on the m light only after turning ignition on and before the abs/mdm/engine lights turn off, afterwards the message doesn't have any effect.

This time I'm sure the message is good :) I have all the bits mapped out and modifiable individually.

Also I can turn DSC fully off via can message. Still nothing with the cc button, I'll check the wiring again tomorrow and resolve the brake pad sensors.
 

RSL

Lieutenant
Aug 11, 2017
937
501
0
I can't remember if I had to flash back to stock DSC to reset the brake pads or not. I know I did flash back briefly, but was so long ago, can't remember if I did that before or after I replaced the sensor or if it had to be done to even get reset completed.

I know he has his hands full, but if @Jake@MHD can modify 0x399 byte 1 construction in MSD, I don't think a shield or interposer is even necessary for MDrive, unless you really, really want to save settings via CIC (defaults can be changed in DME bin) or have functional shift lights.

Real M3 0x399 MDrive message from CAN log by I can't remember who right now.
m3_399.png


MSD81 native 0x399 MDrive message. Byte layout is the same, bit layout is a little different, but most of the values crossover anyway. The only thing it really needs to pass settings to other M modules is the correct MDrive Active bits, otherwise, they still have to be set manually (D/S, DriveLogic level in DKG, etc).
msd_399.png
 
  • Like
Reactions: bosolanu

bosolanu

Private
Dec 7, 2020
44
12
0
Well, it seems I have a bigger problem with the DSC unit. I'll see what with them, they only appear in Tool 32 and possibly INPA, in ISTA+ they are not shown.

Funnily I have the Center console buttons (power, edc, dsc) and oem wired for DSC and EDC but DSC one doesn't seem to work, it did work a few times but only when I jumped a negative wire to the DSC wire that goes to pin 41 on DSC.

It's weird, I might have to buy an M3 DSC unit or similar.
EDC button and led works but I can't really feel the difference between modes. @superwofy, I know you retrofitted EDC on your car too, is there something I'm missing? The wiring is oem, taken from an M3 complete wiring loom. Maybe some programming, coding, service functions? Can you feel the difference between modes?
Screenshot 2022-09-18 at 15.42.33.png

Errors translated with google translate:

5DE1 - DSC-ECu internal clockstatus des sp-interface zeight fehlende uhr
5DE0 - DSC-ECu internal - plausibility of the vasp-u_bit in relation to uz supply voltage terminal 15
5E5B - Wheel speed sensor in general: long-term suspicion of error 3-4 RDF led to
 
Last edited:

RSL

Lieutenant
Aug 11, 2017
937
501
0
The first 2 codes also seem to be used for brake sensors on some years/models and last may be DSC button pressed longer than 10 seconds. It's certainly odd that they don't all agree there are even errors though.
 

pepsicola

Lurker
Apr 8, 2019
10
1
0
Ride
335i
This is very interesting for me.
I am from Australia. I have basically move all the hardware from an M3 across into a E90 335i except the n54 engine, including some body work but that's not relevant.
I have fitted EDC, servotronic steering (I have it wired up to a Z4 JBBF so I can have lighter steering). I have also converted the auto to a DCT with the M3 gear shifter so it's running M3 GTS flash on the DCT.
Ideally I would like Mdrive working also, was considering just use a Z4 style switch to control the EDC. But also found a MSS60 cheap, so also considering running dual DME as someone has done it, but unsure how this can be done.
The car was running and getting tune, then the turbo failed, so I have it off the road and just need to organise time to get the new turbo fitted so I can finish the tuning and get onto the Mdrive stuff.
 
  • Like
Reactions: aus335iguy

aus335iguy

Colonel
Nov 18, 2017
2,251
805
0
Down under
Ride
335i DCT 2009
This is very interesting for me.
I am from Australia. I have basically move all the hardware from an M3 across into a E90 335i except the n54 engine, including some body work but that's not relevant.
I have fitted EDC, servotronic steering (I have it wired up to a Z4 JBBF so I can have lighter steering). I have also converted the auto to a DCT with the M3 gear shifter so it's running M3 GTS flash on the DCT.
Ideally I would like Mdrive working also, was considering just use a Z4 style switch to control the EDC. But also found a MSS60 cheap, so also considering running dual DME as someone has done it, but unsure how this can be done.
The car was running and getting tune, then the turbo failed, so I have it off the road and just need to organise time to get the new turbo fitted so I can finish the tuning and get onto the Mdrive stuff.
Where abouts are you in Oz brother?
I’m not an expert but I believe that you just need the basics hooked up to the MSS60 so that it responds correctly to the can requests. Power and Can etc. in all likelyhood if you already have a can bridge it’ll be easier to use that.
 

pepsicola

Lurker
Apr 8, 2019
10
1
0
Ride
335i
Where abouts are you in Oz brother?
I’m not an expert but I believe that you just need the basics hooked up to the MSS60 so that it responds correctly to the can requests. Power and Can etc. in all likelyhood if you already have a can bridge it’ll be easier to use that.
I am in Melbourne.
That's what I thought, but I wasn't sure if it will create any conflict having 2 DMEs in the PT-CAN.
What is a CAN bridge?
 

pepsicola

Lurker
Apr 8, 2019
10
1
0
Ride
335i
Just Googled can bridge, so that can filtered out unwanted messages if it does spit the dummy.
But it would be easy enough for me to just hook up the power and CAN wires to see.
Where are you from @aus335iguy?
 

superwofy

Corporal
Jan 18, 2021
109
151
0
It's weird, I might have to buy an M3 DSC unit or similar.
EDC button and led works but I can't really feel the difference between modes. @superwofy, I know you retrofitted EDC on your car too, is there something I'm missing? The wiring is oem, taken from an M3 complete wiring loom. Maybe some programming, coding, service functions? Can you feel the difference between modes?

Sorry, only seeing this now. Nothing funky about the EDC retrofit. Coding the JBE switches the PWM output for Servotronic to EDC leds. If the leds switch correctly it most likely is working.

To check, use Tool32 -> EDCK65 -> status_digital and make sure the modes are changing when using the EDC switch. Would also recommend you set your offsetwerte ( Wear / mileage on shocks ).

As for feeling the difference - yes. There is a difference but it's not *very* pronounced. I.e in full sport mode hitting bumps makes the dashboard rattle a bit more kind of way.
 

Jake@MHD

Major
Platinum Vendor
Nov 7, 2016
1,593
2,060
0
Philly
I can't remember if I had to flash back to stock DSC to reset the brake pads or not. I know I did flash back briefly, but was so long ago, can't remember if I did that before or after I replaced the sensor or if it had to be done to even get reset completed.

I know he has his hands full, but if @Jake@MHD can modify 0x399 byte 1 construction in MSD, I don't think a shield or interposer is even necessary for MDrive, unless you really, really want to save settings via CIC (defaults can be changed in DME bin) or have functional shift lights.

Real M3 0x399 MDrive message from CAN log by I can't remember who right now.
View attachment 74004

MSD81 native 0x399 MDrive message. Byte layout is the same, bit layout is a little different, but most of the values crossover anyway. The only thing it really needs to pass settings to other M modules is the correct MDrive Active bits, otherwise, they still have to be set manually (D/S, DriveLogic level in DKG, etc).
View attachment 74003

I do want to get this change together for you to test. Shoot me a msg this week and I'll see what I can do
 
  • Like
Reactions: RSL and aus335iguy

pepsicola

Lurker
Apr 8, 2019
10
1
0
Ride
335i
I can't remember if I had to flash back to stock DSC to reset the brake pads or not. I know I did flash back briefly, but was so long ago, can't remember if I did that before or after I replaced the sensor or if it had to be done to even get reset completed.

I know he has his hands full, but if @Jake@MHD can modify 0x399 byte 1 construction in MSD, I don't think a shield or interposer is even necessary for MDrive, unless you really, really want to save settings via CIC (defaults can be changed in DME bin) or have functional shift lights.

Real M3 0x399 MDrive message from CAN log by I can't remember who right now.
View attachment 74004

MSD81 native 0x399 MDrive message. Byte layout is the same, bit layout is a little different, but most of the values crossover anyway. The only thing it really needs to pass settings to other M modules is the correct MDrive Active bits, otherwise, they still have to be set manually (D/S, DriveLogic level in DKG, etc).
View attachment 74003

But then the settings would be hard coded into the DME on what settings it's requested on DCT and EDC etc? Without being able to save it into the CIC. Once I put my car back together, I want to wire up the MSS60, and see if I have to block all other CAN messages coming from it other than say 0x399 and 0x315?
 

RSL

Lieutenant
Aug 11, 2017
937
501
0
I do want to get this change together for you to test. Shoot me a msg this week and I'll see what I can do
Thanks, I'll shoot you a message on Monday.

But then the settings would be hard coded into the DME on what settings it's requested on DCT and EDC etc? Without being able to save it into the CIC. Once I put my car back together, I want to wire up the MSS60, and see if I have to block all other CAN messages coming from it other than say 0x399 and 0x315?
You can certainly do that too, but most probably won't want to out of hassle/expense. If you've retrofitted everything else and want shift lights, it might make more sense, but it must be way cheaper and easier to use CAN add on at that point and send your own message(s).

What's hard coded in MSD are the MDrive defaults to recall, but they can obviously be changed by buttons after the fact or a flash to permanently change the presets. On my actual M, I never changed MDrive defaults once set. If I changed anything to suit after recall, it was usually just DriveLogic level and I used the button for that. It's a lot easier than browsing through menus to get to.

On M, CIC is kind of one stop shop for M settings. When they are changed in CIC, they are broadcast on 0x3CA IIRC. MSD doesn't have/look for that message anywhere that I've seen.
 

pepsicola

Lurker
Apr 8, 2019
10
1
0
Ride
335i
Thanks, I'll shoot you a message on Monday.


You can certainly do that too, but most probably won't want to out of hassle/expense. If you've retrofitted everything else and want shift lights, it might make more sense, but it must be way cheaper and easier to use CAN add on at that point and send your own message(s).

What's hard coded in MSD are the MDrive defaults to recall, but they can obviously be changed by buttons after the fact or a flash to permanently change the presets. On my actual M, I never changed MDrive defaults once set. If I changed anything to suit after recall, it was usually just DriveLogic level and I used the button for that. It's a lot easier than browsing through menus to get to.

On M, CIC is kind of one stop shop for M settings. When they are changed in CIC, they are broadcast on 0x3CA IIRC. MSD doesn't have/look for that message anywhere that I've seen.

The MSS60 costed only about $200, and I have everything from the M3 retrofitted. I am not sure if shift light is going to work? How does it get trigger?
 

RSL

Lieutenant
Aug 11, 2017
937
501
0
It would probably be $25-50 to DIY on CAN though and you wouldn't have to find space for something the size of a second DME.

If enabled in MDrive, I think shiftlights are just RPM and maybe pedal position.
 

bosolanu

Private
Dec 7, 2020
44
12
0
Sorry, only seeing this now. Nothing funky about the EDC retrofit. Coding the JBE switches the PWM output for Servotronic to EDC leds. If the leds switch correctly it most likely is working.

To check, use Tool32 -> EDCK65 -> status_digital and make sure the modes are changing when using the EDC switch. Would also recommend you set your offsetwerte ( Wear / mileage on shocks ).

As for feeling the difference - yes. There is a difference but it's not *very* pronounced. I.e in full sport mode hitting bumps makes the dashboard rattle a bit more kind of way.
No worries, I have been busy as well.
It's all working, leds and all that.
I would describe the Edc the same way, I will fool around with coding when I get to it.
Thanks! I will also try to se the wear offset.


The problem I have now is with the DSC off switch, apparently my DSC module expects 12v on pin 41 which is interrupted when the button is pressed.

My buttons cluster just shorts this pin to ground, it does not supply voltage to it.
I'm not sure how it is supposed to work.
Does anyone know or is able to check maybe?

Feeding 12v continuously does work. I'm not getting the DSC off message when starting the car and no more "dsc button held for more than 10 sec" error codes.

I still haven't been able to get the M light working fine but I'm trying again tonight with a different approach.
 

pepsicola

Lurker
Apr 8, 2019
10
1
0
Ride
335i
It would probably be $25-50 to DIY on CAN though and you wouldn't have to find space for something the size of a second DME.

If enabled in MDrive, I think shiftlights are just RPM and maybe pedal position.

Makes sense in a way. Especially if I ended up having to use a filter to filter out unwanted messages too.
Will the shift light behave normal thou with the engine having different redlines.
 

bosolanu

Private
Dec 7, 2020
44
12
0
No worries, I have been busy as well.
It's all working, leds and all that.
I would describe the Edc the same way, I will fool around with coding when I get to it.
Thanks! I will also try to se the wear offset.


The problem I have now is with the DSC off switch, apparently my DSC module expects 12v on pin 41 which is interrupted when the button is pressed.

My buttons cluster just shorts this pin to ground, it does not supply voltage to it.
I'm not sure how it is supposed to work.
Does anyone know or is able to check maybe?

Feeding 12v continuously does work. I'm not getting the DSC off message when starting the car and no more "dsc button held for more than 10 sec" error codes.

I still haven't been able to get the M light working fine but I'm trying again tonight with a different approach.
So, I spent some more time with it.
When I send the mdrive on messages,
EDC (jbbf as I understand) reacts and switches to sport+ (that's what's in the 399 message),
CIC also updates the screen,
DSC doesn't change by itself.

I am able to turn MDM on through the "dct" off message.

The M light in the kombi still doesn't work under any circumstances.
At some point, last week, it was turning on but just after switching on the ignition.
I thought it doesn't work after the initial seconds because the car thinks the "DSC off" button being pressed continuously, but now it doesn't work at all.

I checked the coding on the kombi and it is set as bmw motorsport, the check alive "mdrv" options are on. Also tried with "chk_csum_mdrv" off but it makes no difference.
The gearbox type is set to dkg for the shiftlights to work, will try to change that too but I doubt it is the issue.

Now I took the kombi off the car and I'll try to do it on bench, see what happens.
 

bosolanu

Private
Dec 7, 2020
44
12
0
Makes sense in a way. Especially if I ended up having to use a filter to filter out unwanted messages too.
Will the shift light behave normal thou with the engine having different redlines.
The shiftlights logic could be in the module and you can play with it as you want, this is what superwofy is doing and I'm doing the same.
Superwofy's module is functional and has all the functionality for mdrive and shiftlights, have a look at that.
If you end up using a module you can also add all kind of extra functionality but beware of something else to act up and you will have to program it yourself.