E46 Fanatics Forum banner
1 - 20 of 28 Posts

53 Posts
Discussion Starter · #1 · (Edited)

The purpose of this thread is to discuss and document the possibility of retrofitting a 323/328 equipped with the Siemens MS42 DME with an MS43 DME.

Some background:

DME stands for Digital Motor Electronics. Its the European equivalent to ECU.

There were three versions of the Siemens DME offered with the e46 in North America, each with their own software packages which reflected the optional extras found in the car:
- MS42; used in the 323 and 328 M52TU engines
- MS43; used in the 325 and 330 M54 North American engines up to 03/2003; all 325xi
- MS45; used exclusively in North American for all M54 engines and SULEV engines produced after 03/2003; except all 325xi

The MS42 and MS43 have five harness connectors to handle the flow of data and power supply. They are referred to as "modules" and are numbered X60001 through X60005.

Pin Comparison Files (pdf format)
MS42(blue) vs MS43(red)

Module 1: X60001.pdf

Module 2: X60002.pdf

Module 3: X60003.pdf

Module 4: X60004.pdf

Module 5: X60005.pdf

Pin Location Reassignment: PIN_REASSIGNMENT.pdf

M52TU/M54 Part Comparison Spreadsheet: PART_NUMBER_COMPARISON.pdf

Its already known and documented that this DME swap can be done with the aid of an MS43 engine wiring harness. Our goal is to see if we can recycle the MS42 wiring harness, thus reducing cost and increasing accessibility.

This topic was initiated while discussing a viable solution to upgrade the M52TU to a larger throttle body located here:

Throttle Body Size (post b30 manifold swap)

More to follow...

53 Posts
Discussion Starter · #2 ·
This is a repost of JT_3K's research on the MS43 pin assignments:

Ok. I'm having issues with the MS43 DME Unit so I thought (as I can't find this information on the forum already) I'd crunch a guide to help everyone out. Hopefully this'll stop you struggling around the web like me to get this information.

Most of the info is for the MS43 but may be applicable to other DME units

It's got the BMW standardised connections A6000 up the side as shown here

Official plugs are as follows:


2 - X60001 9-pin, black Plug connector DME control unit Module 1

1 A 15 Activate relay Relay, injection valves
2 Not used
3 Not used
4 M 31E Ground Ground point
5 M 31L Ground Ground point
6 M 31L Ground Ground point
7 E 30 Voltage supply B+ junction point E-box
8 E U_HR<2 Voltage supply Fuse holder in E-box
9 Not used

3 - X60002 24-pin, black Plug connector DME control unit Module 2

1 M T_LHV1 Oxygen sensor heating ground Oxygen sensor 1 (in front of catalytic converter)
2 Not used
3 E/A D_CAN-L CAN bus low Transmission control module (EGS)
4 E/A D_CAN-H CAN bus high Transmission control module (EGS)
5 Not used
6 E/A D_TXD2 Diagnosis Transmission control module (EGS)
7 M T_LHH1 Oxygen sensor heating ground Oxygen sensor 1 (behind catalytic converter)
8 Not used
9 Not used
10 Not used
11 Not used
12 Not used
13 M T_LHV2 Oxygen sensor heating ground Oxygen sensor 2 (in front of catalytic converter)
14 E A_LSV1 Sensor signal Oxygen sensor 1 (in front of catalytic converter)
15 E A_LSV2 Sensor signal Oxygen sensor 2 (in front of catalytic converter)
16 E A_LSH1 Sensor signal Oxygen sensor 1 (behind catalytic converter)
17 Not used
18 E A_LSH2 Sensor signal Oxygen sensor 2 (behind catalytic converter)
19 M T_LHH2 Oxygen sensor heating ground Oxygen sensor 2 (behind catalytic converter)
20 M M_LSV1 Signal ground Oxygen sensor 1 (in front of catalytic converter)
21 M M_LSV2 Signal ground Oxygen sensor 2 (in front of catalytic converter)
22 M M_LSH1 Signal ground Oxygen sensor 1 (behind catalytic converter)
23 A S_HR Activate relay Engine control module relay
24 M M_LSH2 Signal ground Oxygen sensor 2 (behind catalytic converter)

