Coding M modules in a non M car

aus335iguy

Colonel
Nov 18, 2017
2,258
809
0
Down under
Ride
335i DCT 2009
To 100% guarantee success you need M3fkash and M3 m mode SZL and m mode buttons.
but some people have it working on stock hardware as well. The reasons are varied
The buttons are wired differently (4 different ways possibly) in some cars. The paddles are different as well also some SZLs wirethrough things like heated steering,auto wipers etc etc
 

aus335iguy

Colonel
Nov 18, 2017
2,258
809
0
Down under
Ride
335i DCT 2009
Also there are two things
MDrive and MDM
M drive is the ability to save via the CIC and activate via steering wheel button DSC position, drivelogic shift, servotronic steering EDC and lastly throttle sensitivity etc on an M3. These settings seem to be saved in the M3 DME hence why people retrofitting can’t seem to get it to work. Our DME doesn’t have that. The 1M DME might per @RSL s findings but we need someone who has all the hardware to test.

MDM is the M version of more relaxed traction control fitted to M3 and 1M
1M doesn’t have MDRIVe. It had a sport button that they called MDRive that just yields the throttle sensitivity and the DSC which had more relaxed TC but had a button on the dash just like normal 135/335

So you can see why @Begood69 who has IKMOS rom can feel the 1M throttle setting change when he presses his button. He’s got a 1M DME and M3 SZL hardware and flashed M3 DSC. Question is when he does that is traction control better ?
 

RSL

Lieutenant
Aug 11, 2017
937
501
0
On 1M/IKM0S, DSC, DCT sport mode/drive logic are not enable via the button by default. No telling if that would have any impact on full M3 swap/coding setups, but can say for sure, the DCT does look for a specific param specifically from the steering wheel button internally. Not sure if DSC has any similar param that can be looked for to see if it's receiving it, but could maybe at least verify it's changing on the button press.

1m_switches.png


1M doesn't have the settings M3s do, so doubt there's any specific place to save settings. It gets confusing mixing 1M and M3 hacks, so need to keep in mind limits and differences of each....mostly reminding myself lol

I agree, flashing/coding seems all that's necessary without swapping M3 parts, so long as you don't flash/code anything as M3. SZL coding needs 1M DSC coding and 1M DSC coding needs 1M DSC ZB first. Coding 3 series DSC with 1M VO showed 1M DSC is on a different SG index and it failed to connect. I changed the index to match the 3 series and tried it. It connected, but coding failed with out of range. 1M DSC ZB needs to be flashed obviously, so next step was to force flash the 1M DSC ZB and attempt to recode as 1M and code everything else, but I keep getting distracted with other things. I'm not currently on IKM0S and I'm in no hurry to spend hours in the garage for a test when it's 120F in the shade now lol
 

S54ca

Private
Apr 4, 2020
28
31
0
Tried to get the 135i SZL / MDM (traction control) working again tonight by default coding the DSC, KOMBI, and JBBF with a 1M V0 with no success.

I also tried flashing the CIC with the ‘PL5’ option to get the Z4 traction control menu, which flashed fine, but still didn’t change DSC modes when toggled via iDrive.

Beginning to think that a specific JBBF HW or ZB may be needed to unlock this functionality (my car has a 03/09 build date)
 

aus335iguy

Colonel
Nov 18, 2017
2,258
809
0
Down under
Ride
335i DCT 2009
Tried to get the 135i SZL / MDM (traction control) working again tonight by default coding the DSC, KOMBI, and JBBF with a 1M V0 with no success.

I also tried flashing the CIC with the ‘PL5’ option to get the Z4 traction control menu, which flashed fine, but still didn’t change DSC modes when toggled via iDrive.

Beginning to think that a specific JBBF HW or ZB may be needed to unlock this functionality (my car has a 03/09 build date)
Did you force flash the DSC with Wnkfp ?
 

amg6975

Sergeant
Oct 27, 2019
278
187
0
Ride
2012 135, 2005 ZHP, 2009 fJCW
Also there are two things
MDrive and MDM
M drive is the ability to save via the CIC and activate via steering wheel button DSC position, drivelogic shift, servotronic steering EDC and lastly throttle sensitivity etc on an M3. These settings seem to be saved in the M3 DME hence why people retrofitting can’t seem to get it to work. Our DME doesn’t have that. The 1M DME might per @RSL s findings but we need someone who has all the hardware to test.

