Applications BMW M50
Verified on the variant named in the note. Still set offset with a timing light on this car before enabling fuel.
BMW M50 / M52
E36 325i, E34 525i, the default six for a compact swap. 60-2 crank VR, cam Hall or VR depending on year, single VANOS on M50TU/M52, wasted-spark OEM coils with a separate igniter — convert to logic COP.
Recommended: Race Core F7. Six sequential, six logic coils, 60-2 VR, VANOS on Highside 1. M50 non-TU has no VANOS.
- Cylinders: 6
- Displacement: 2494 (M50B25) · 2793 (M52B28) · 2990 stroker common cc
- Firing order: 1-5-3-6-2-4
- Orientation: Cylinder 1 at the front (timing-chain / VANOS end is the front on M50). Longitudinal in E34/E36/E39.
Variants
| Variant | Years | Trigger | Notes |
|---|---|---|---|
| M50B25 non-VANOS | 1990–1992 | 60-2 crank VR + cam | Motronic 3.1. Distributor-less wasted spark. No VANOS. |
| M50TU / M52 | 1992–1998 | 60-2 + cam, single VANOS | Single VANOS intake. M52 has a plastic intake and DISA on some. |
| M50B30 stroker | swap | Same 60-2 | M50B25 block, M54B30 / 89 mm crank common. Treat as 2990 cc, keep M50 trigger. |
Recommended pin assignment (Race Core F7)
| Pin | TunerStudio | Function |
|---|---|---|
| B5 / B13 | VR 1+ / VR 1− | Crank VR |
| B1 | Digital 2 | Cam Hall |
| B4 / B12 | VR 2+ / VR 2− | Cam VR |
| A3 | Lowside 1 | Injector cylinder 1 |
| A15 | Lowside 2 | Injector cylinder 2 |
| A4 | Lowside 3 | Injector cylinder 3 |
| A16 | Lowside 4 | Injector cylinder 4 |
| A5 | Lowside 5 | Injector cylinder 5 |
| A6 | Lowside 6 | Injector cylinder 6 |
| A35 | Ign 1 | Cyl 1 logic COP (OEM wasted-spark uses an igniter) |
| A34 | Ign 2 | Cyl 2 logic COP (OEM wasted-spark uses an igniter) |
| A22 | Ign 3 | Cyl 3 logic COP (OEM wasted-spark uses an igniter) |
| A33 | Ign 4 | Cyl 4 logic COP (OEM wasted-spark uses an igniter) |
| A32 | Ign 5 | Cyl 5 logic COP (OEM wasted-spark uses an igniter) |
| A31 | Ign 6 | Cyl 6 logic COP (OEM wasted-spark uses an igniter) |
| C20 | Analog Temp 3 | CLT |
| C30 | Analog Temp 2 | IAT |
| C13 | Analog Volt 1 | MAP 0–5 V |
| C24 | Analog Volt 2 | TPS 1 |
| C34 | Knock 1 | Knock bank 1 |
| C35 | Knock 2 | Knock bank 2 |
| A20 | Lowside 10 | Fuel-pump relay coil |
| A21 | Lowside 12 | Main-relay coil |
| A12 | Lowside 15 | Radiator-fan relay coil |
| A2 | Highside 1 | Single VANOS solenoid (M50TU / M52) |
| A14 | Highside 4 | DISA / idle / boost spare |
| B17 / B16 | CAN 1 H / L | Dash / wideband |
| B18 | Battery Sense | Ignition-switched 12 V (5 A fuse) |
| B23 | +12 V MR | Main-relay 12 V into ECU |
| A17 A18 A24 B14 B19 B20 | Power GND | Engine block → battery − |
| C9 / C21 / C32 | 5 V Sens 1 | MAP, TPS 1, pedal 1 |
| C1–C8, C29, C31 | Sensor GND | All 0–5 V and thermistor returns |
Trigger
BMW 60-2 on the crank, VR, two-wire, front of the engine behind the pulley / on the timing cover. TunerStudio: 60-2. Cam is a half-moon or single-tooth for sequential. VANOS cars still use the same 60-2; VANOS is an output plus a cam target.
Crank
| Pattern | 60-2 VR. B5 / B13. |
| Polarity | A correct gap is one long missing-tooth, not a double inversion. Swap VR+ / VR− if inverted. |
Cam
| Sensor | Hall on later, VR on some early. Digital 2 or VR 2. One pulse per cam rev. |
TunerStudio
| Setting | Value |
|---|---|
| Wheel type | 60-2 |
| Use only rising edge | Yes on MAX992x VR (typical) |
| Firing order | 1-5-3-6-2-4 |
Offset: Light on cylinder 1 (front). 60-2 BMW offsets are often ~80–120° — rumours exist, lights exist, use the light.
- An M54 60-2 crank in an M50 bay is still 60-2. The DBW and dual VANOS are the M54 note.
Injection
High-Z Bosch EV1, ~19–21 lb/hr OEM. Sequential six. The OEM loom is sequential already on later Motronic.
| Impedance | High-Z. |
| Fuel | Return on M50. Keep it. 3 bar OEM, 1:1 on boost. |
Ignition
OEM wasted-spark coils are dumb with a 3-channel igniter. Race Core logic pins do not replace that igniter. Fit BMW COP (M54 / M52TU / LS truck) on Ign 1–6.
| COP | Ign 1–6, dwell 2.2–2.8 ms. |
| Keeping wasted-spark | Ign 1–3 into the igniter channels (pairs 1-6, 2-5, 3-4). Possible first-start, not the long-term plan. |
Idle
M50 uses a 2-wire rotary idle valve (PWM) or a Bosch 3-wire on some. PWM a low-side, 12 V on the other pin. Not a stepper, not DBW.
First start
- Load the matching variant configuration in TunerStudio before the harness is live — injectors and coils stay disconnected until the decoder is confirmed.
- Fuel pump fuse out. Coils unplugged or spark outputs disabled. Crank. Open Diagnostics → composite / high-speed logger.
- Confirm crank teeth are even, the missing-tooth (or named pattern) is a single clean gap, and cam is one pulse per two crank revolutions for sequential four-stroke.
- RPM during cranking should sit in the 150–350 rpm band. 0 rpm or 12,000 rpm means the decoder is lost — polarity or wheel type, not offset.
- Lock timing to a fixed 10° (idle control off). Timing light on cylinder 1. Change trigger offset until the damper agrees with 10°.
- Recheck at ~3,000 rpm. If timing walks with RPM, it is VR polarity, a delayed Hall, or the wrong decoder — not offset.
- Enable spark. Confirm a healthy burn (timing light or plug colour) with fuel still disabled.
- Enable fuel. Prime, then crank. Catch the first idle on a rich-safe VE, then lean toward stoich at idle.
- Only then enable closed-loop idle, VVT, boost and traction. A base map is a starting point, not a dyno tune.
A base map is a starting point, not a dyno tune.