4 - X60003 52-pin, black Plug connector DME control unit Module 3

1 E A_HFM Signal air mass meter Hot film air mass meter
2 E P_NWGA1 Signal camshaft position Camshaft position sensor 2 (outlet)
3 Not used
4 Not used
5 E P_NWGE1 Signal camshaft position Camshaft position sensor 1 (inlet)
6 Not used
7 A U_DKG Voltage supply Electrical gas actuator
8 E P_KWG Signal crankshaft position Crankshaft position sensor
9 Not used
10 E A_DKG2 Throttle position signal 2 Electrical gas actuator
11 Not used
12 Not used
13 Not used
14 Not used
15 M M_NWGA1 Ground Camshaft position sensor 2 (outlet)
16 Not used
17 M M_HFM Ground Hot film air massmeter
18 M M_NWGE1 Ground Crankshaft position sensor 1 (inlet)
19 E A_DKG1 Throttle position signal 1 Electrical gas actuator
20 M M_DKG Ground Electrical gas actuator
21 M M_KWG Ground Crankshaft position sensor
22 E A_TANS Temperature signal Intake air temperature sensor
23 M M_TANS Ground Intake air temperature sensor
24 E A_TMOT Temperature signal Engine coolant temperature sensor
25 M M_TMOT Ground Engine coolant temperature sensor
26 Not used
27 E A_TOEL Temperature signal Oil temperature sensor
28 M M_TOEL Ground Oil temperature sensor
29 E A_KS1A Cyl. 1-3 knock sensor Double knock sensor
30 E A_KS1B Cyl. 1-3 knock sensor Double knock sensor
31 E A_KS2A Cyl. 4-6 knock sensor Double knock sensor
32 E A_KS2B Cyl. 4-6 knock sensor Double knock sensor
33 A P_EVZ1 Activate valve Cyl. 1 fuel injection valve
34 A P_EVZ2 Activate valve Cyl. 2 fuel injection valve
35 A P_EVZ3 Activate valve Cyl. 3 fuel injection valve
36 A P_EVZ4 Activate valve Cyl. 4 fuel injection valve
37 A P_EVZ5 Activate valve Cyl. 5 fuel injection valve
38 A P_EVZ6 Activate valve Cyl. 6 fuel injection valve
39 Not used
40 A T_NWE1 Activate valve Variable camshaft control valve 1 (inlet)
41 A T_NWA1 Activate valve Variable camshaft control valve 2 (outlet)
42 A T_TEV Activate valve Evaporative emission valve
43 A T_MDK1 Activate motor Throttle position actuator
44 A T_MDK2 Activate motor Throttle position actuator
45 A S_KFK Cooling signal Thermostat, characteristic map cooling
46 A T_LLFSS CLOSE signal Idle speed control valve
47 A T_LLFSO OPEN signal Idle speed control valve
48 M W_KS Ground Shield knock sensor
49 A S_DISA Activate valve Valve, individual control intake system
50 Not used
51 Not used
52 A S_SLPV Activate valve Secondary air pump valve

5 - X60004 40-pin, black Plug connector DME control unit Module 4

1 Not used
2 Not used
3 A S_SLP Activate relay Secondary air pump relay
4 Not used
5 Not used
6 Not used
7 M M_FWG1 Ground Pedal position sensor
8 E A_FWG1 Signal, pedal position 1 Pedal position sensor
9 A U_FWG1 Voltage supply Pedal position sensor
10 A EKP Activate relay Fuel pump relay
11 Not used
12 M M_FWG2 Ground Pedal position sensor
13 E A_FWG2 Signal, pedal position 2 Pedal position sensor
14 A U_FWG2 Voltage supply Pedal position sensor
15 Not used
16 Not used
17 A TD Crankshaft RPM speed signal (TD) Electronic immobilizer control module (EWS III)/Thermal oil level sensor (TOENS) control module
18 Not used
19 Not used
20 A S_DMTL Voltage supply Leakage diagnosis pump
21 Not used
22 E DFAHR Speed signal right rear ABS/ASC/DSC control module
23 E KUPP Clutch signal Clutch switch
24 E KL 54 ON Brake signal Brake light switch
25 Not used
26 E 15A26 Terminal 15 Fuse 26
27 E MFL Cruise control signal Cruise control interface
28 E S_BLTS Brake signal Brake light switch
29 A S_KOREL Activate relay Compressor control relay
30 A S_UVTL Activate changeover valve Leakage diagnosis pump
31 Not used
32 E/A TXDII TXD diagnosis data link Data link connector
33 E S_DWA Drive-away protection signal (code) Electronic immobilizer control module (EWS III)
34 Not used
35 M 31 Ground Cruise control interface
36 E/A CAN+ CAN bus high Instrument cluster, ABS/ASC/DSC control module, steering angle sensor
37 E/A CAN- CAN bus low Instrument cluster, ABS/ASC/DSC control module, steering angle sensor
38 Not used
39 Not used
40 Not used