MDM is the M version of more relaxed traction control fitted to M3 and 1M
1M doesn’t have MDRIVe. It had a sport button that they called MDRive that just yields the throttle sensitivity and the DSC which had more relaxed TC but had a button on the dash just like normal 135/335

So you can see why @Begood69 who has IKMOS rom can feel the 1M throttle setting change when he presses his button. He’s got a 1M DME and M3 SZL hardware and flashed M3 DSC. Question is when he does that is traction control better ?

Exactly, I think getting 1M MDM working should be trivial.

Tried to get the 135i SZL / MDM (traction control) working again tonight by default coding the DSC, KOMBI, and JBBF with a 1M V0 with no success.

I also tried flashing the CIC with the ‘PL5’ option to get the Z4 traction control menu, which flashed fine, but still didn’t change DSC modes when toggled via iDrive.

Beginning to think that a specific JBBF HW or ZB may be needed to unlock this functionality (my car has a 03/09 build date)

I would be surprised if the JBBF had anything to do with it. The SZL is on the F-CAN, which the DSC also has, I assume to get button presses and such. The JBBF really only comes into play when translating messages between the different CAN buses.
 

Stokes

Sergeant
Jan 26, 2018
270
177
0
Houston, TX
Ride
2011 BMW 135i
For a 1M MDM I would guess you need 1M steering wheel buttons, the MDM button has a different resistance. You'll also need to make sure your SZL has a flash that can read it. After that it should just be F-CAN messages from the SZL to the DSC. I don't think the ECU would need to get involved like it does in the M3.

Just a guess though.

Edit: never mind... I was thinking the M button which is just the "power" button, not the MDM button.

Edit V2: there are no physical differences between the DSC button in a 135 and the MDM button in a 1M. I would bet it's a simple coding and/or VO tweak that needs to happen.

Per Edit v2... any idea if the 1m and 135i DSC button wiring is the same? I haven't dug in to look. But, one of these evenings I'll have some time to flash and experiment... one of these evenings!!!
 

Stokes

Sergeant
Jan 26, 2018
270
177
0
Houston, TX
Ride
2011 BMW 135i
Hope it's okay to cross post... thought this was useful to the topic.


Content of that post...
"First of all, here's a picture of the interior:

MDM_MDrive_800.jpg

The red circle shows the M button on the steering wheel and the blue circle shows the MDM button.

Unlike the M3 and M5/6, the M-button on the steering wheel (red circle) is not programmable. It's always set to trigger a sharper throttle response mapping (comparable to the POWER button in the E9x M3), and nothing else.

The M Dynamic Mode aka MDM cannot be programmed to be activated by the same M button. Thus it's triggered by the MDM button (blue circle) located at the dashboard. As usual with BMWs, a long press of said button will deactivate DSC completely.

Finally, iDrive has no affect on this functionality. In other words, no matter if you'll order NAV or not, these buttons are always pre-set. I hope this helps to clear most of the earlier confusion about this.

Personally, I don't consider this a bad solution. Remember that the 1M is a 'back to the roots' car of some sort where people wouldn't program their cars deciding out of plenty of different options but rather enjoy driving.


Background:
MDM or M Dynamic Mode is a DSC mode which allows the best of two worlds, so to speak. While driving with a fully engaged Dynamic Stability Control might be as safe to drive as possible, it might also be too intervening when driving on a race track. Switching DSC completely off however is not intervening at all, but neither provides it any safety instance to avoid losing control over a car. To offer another option, BMW developed MDM. It allows the car's rear end to step out a bit more before applying any instance of correction. MDM made its first appearance in the E46 M3 CSL and then found its way into every M car going forward.
"
 
  • Like
Reactions: aus335iguy

amg6975

Sergeant
Oct 27, 2019
278
187
0
Ride
2012 135, 2005 ZHP, 2009 fJCW
Yes, the DSC button and MDM button are wired exactly the same. They go to the JBBF then over F-CAN to the DSC. The steering wheel buttons go to the SZL which then goes over F-CAN to the DSC.

You may have to code the JBBF to send a different button press message to the DSC but that would surprise me, I'd think the 1M DSC firmware would just interpret the press command differently.
 
  • Like
Reactions: aus335iguy

Stokes

Sergeant
Jan 26, 2018
270
177
0
Houston, TX
Ride
2011 BMW 135i
Ha, charger on the car and the battery still died. What does flashing the DSC do to the car! I default coded the 1M DSC software and read back the file. I changed it from being a US configuration: !US and !USMDM, plus selected !US on the slip modes.

