Which ECU for the BMW 3 Series E36 1990–2000 (M50/M52)?
Every ECU below has a harness for this car. They all run the engine basics; the difference is how many of the stock ECU's other functions each one can still wire, and how much spare I/O is left for add-ons such as boost control or a wideband. “Of 39” counts the stock functions at least one ECU here wires.
Most complete
AMP EFI MS3Pro Ultimate
Can carry 39 of 39 stock functions, with 13 spare outputs and 18 spare inputs left.
Smallest that keeps every engine function
Haltech Elite 2500 HT-151300
60 ECU pins. Gives up 1 non-engine functions: power.
Most room for add-ons
MaxxECU PRO REV10+
39 spare outputs and 29 spare inputs after the stock wiring, with every engine function kept.
“Smallest” is by pin count, not price. Picks come from harnesses with no validation errors.
What each ECU wires and gives up
AMP EFI MS3Pro Ultimate93 pins · proposal
39/39Gives up nothing13 out · 18 inDetails ▾Gives up (no free pin on this ECU)
Nothing that another ECU wires for this car.
MaxxECU PRO REV10+155 pins · proposal
38/39Power 139 out · 29 inDetails ▾Gives up (no free pin on this ECU)
Power
Memory (battery-constant) feed. Only needed by ECUs with a keep-alive input.
- Battery voltage (constant +12V)
Emtron KV16120 pins · draft
38/39Power 127 out · 26 inDetails ▾Gives up (no free pin on this ECU)
Power
Memory (battery-constant) feed. Only needed by ECUs with a keep-alive input.
- Battery voltage (constant +12V)
Emtron KV12115 pins · draft
38/39Power 123 out · 26 inDetails ▾Gives up (no free pin on this ECU)
Power
Memory (battery-constant) feed. Only needed by ECUs with a keep-alive input.
- Battery voltage (constant +12V)
Emtron KV8106 pins · draft
38/39Power 115 out · 26 inDetails ▾Gives up (no free pin on this ECU)
Power
Memory (battery-constant) feed. Only needed by ECUs with a keep-alive input.
- Battery voltage (constant +12V)
AMP EFI MS3Pro EVO+89 pins · proposal
38/39Power 113 out · 18 inDetails ▾Gives up (no free pin on this ECU)
Power
Memory (battery-constant) feed. Only needed by ECUs with a keep-alive input.
- Battery voltage (constant +12V)
AMP EFI MS3Pro EVO+ HC89 pins · proposal
38/39Power 113 out · 18 inDetails ▾Gives up (no free pin on this ECU)
Power
Memory (battery-constant) feed. Only needed by ECUs with a keep-alive input.
- Battery voltage (constant +12V)
Emtron Shadow 868 pins · draft
38/39Dash & gauges 18 out · 15 inDetails ▾Gives up (no free pin on this ECU)
Dash & gauges
Gauge and warning-light drives. The cluster may lose a gauge or a light.
- Tachometer output
Emtron SL866 pins · draft
38/39Power 16 out · 12 inDetails ▾Gives up (no free pin on this ECU)
Power
Memory (battery-constant) feed. Only needed by ECUs with a keep-alive input.
- Battery voltage (constant +12V)
Haltech Elite 2500 HT-15130060 pins · proposal
38/39Power 17 out · 8 inDetails ▾Gives up (no free pin on this ECU)
Power
Memory (battery-constant) feed. Only needed by ECUs with a keep-alive input.
- Battery voltage (constant +12V)
Emtron SL662 pins · draft
38/39Power 12 out · 12 inDetails ▾Gives up (no free pin on this ECU)
Power
Memory (battery-constant) feed. Only needed by ECUs with a keep-alive input.
- Battery voltage (constant +12V)
MoTeC M190 13190136 pins · proposal
37/39Engine 1Dash & gauges 132 out · 34 inDetails ▾Gives up (no free pin on this ECU)
Engine
Engine sensors and actuators (fuel, spark, triggers, cam/valve control). Check whether the new ECU needs each one: a second cam sensor, for example, is often optional, a VTEC or VVT solenoid is not.
- Ignition switch (terminal 15)
Dash & gauges
Gauge and warning-light drives. The cluster may lose a gauge or a light.
- Tachometer output
ECUMASTER EMU PRO 16120 pins · draft · 1 error
37/39Engine 1Power 129 out · 29 inDetails ▾Gives up (no free pin on this ECU)
Engine
Engine sensors and actuators (fuel, spark, triggers, cam/valve control). Check whether the new ECU needs each one: a second cam sensor, for example, is often optional, a VTEC or VVT solenoid is not.
- Camshaft position sensor (Hall)
Power
Memory (battery-constant) feed. Only needed by ECUs with a keep-alive input.
- Battery voltage (constant +12V)
MoTeC M150 13150120 pins · proposal
37/39Engine 1Dash & gauges 120 out · 34 inDetails ▾Gives up (no free pin on this ECU)
Engine
Engine sensors and actuators (fuel, spark, triggers, cam/valve control). Check whether the new ECU needs each one: a second cam sensor, for example, is often optional, a VTEC or VVT solenoid is not.
- Ignition switch (terminal 15)
Dash & gauges
Gauge and warning-light drives. The cluster may lose a gauge or a light.
- Tachometer output
MaxxECU GEN2 RACE136 pins · proposal
37/39Dash & gauges 1Power 124 out · 24 inDetails ▾Gives up (no free pin on this ECU)
Dash & gauges
Gauge and warning-light drives. The cluster may lose a gauge or a light.
- Tachometer output
Power
Memory (battery-constant) feed. Only needed by ECUs with a keep-alive input.
- Battery voltage (constant +12V)
rusEFI Proteus93 pins · proposal
37/39Dash & gauges 1Power 118 out · 16 inDetails ▾Gives up (no free pin on this ECU)
Dash & gauges
Gauge and warning-light drives. The cluster may lose a gauge or a light.
- Tachometer output
Power
Memory (battery-constant) feed. Only needed by ECUs with a keep-alive input.
- Battery voltage (constant +12V)
MaxxECU GEN2 TRACK93 pins · proposal
37/39Dash & gauges 1Power 112 out · 14 inDetails ▾Gives up (no free pin on this ECU)
Dash & gauges
Gauge and warning-light drives. The cluster may lose a gauge or a light.
- Tachometer output
Power
Memory (battery-constant) feed. Only needed by ECUs with a keep-alive input.
- Battery voltage (constant +12V)
Haltech Nexus S3 HT-21300068 pins · proposal
37/39Dash & gauges 1Power 18 out · 11 inDetails ▾Gives up (no free pin on this ECU)
Dash & gauges
Gauge and warning-light drives. The cluster may lose a gauge or a light.
- Tachometer output
Power
Memory (battery-constant) feed. Only needed by ECUs with a keep-alive input.
- Battery voltage (constant +12V)
MaxxECU RACE REV9+80 pins · proposal
37/39Engine 1Power 110 out · 9 inDetails ▾Gives up (no free pin on this ECU)
Engine
Engine sensors and actuators (fuel, spark, triggers, cam/valve control). Check whether the new ECU needs each one: a second cam sensor, for example, is often optional, a VTEC or VVT solenoid is not.
- Ignition switch (terminal 15)
Power
Memory (battery-constant) feed. Only needed by ECUs with a keep-alive input.
- Battery voltage (constant +12V)
MoTeC M170 1317066 pins · proposal
37/39Engine 1Dash & gauges 14 out · 12 inDetails ▾Gives up (no free pin on this ECU)
Engine
Engine sensors and actuators (fuel, spark, triggers, cam/valve control). Check whether the new ECU needs each one: a second cam sensor, for example, is often optional, a VTEC or VVT solenoid is not.
- Ignition switch (terminal 15)
Dash & gauges
Gauge and warning-light drives. The cluster may lose a gauge or a light.
- Tachometer output
MoTeC M130 1313060 pins · proposal
37/39Engine 1Dash & gauges 14 out · 11 inDetails ▾Gives up (no free pin on this ECU)
Engine
Engine sensors and actuators (fuel, spark, triggers, cam/valve control). Check whether the new ECU needs each one: a second cam sensor, for example, is often optional, a VTEC or VVT solenoid is not.
- Ignition switch (terminal 15)
Dash & gauges
Gauge and warning-light drives. The cluster may lose a gauge or a light.
- Tachometer output
ECUMASTER EMU Black63 pins · proposal
37/39Dash & gauges 1Power 13 out · 9 inDetails ▾Gives up (no free pin on this ECU)
Dash & gauges
Gauge and warning-light drives. The cluster may lose a gauge or a light.
- Tachometer output
Power
Memory (battery-constant) feed. Only needed by ECUs with a keep-alive input.
- Battery voltage (constant +12V)
Link G4X XtremeX 109-400067 pins · proposal
36/39Engine 1Dash & gauges 1Power 16 out · 17 inDetails ▾Gives up (no free pin on this ECU)
Engine
Engine sensors and actuators (fuel, spark, triggers, cam/valve control). Check whether the new ECU needs each one: a second cam sensor, for example, is often optional, a VTEC or VVT solenoid is not.
- Ignition switch (terminal 15)
Dash & gauges
Gauge and warning-light drives. The cluster may lose a gauge or a light.
- Tachometer output
Power
Memory (battery-constant) feed. Only needed by ECUs with a keep-alive input.
- Battery voltage (constant +12V)
Link G4X FuryX 122-400068 pins · proposal
36/39Engine 1Dash & gauges 1Power 15 out · 15 inDetails ▾Gives up (no free pin on this ECU)
Engine
Engine sensors and actuators (fuel, spark, triggers, cam/valve control). Check whether the new ECU needs each one: a second cam sensor, for example, is often optional, a VTEC or VVT solenoid is not.
- Ignition switch (terminal 15)
Dash & gauges
Gauge and warning-light drives. The cluster may lose a gauge or a light.
- Tachometer output
Power
Memory (battery-constant) feed. Only needed by ECUs with a keep-alive input.
- Battery voltage (constant +12V)
Link G4X StormX 108-400060 pins · proposal
36/39Engine 1Dash & gauges 1Power 14 out · 13 inDetails ▾Gives up (no free pin on this ECU)
Engine
Engine sensors and actuators (fuel, spark, triggers, cam/valve control). Check whether the new ECU needs each one: a second cam sensor, for example, is often optional, a VTEC or VVT solenoid is not.
- Ignition switch (terminal 15)
Dash & gauges
Gauge and warning-light drives. The cluster may lose a gauge or a light.
- Tachometer output
Power
Memory (battery-constant) feed. Only needed by ECUs with a keep-alive input.
- Battery voltage (constant +12V)
MoTeC M800 universal60 pins · proposal
34/39Engine 3Dash & gauges 1Power 12 out · 12 inDetails ▾Gives up (no free pin on this ECU)
Engine
Engine sensors and actuators (fuel, spark, triggers, cam/valve control). Check whether the new ECU needs each one: a second cam sensor, for example, is often optional, a VTEC or VVT solenoid is not.
- Ignition switch (terminal 15)
- Knock sensor cylinders 1-3
- Knock sensor cylinders 4-6
Dash & gauges
Gauge and warning-light drives. The cluster may lose a gauge or a light.
- Tachometer output
Power
Memory (battery-constant) feed. Only needed by ECUs with a keep-alive input.
- Battery voltage (constant +12V)
MaxxECU SPORT REV9+48 pins · proposal
34/39Engine 3Dash & gauges 1Power 11 out · 7 inDetails ▾Gives up (no free pin on this ECU)
Engine
Engine sensors and actuators (fuel, spark, triggers, cam/valve control). Check whether the new ECU needs each one: a second cam sensor, for example, is often optional, a VTEC or VVT solenoid is not.
- Ignition switch (terminal 15)
- Knock sensor cylinders 1-3
- Knock sensor cylinders 4-6
Dash & gauges
Gauge and warning-light drives. The cluster may lose a gauge or a light.
- Tachometer output
Power
Memory (battery-constant) feed. Only needed by ECUs with a keep-alive input.
- Battery voltage (constant +12V)
MaxxECU STREET REV9+40 pins · proposal
31/39Engine 4Dash & gauges 2Emissions 1Power 10 out · 3 inDetails ▾Gives up (no free pin on this ECU)
Engine
Engine sensors and actuators (fuel, spark, triggers, cam/valve control). Check whether the new ECU needs each one: a second cam sensor, for example, is often optional, a VTEC or VVT solenoid is not.
- Ignition switch (terminal 15)
- Knock sensor cylinders 1-3
- Knock sensor cylinders 4-6
- VANOS intake camshaft solenoid
Dash & gauges
Gauge and warning-light drives. The cluster may lose a gauge or a light.
- Check engine light (MIL)
- Tachometer output
Emissions
Emissions hardware. Usually deleted on race and off-road builds; may set a check-engine light or fail an inspection.
- Evap purge solenoid
Power
Memory (battery-constant) feed. Only needed by ECUs with a keep-alive input.
- Battery voltage (constant +12V)
ECUs without a harness for this car
- Link E36XPlug-inPlug-in: mates the stock plugs pin-for-pin, no adapter harness
- AEM EMS 30-1042Not suitable · discontinuedPlug-in for Honda NSX NA1 1991-2005 (C30A) only; this car's stock plugs differ
- AMP EFI AMP PNP Miata NA6Not suitablePlug-in for MX-5 Miata NA6 1990-93 (B6-ZE, 1.6) only; this car's stock plugs differ
- AMP EFI AMP PNP Miata NA8 94-95Not suitablePlug-in for MX-5 Miata NA8 1994-97 (BP-ZE, 1.8) only; this car's stock plugs differ
- AMP EFI AMP PNP Miata NA8 96-97Not suitablePlug-in for MX-5 Miata NA8 1994-97 (BP-ZE, 1.8) only; this car's stock plugs differ
- AMP EFI AMP PNP Miata NB1Not suitablePlug-in for MX-5 Miata NB1 1999-00 (BP-4W) only; this car's stock plugs differ
- AMP EFI AMP PNP Miata NB2Not suitablePlug-in for MX-5 Miata NB2 2001-05 (BP-Z3, VVT) only; this car's stock plugs differ
- MaxxECU C6 E38 Plug-inNot suitablePlug-in for Chevrolet Corvette C6 2005-13 (LS2/LS3/LS7) only; this car's stock plugs differ
- Link CIVICLink K20XNot suitablePlug-in for RSX Type-S 2002-04 (K20A2) only; this car's stock plugs differ
- Haltech Elite 1500 HT-140960 (02-04 RSX PnP)Not suitablePlug-in for RSX Type-S 2002-04 (K20A2) only; this car's stock plugs differ
- Haltech Elite 1500 HT-140961 (05-06 RSX PnP)Not suitablePlug-in for RSX Type-S 2005-06 (K20Z1) only; this car's stock plugs differ
- Haltech Elite 1500 HT-150900Not suitableOnly 4 ignition outputs; the engine has 6
- ECUMASTER EMU Black PnP ECU2JZBNot suitablePlug-in for Toyota Supra A80 1993-98 USDM (2JZ-GTE, non-VVT) only; this car's stock plugs differ
- ECUMASTER EMU Black PnP K20A2Not suitablePlug-in for RSX Type-S 2002-04 (K20A2) only; this car's stock plugs differ
- Hondata FlashProNot suitablePlug-in for AP2 2006–09 (F22C1, DBW) only; this car's stock plugs differ
- Link G4X AtomXNot suitableOnly 4 ignition outputs; the engine has 6
- Link G4X MonsoonXNot suitableOnly 4 ignition outputs; the engine has 6
- Link G4X S2000XNot suitablePlug-in for AP1 2000–03 (F20C), AP2 2004–05 (F22C1, cable) only; this car's stock plugs differ
- rusEFI Hellen 125 Honda KNot suitablePlug-in for RSX Type-S 2002-04 (K20A2) only; this car's stock plugs differ
- Hondata KPro4Not suitablePlug-in for RSX Type-S 2002-04 (K20A2) only; this car's stock plugs differ
- MaxxECU MININot suitableOnly 4 ignition outputs; the engine has 6
- AMP EFI MicrosquirtNot suitableOnly 2 ignition outputs; the engine has 6
- AMP EFI MS3Pro MiniNot suitableOnly 4 ignition outputs; the engine has 6
- MaxxECU Mustang 2011-14 plug-inNot suitablePlug-in for Mustang GT 2011–14 (Coyote 5.0) only; this car's stock plugs differ
- Link MX5NAXNot suitablePlug-in for MX-5 Miata NA6 1990-93 (B6-ZE, 1.6), MX-5 Miata NA8 1994-97 (BP-ZE, 1.8) only; this car's stock plugs differ
- Link MX5NB1XNot suitablePlug-in for MX-5 Miata NB1 1999-00 (BP-4W) only; this car's stock plugs differ
- Link MX5NB2XNot suitablePlug-in for MX-5 Miata NB2 2001-05 (BP-Z3, VVT) only; this car's stock plugs differ
- Link RX7XNot suitablePlug-in for Mazda RX-7 FD 1992-2002 (13B-REW twin-turbo) only; this car's stock plugs differ
- Emtron SL4Not suitableOnly 4 ignition outputs; the engine has 6
- SpeeduinoNot suitableOnly 4 ignition outputs; the engine has 6
- Link SupraLinkNot suitablePlug-in for Toyota Supra A80 1993-98 USDM (2JZ-GTE, non-VVT) only; this car's stock plugs differ
- Holley Terminator X MAXNot suitableSold only as V8 engine kits (LS, Hemi, Ford) with fixed trigger patterns; no Subaru, Honda or Mazda support found
Categories are read from the stock pin names and are a guide; each item shows its full stock name. Power and ground pins aren't compared, since every harness powers and grounds the ECU. Prices aren't considered. Always check the harness's own findings before building.