6 - X60005 9-pin, black Plug connector DME control unit Module 5

1 A P_ZSZ3 Ignition coil signal Cyl. 3 ignition coil
2 A P_ZSZ2 Ignition coil signal Cyl. 2 ignition coil
3 A P_ZSZ1 Ignition coil signal Cyl. 1 ignition coil
4 Not used
5 M 31L Ground Ground point
6 M A_ZSR Ground Ground point
7 A P_ZSZ6 Ignition coil signal Cyl. 6 ignition coil
8 A P_ZSZ5 Ignition coil signal Cyl. 5 ignition coil
9 A P_ZSZ4 Ignition coil signal Cyl. 4 ignition coil

Thanks go to BMW of South Atlanta for the DME image, BMW 2001 Z3 MS43 Electrical Troubleshooting manual for the pins (seems to be the same as I can see) and spaghetticoder for the connector images.

REMEMBER Your DME is not a toy. You can :censor: :censor: :censor: :censor: it completely with minimal effort. You (I assume) are an adult (or at least adult enough to make your own decisions and live with your own mistakes. I make no promises about the validity of the data here, but it should be used as a 'guide'. If you can tap into the wire you need elsewhere, you might want to do it...

53 Posts
Discussion Starter · #4 ·
Engine Components List (updated as new parts are suggested)

- Air intake temp sensor
- Ignition coils
- Relays
- Crank angle sensor
- E-thermostat
- Cooling fan
- O2 sensors pre-cat
- O2 sensors post-cat
- Idle air control valve

If I missed something just say so!

53 Posts
Discussion Starter · #8 ·

53 Posts
Discussion Starter · #17 ·
Yes... its a cluster fuck. From what I've gathered so far, it looks like there will have to be some pins that are shuffled between module 3 and 4.

I think before we go any further, it would be wise to have a cost-benefit discussion. I was browsing ebay today and found several M54 wiring harnesses for around 70-80 bucks. How much is it worth to someone to save 70 or 80 dollars by reusing the existing harness?

53 Posts
Discussion Starter · #21 ·
Okay, now that I have a frame of reference, I see what you're talking about in post #5. You're right, there aren't that many things to swap out. There's as much reconnecting as there is discarding of pins.

I think the next step is to verify that those pins are in fact the only things that need to be switched (i.e., different hardware at the ends of the terminals). bmw_chuzo has a thread documenting his M52TUB28 to M54B30 swap. During the swap he also changed over to the MS43, but its unclear whether or not he reused the sensor from the M52TUB28 block. When I was browsing his thread documenting the swap, he mentioned that the older style alternators have a 3 pin connector and the newer style have a 2 pin. Otherwise, it looks like the swap involves only three things: Instrument cluster reflash, EWS module, and DME (EWS and DME must be paired).

Does anyone know what else we need?

53 Posts
Discussion Starter · #22 ·
Also, before I forget, I would still like to document the total cost involved here.

So far, this is the list I've gathered of what's needed for an MS43 upgrade:

- MS43 (paired to EWS module)
- EWS module
- M54 e-pedal assembly
- Male connector for e-pedal assembly
- Female terminals for e-pedal connector
- M54 throttle body
- Male connector for throttle body assembly
- Female connectors for throttle body connector
- Dash reflash

If we estimate $100 for the TB, $100 for the e-pedal, $200 for the EWS and DME pair, and around $50 for the assorted connectors, this puts us as $450 without the dash reflash.

53 Posts
Discussion Starter · #23 ·
Okay, I took a little time to write out all of the changes that need to be made. Its pretty much exactly as simple as TerraPhantm is making it out to be (sorry it took me so long to realize what you've been saying all along).

From what I can tell, the bulk of the changes are that pins become non-functional. Unless I'm being presumptuous about pin functionality, there's about 14 pins that will no longer do anything or go anywhere. One pin will have to be moved to a new location. And there are 14 pins that will have to go to new wiring harnesses. 6 of those pins will go to the new throttle body wiring harness, another 6 will go to the pedal position switch, and the last 2 will go to an emissions circuit which is to-be-determined. It would probably be wise to disconnect those non-functional pins so they dont act like an antenna and bring EMI or other engine noises past all of the electronics filters in the DME.

Here's a spreadsheet of what I've observed thus far: PIN_REASSIGNMENT.pdf

53 Posts
Discussion Starter · #25 ·
Wow! Well shit! It looks like we answered all the wiring related questions within 24 hours! And that was a lot less painful than I thought it would be! Thanks for all your help TerraPhantm! I super appreciate it!

I want to catch up with your research over the next day or two to make sure we cover our bases. After that ill make another final spreadsheet with all of the updates.


So, now I'd like to change gears and talk about the next step: putting it in the car!

Let's start with the instrument cluster. Do we NEED to reflash the instrument cluster to have the car start, or will it start without the dash interfering?

Haha yeah, that's what I was trying to say - sorry I didn't articulate it that well :p

So I think we've got the DME side figured out pretty well. We still need to figure out where the "battery charge indicator", "engine start signal feedback", "signal oil pressure switch", and "signal oil level sensor" end up going on the MS43 cars. And the two fuel tank leak wires.

Here are the labels for those signals

X60004/Pin 1 = Signal Battery Charge Indicator (Input) = S_61--1
X60004/Pin 2 = Engine Start Signal Feedback (Input) = P_30H/S_30H (the same connection recieves both labels in different diagrams... I think S_30H is correct).
X60004/Pin 11 = Signal Oil Pressure Switch (Output) = S_OLD
X60003/Pin 26 = Signal Oil Pressure Switch (Input) = A_OLD
X60004/Pin 21 = Signal Oil Level Sensor (Output) = F_OLN
X60003/Pin 39 = Signal Oil Level Sensor (Input) = T_OLN

Edit: Okay, on MS43 cars, those signals all end up on a connector called X6011, which seems to basically splice them between the instrument cluster and the sensor.

However, one thing that's not as clear is the S_30H signal. Both the X6011 diagram and the MS43 cluster diagram show the wire going to a connector called X276. However, when you click the link for X276, it says it cannot be found. So I don't know what's going on there.

Edit 2: Okay, more digging, and it seems X276 is just a splice.

So it looks like my prediction was right, all of those connectors are going to the cluster directly now.

Edit 3: Looks like the MS42 cluster already recieved the S61--1 signal via a splice. So that wire can also be discarded on the DME end.

I realize this post is fairly unorganized, but the info is there. I'll see if I can find the time to make a clear diagram. Though I suspect Alex will beat me to the punch ;)

Only thing left to figure out is the leak sensor. I did notice that the "AS OF 2001_09" MS43 has another leak diagnosis pin (X60003/51), but more importantly, all of the leak diagnosis pins are labeled as US Only. So it might not be important.

Edit 4: I just looked at the US MS42 Table http://wds.spaghetticoder.org/en/zinfo/E46_PA6000C.htm

There are two "leak diagnosis" pins already present on pins 30 and 34 (34 would probably have to be moved to 20)! However, on the MS43, the two pins are both labeled as "output", while on the MS42 one is out, and one is in. But there are two wires going generally to the right area. So even if there's an electronic component that has to be retrofitted, it can be done with minimal work. Or you can just disable it via euro tune.
Sent from my T-Mobile G2 using Bimmer App

53 Posts
Discussion Starter · #28 ·
Hey Hornung418, dont worry about "keeping up", TerraPhantm and I were collaborating on that one so we got it done faster. Also TerraPhantm already looked into this a while ago so has been several steps ahead of us.

Just keep truckin on whether or not the same sensors, switches, and motors that are hooked up to the DME are the same for both. Do you want some help?

Holy fuck...I can't keep up lol I'll just look at the spreadsheets and drool on myself.

Do I need to continue to find the differences in the physical data collection points or are we good on that?

Sent from my DROIDX using Bimmer App

That sounds reasonable about the instrument cluster. It would save us a lot of time if we could ignore the instrument cluster for the initial test fire of the DME swap. It'll also help us troubleshoot if there's a problem since there are fewer modified connections.

I think we need someone with an MS43 to help us through the next step. I've got a friend with a 330, I'll ask him if he's willing to test our instrument cluster theory.

In the mean time, I want to take a look at the pin locations of the later versions of the MS43. If the connections are similar then that will increase availability of used DME and EWS combinations.

Another question: Can a DME and EWS be installed and paired to the original keys that came with the car? Or do we have to buy a set with a DME, EWS, key, and ignition lock cylinder?

It's hard to say with 100% certainty, but my gut feeling is that it will start. The cluster is still receiving the same signals it needs to. What I'm not sure about is if the cluster is capable of "broadcasting" that information over the K-BUS, or if it's even necessary.

One way to test would be to put an MS42 cluster in an MS43 car temporarily. It would best be a cluster from an early build, since at some point MID MY2000 (I want to say 04/2000), BMW put an updated cluster in the MS42 cars which ended up being the same one that early MS43 cars got.

53 Posts
Discussion Starter · #30 · (Edited)
So, just for arguments sake, if the EWS is tied to the key, how people get new keys for their e46 and program the keys themselves without changing the ignition lock cylinder?

edit 1:

Okay, I talked to a friend in South Bay who's been tinkering with the DME. He said that the key and ignition lock core can be reprogrammed through the EWS module. He's not sure how to do it himself yet, but it can be done. Whether or not its worth it will depend on the price.

So, where we're at is that it IS possible, in theory, to hook up an MS43 to the M52TU wiring harness with some manipulation. I think as soon as we verify all of the sensors, servos, solenoids, and motors attached to the MS42 are the same as the ones attached to the MS43 then all thats left is to try it out!

edit 2:

Okay, I decided to help out Hornung418 a bit a sift through the part numbers on realoem.com. I came across something interesting about the "Suction Jet Pump". It looks like its referring to the fuel pump, but whatever it is, its located in the fuel delivery unit at the tank: Sucking Jet Pump Valve.

Also, I noticed that the secondary air pump already has a pin assigned to it on Module 4 pin 3. For the Module 4 connection, both the MS42 and MS43 already match up so no modifications need to be made. But for some reason theres a second connector going to the secondary air pump on module 3 pin 52, which the MS43 requires. wtf...

edit 3:

I figured out what the Suction Jet Pump Valve is and what it does. Its for the brake booster. Heres a description of what it does: Suction Jet Pump Valve Description. The description says that this part was only used on the MS42 DME so it looks like we can just remove it. That saves us another step and makes the MS43 more compatible! Yay!

EWS is tied to the key of the car it came out of. There's a company called RPM Motorsport in Canada that could reprogram it. Or if you got yourself a blank MS43, it'd pull the EWS table from your car when it's first initialized.

53 Posts
Discussion Starter · #32 · (Edited)
My friend who was talking about the EWS reprogramming was talking about a hack. He still has to sift through the module and see if its possible, but he's confidant it can be done. I dont really care much either way, but it would increase accessibility if he could make it work! :)

So, now we're pretty much down to two things:
- the differences between the voltage regulators in the MS42 and MS43
- pin 52 on module 3 (the secondary air pump valve)

After this, we're pretty much done. I'm out of ideas on both though.


Also, I went through the parts diagrams on realoem.com to verify that all of the parts are the same between the M52TU and M54. It looks like 03/2003 is the conservative cut off for compatibility between parts on the two engines. Before 03/2003, pretty much the only differences in engine sensors, relays, servos, motors, etc, were limited to a delete of the suction jet pump, and the addition of DBW.

The pdf file comparing all of the part numbers between the two engine types is up in the first post of this thread.

53 Posts
Discussion Starter · #38 ·
Cool! More data is starting to line up. This is very promising news. Hopefully the actual application of this lines up with what we've been researching.

03/2003 is when they switched to the MS45.1 (in the US/Canada... ROW stayed with MS43 for the entire E46 production run), so that makes sense
Fantastic! I noticed that the SAP valve showed up on some searches for the 325, but I read that they discontinued the SJP valve on the MS43 so I was confused. That makes perfect sense.

According to RealOEM, the M52TU cars and the M54 cars both use the same SJP valve though (until 03/2003 anyway).
Hey smooth1,

Thanks for pitching in, the help is much appreciated sifting through all this data!

I guess I'm not sure that there isnt a second pin on the MS42. I've triple checked all of the pins for both the MS42 and MS43. Everything matches up except for four things:
- throttle body
- accelerator pedal switch
- secondary air pump valve

I'm going to do some more digging today to make sure, but I think that the SJP and the secondary air pump valve are the same thing. If thats correct then TerraPhantm and I were right to assume pin 3 need to be relocated to pin 52 for the MS43 swap -we just thought that the pins performed a different function.

Edit: According to the MS42 datalogging protocol there's an output for the secondary air valve and the secondary air pump relay just like MS43. You sure there's not a second pin for it on the MS42?
No worries man, the only reason I have time for this is I'm procrastinating summer school homework -haha!

I haven't looked into p/n's for the 328 or 330 yet, but the 323 and 325 are all the same up to 03/2003. I posted a link to the a part comparison spreadsheet in post number 1 if you want to check it out. Do you need help looking up numbers for the 328/330?

Sorry guys, I've been predisposed working doubles in the heat.

Am I correct in reading that all the engine sensors are the same between MS42 and MS43? I made it to logging all the p/ns for the 328.

Sent from my DROIDX using Bimmer App

53 Posts
Discussion Starter · #40 · (Edited)
Crisis averted! :p

I dug a little deeper about the SJP and found that it is, in fact, only used on the M52TU engines with the MS42. Its suppose to provide brake servo vacuum assist by use of a solenoid valve. I'm not really sure why it would be needed, but it cuts off vacuum to the brake servo on command from the DME. For the MS43 they disabled the solenoid pin and replaced the whole SJP valve with an open tube. I posted the updates in post one's X60003 spreadsheet and put a part number next to the SJP pin for the open tube replacement. Depending on how the solenoid works (i.e., if it has to be energized to close, but otherwise is open), it might be fine to just leave the SJP in place.

Also, I figured out why I was getting confused about the SAP -I was looking at a non-USA MS43. When I looked at the USA_LHD MS43 both of the SAP pins were present and in the exact same position as for the MS42 harness.

edit 1:

I caught up to where TerraPhantm was regarding the Fuel leak diagnosis pump. The pin locations and descriptions are as he says. Additional info: The MS42 uses a 3 pin leak diagnosis pump and the MS43 uses a 4 pin leak diagnosis pump. I agree with TerraPhantm that it would be minimal wiring to impliment, but it just seems like a lot of work for something I dont care about :p I live in California so I will have to deal with this eventually, but I would MUCH rather just get a euro tune and ignore this stuff for now.

53 Posts
Discussion Starter · #42 ·
haha! My thoughts exactly! When I did a search the leak diagnosis pump came up on a few hits for emissions related trouble codes. I found the part number for the MS43 but came up empty handed for the MS42. Oh well.

I emailed bmw_chuzo a couple of days ago so as soon as he gets time to respond I'll ask him about the leak diagnosis pump.

So, we're pretty much done. Today I made some modifications to the module spreadsheets so that it includes the later versions of the MS43. The only difference is a heating element is added to the leak diagnosis pump. If you get a euro tune then you can hook up just about any MS43 you find and it *should* work.

Tomorrow I'm going to compare part numbers for the 328 and 330 engines. Once thats done then we're finished.

So... I'm a broke college student and cant afford to buy a DME & EWS right now... who wants to be the first gunny pig on this experiment???

^ Assuming everything else mates up, you could probably just grab the pump from a junkyard car.

Or maybe check in with someone who's done an MS42 to MS43 conversion... I have never seen the leak diagnosis pump mentioned. Ever.
1 - 20 of 28 Posts
This is an older thread, you may not receive a response, and could be reviving an old thread. Please consider creating a new thread.