M52 at a glance
Every M52 is an inline six with a firing order of 1-5-3-6-2-4. Four displacements were built:
| Code | Displacement | Compression (early engines) |
|---|---|---|
| B20 | 1991 cc (121 ci) | 11.0:1 |
| B24 | 2394 cc (146 ci) | TU only, sold in Thailand |
| B25 | 2494 cc (152 ci) | 10.5:1 |
| B28 | 2793 cc (170 ci) | 10.2:1 |
All of them rev to 6500 rpm from the factory.
TU or non-TU? It changes the wiring
From 1998 BMW introduced the "Technical Update" (TU) engines. The TU added VANOS on the exhaust cam as well as the intake (dual VANOS), a drive-by-wire throttle and a variable length intake. Knowing which one you have decides how you handle the cam sensor, throttle and cam control, so figure it out first.
| Engine | Where you'll find it |
|---|---|
| M52B20 | E36 320i (1994-98), E39 520i (1995-98) |
| M52TUB20 | E46 320i/320Ci (1998-2000), E39 520i (1998-2000), Z3 2.0i (1999-2000) |
| M52B25 | E36 323i and 323ti, E39 523i (mid to late 1990s) |
| M52TUB25 | E46 323i/323Ci, E39 523i, Z3 2.3i (1998-2000) |
| M52B28 | E36 328i/328is, E39 528i, E38 728i/728iL, Z3 2.8, and the South African Land Rover Defender |
| M52TUB28 | E46 328i/328Ci, Z3 2.8, E39 528i, E38 728i (1998-2000) |
The factory ECU is a Siemens unit: MS41.0 on non-TU engines and MS42 on TU engines. That's a quick way to confirm what you're working on.
Crank trigger
The crank signal comes from a Hall effect sensor at the front of the engine reading a 60-2 wheel built into the crank pulley. It's a three-wire sensor:
| Haltech wire | Goes to sensor pin | Job |
|---|---|---|
| Orange 5V+ | 1 | Sensor supply |
| Yellow (Trigger+), trigger 4-core cable | 2 | Crank signal |
| Blue signal ground, trigger 4-core cable | 3 | Ground |
Not sure why Hall and reluctor sensors are wired differently? Our Hall effect or reluctor article explains it.
Cam sensor: the M52's big gotcha
Non-TU engines
The early M52 uses an unusual cam sensor. Rather than switching on and off as a tooth passes, the factory ECU feeds it a frequency signal, and the sensor changes that frequency when the single half-moon tooth is underneath. Haltech can't read this kind of sensor, and neither can any other aftermarket ECU we know of.
The fix is to swap in a conventional Hall effect cam sensor. The usual choice is the sensor from the M50, which uses the same pin layout. Wire it like this:
| Haltech wire | Goes to sensor pin | Job |
|---|---|---|
| Red 12V+, home 4-core cable | 1 | Sensor supply (note: 12 V here, not 5 V) |
| Yellow (Home+), home 4-core cable | 2 | Cam signal |
| Blue signal ground, home 4-core cable | 3 | Ground |
TU engines
TU engines are reported to use normal Hall effect cam sensors, one per cam, which Haltech Elite ECUs support. They wire the same way as the replacement sensor above. Once the crank and cam are wired, set up the trigger and confirm the timing with a light before tuning.
Ignition: you need an igniter
The M52 coils have three pins, which fools a lot of people into thinking they're smart coils. They aren't. BMW put the igniter inside the factory ECU, so the coils need an external igniter. We fit a six-channel igniter such as the HPI6 igniter.
- Pin 1 (wire color varies): to the igniter output for that cylinder.
- Pin 2 (brown): ground to the cylinder head.
- Pin 3 (green): switched 12 V.
Set a conservative dwell to begin with and check coil temperature after a heat cycle.
Throttle
Cable throttle (non-TU)
The TPS is a simple three-pin sensor: pin 1 to signal ground, pin 2 to a spare AVI for the signal, and pin 3 to 5V+.
Drive-by-wire (TU)
This pinout comes from an E46 330i sedan, so check yours before wiring as other models can vary.
| Throttle body pin | Signal | Haltech |
|---|---|---|
| 1 | Throttle position, track A | AVI 2 |
| 2 | Sensor supply | Haltech 5 V supply |
| 3 | Motor positive | DBW1 output, or a spare HBO |
| 4 | Throttle position, track B | AVI 3 |
| 5 | Motor negative | DBW2 output, or a spare HBO |
| 6 | Sensor ground | Haltech sensor ground |
For the pedal: pins 1 and 2 are sensor grounds, pins 3 and 5 are 5V+ supplies, pin 4 is APP 1 (we use AVI 4) and pin 6 is APP 2 (AVI 5).
Variable cams
- Non-TU: intake-only VANOS that is simply on or off. Run it with Cam Control Switched. The factory strategy leaves it off at idle, turns it on at low rpm with the throttle open, and switches it off again above roughly 4200 rpm.
- TU: continuously variable intake and exhaust cams. Use the full Cam Control function.
Other sensors and actuators
| Item | How we wire it |
|---|---|
| MAP | The M52 has none. Use the ECU's internal MAP sensor, or an external one on a spare AVI for higher boost |
| Idle valve | Three-pin BAC valve: center pin to 12 V, the outer pins to two spare outputs. See idle control |
| Coolant temp | Two wires, polarity doesn't matter. One to a spare AVI with a selectable pull up (or add a 1k pull up to 5 V), the other to signal ground. Early B28 and TU B28 sensors look different, but wire the same |
| Air temp | Built into the MAF. Delete the MAF and you'll need a separate sensor, ideally in the plenum near the MAP take-off, using the Temperature - GM Air Sensor.cal calibration |
| Knock | We recommend the Bosch knock sensor |
| Oxygen | Replace the pre-cat sensor with a wideband, such as a WB1 kit. A 22 mm wrench removes the old one |
Injector data matters
Accurate flow and dead time data make the whole tune easier. Flow is measured with the injector held fully open. If your fuel pressure isn't referenced to the manifold, as on many returnless systems, the effective flow changes with boost or vacuum, so map it against manifold pressure. Dead time covers the delay while the injector opens and closes, plus the partial-flow moments on each end. Get these from your injector supplier rather than guessing.
M52 FAQ
Can a Haltech read the early M52 cam sensor?
No. Replace it with a Hall effect sensor, usually the M50 part, and wire it as shown above.
Do the stock coils work?
Yes, with an external igniter. They don't have one inside.
Where do I start with the base map?
Our 2JZ/1JZ guide covers a similar inline six setup, and we're glad to talk through your build in a free consultation.