I also noticed a strangely labeled option:
ABSCHALTBARKEIT_DSC - Dynamic Stability Control (DSC) CAN SWITCH OFF

Default is set to Aktiv.

The CAN SWITCH OFF caught my eye. Any thoughts on what this is?

EDIT: Translator says "SWITCHABILITY DSC", so I suspect it means aktiv allows you to turn it off.
 
Last edited:
  • Like
Reactions: RSL

amg6975

Sergeant
Oct 27, 2019
278
187
0
Ride
2012 135, 2005 ZHP, 2009 fJCW
I assume that’s if the button was wired directly to the DSC like the M3. You probably want to leave that nickt_activ so it uses the CAN switch message.

ah, it’s set to activ by default, I had it backwards... you want to be able to switch it off via CAN so leave it activ
 

S54ca

Private
Apr 4, 2020
28
31
0
Ha, charger on the car and the battery still died. What does flashing the DSC do to the car! I default coded the 1M DSC software and read back the file. I changed it from being a US configuration: !US and !USMDM, plus selected !US on the slip modes.

I also noticed a strangely labeled option:
ABSCHALTBARKEIT_DSC - Dynamic Stability Control (DSC) CAN SWITCH OFF

Default is set to Aktiv.

The CAN SWITCH OFF caught my eye. Any thoughts on what this is?

EDIT: Translator says "SWITCHABILITY DSC", so I suspect it means aktiv allows you to turn it off.

Hm, I flashed the DSC with no charger.

I believe I read somewhere that this was an option added for rental cars such that renters couldn't turn off traction control. Worth a try toggling it to see what it does.
 

Stokes

Sergeant
Jan 26, 2018
270
177
0
Houston, TX
Ride
2011 BMW 135i
I presumed it was opposite as well and then after reading it again, it's probably straight forward labeling. Can vs CAN. As in you can turn it off. I'll try it both ways and see, but have to wait for the battery to charge up so I can do the DSC adjustment.
 

Stokes

Sergeant
Jan 26, 2018
270
177
0
Houston, TX
Ride
2011 BMW 135i
Battery issue is specific to me. Small battery, with car sitting all week with the MHD wifi left plugged in. I also had everything on as I was reading the post of how to properly force the flash.
 

Stokes

Sergeant
Jan 26, 2018
270
177
0
Houston, TX
Ride
2011 BMW 135i
Researching more and found this comment related to the steering assist via JBBF.

"Yes, I already had some hardcoded values in JBBFE3R for slightly more assist since the pump is a bit weaker on non-N54T.

There are actually two tables SPORT and COMFORT in the jbf however, they're both set to the same values. I wonder why they bothered to define two tables in the coding map but then didn't use them.

I was sort of hoping the M switch might be able to toggle between them but no, always COMFORT. I created custom parameters for both and I can confirm that SPORT is always ignored. "

Is there an OLS out there for the JBBF? or definition file of some kind to see what we can do with it?
 

aus335iguy

Colonel
Nov 18, 2017
2,258
809
0
Down under
Ride
335i DCT 2009
Think that was superwoofy wrote that? The closest I’ve seen is the definitions in NCS dummy never know your luck. He’s pretty clever so would’ve looked but can’t hurt to check
 

Stokes

Sergeant
Jan 26, 2018
270
177
0
Houston, TX
Ride
2011 BMW 135i
I believe that was who's post I snagged.

Report out... Same experience with 1M programming: DSC either on or off, but with it on it's far better. I have the light on the kombi blinking like a disco light while it felt like power was being held back a bit. I took some logs to see if it is using load or lambda to reduce power. It was subtle and massively better than the 135i logic. I couldn't drive with DSC on, because one hard acceleration and it cuts in like you hit something.
 
  • Like
Reactions: dzid_

aus335iguy

Colonel
Nov 18, 2017
2,258
809
0
Down under
Ride
335i DCT 2009
I believe that was who's post I snagged.

Report out... Same experience with 1M programming: DSC either on or off, but with it on it's far better. I have the light on the kombi blinking like a disco light while it felt like power was being held back a bit. I took some logs to see if it is using load or lambda to reduce power. It was subtle and massively better than the 135i logic. I couldn't drive with DSC on, because one hard acceleration and it cuts in like you hit something.
Ikmos DME ? Have you also tried RSLs Ikmos switches?