BMW 3 Series E36 1990–2000 (M50/M52) → Speeduino Speeduino v0.4 (auto)
Before you start
Not confident with automotive wiring? Have a professional harness builder or tuner do it, or check your work before first power-up. A wiring mistake can damage the ECU, the engine or the car, or start a fire.
| Status | draft · not yet verified: nobody has reported building and running this harness |
|---|---|
| Open errors | 3: read the Findings page before cutting any wire |
| Size of the job | 43 wires · 8 connectors · 1 part lines |
| Tools | Crimp and extraction tools for each terminal family (see Connectors) · wire strippers · multimeter · heat gun + heat-shrink |
| Order of work | 1. Check every part against the parts list. 2. Cut and label every wire (labels: Export → Wire labels). 3. Crimp and pin connector by connector, ticking the build checklist. 4. Run the bench test with nothing plugged in and the battery disconnected. 5. Only then connect the ECU and power up. |
Build checklist
Tick each box as you go. Continuity: meter from end to end, expect under 1 Ω.
| Wire | From | To | Gauge | Colour | Cut | Label | Crimp A | Crimp B | Pin A | Pin B | Continuity |
|---|---|---|---|---|---|---|---|---|---|---|---|
| W1 | OEM-X-54 | SP-14V-1 | 0.85 | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | |
| W2 | OEM-X-56 | MAIN-R-COIL+ | 0.5 | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | |
| W3 | NEW-BATT-1 | MAIN-R-IN | 0.85 | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | |
| W4 | MAIN-R-COIL- | SP-GND-1 | 0.5 | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | |
| W5 | MAIN-R-OUT | SPEEDUINO-PWR-12V | 0.85 | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | |
| W6 | OEM-X-15 | SP-GND-1 | 0.85 | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | |
| W7 | OEM-X-34 | SP-GND-1 | 0.85 | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | |
| W8 | OEM-X-55 | SP-GND-1 | 0.85 | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | |
| W9 | OEM-X-6 | SP-GND-1 | 0.85 | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | |
| W10 | SP-GND-1 | SPEEDUINO-A-10 | 0.85 | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | |
| W11 | SP-GND-1 | SPEEDUINO-A-9 | 0.85 | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | |
| W12 | OEM-X-28 | SP-0V-1 | 0.5 | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | |
| W13 | OEM-X-40 | SP-0V-1 | 0.5 | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | |
| W14 | OEM-X-43 | SP-0V-1 | 0.5 | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | |
| W15 | OEM-X-44 | SP-0V-1 | 0.5 | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | |
| W16 | OEM-X-71 | SP-0V-1 | 0.5 | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | |
| W17 | SP-0V-1 | SPEEDUINO-A-12 | 0.5 | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | |
| W18 | SP-0V-1 | SPEEDUINO-A-23 | 0.5 | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | |
| W19 | OEM-X-59 | SPEEDUINO-A-13 | 0.5 | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | |
| W20 | OEM-X-16 | SPEEDUINO-A-25 | 0.5 | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | |
| W21 | OEM-X-17 | SPEEDUINO-A-24 | 0.5 | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | |
| W22 | OEM-X-50 | SPEEDUINO-A-7 | 0.5 | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | |
| W23 | OEM-X-51 | SPEEDUINO-A-34 | 0.5 | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | |
| W24 | OEM-X-52 | SPEEDUINO-A-33 | 0.5 | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | |
| W25 | OEM-X-23 | SPEEDUINO-A-8 | 0.5 | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | |
| W26 | OEM-X-33 | SPEEDUINO-A-1 | 0.5 | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | |
| W27 | OEM-X-32 | SPEEDUINO-A-2 | 0.5 | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | |
| W28 | OEM-X-31 | SPEEDUINO-A-3 | 0.5 | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | |
| W29 | OEM-X-5 | SPEEDUINO-A-5 | 0.5 | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | |
| W30 | OEM-X-3 | SPEEDUINO-A-1 | 0.5 | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | |
| W31 | OEM-X-4 | SPEEDUINO-A-2 | 0.5 | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | |
| W32 | OEM-X-1 | SPEEDUINO-A-16 | 0.5 | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | |
| W33 | OEM-X-27 | SPEEDUINO-A-15 | 0.5 | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | |
| W34 | OEM-X-73 | SPEEDUINO-A-22 | 0.5 | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | |
| W35 | OEM-X-78 | SPEEDUINO-A-19 | 0.5 | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | |
| W36 | OEM-X-38 | SPEEDUINO-A-36 | 0.5 | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | |
| W37 | OEM-X-2 | SPEEDUINO-A-37 | 0.5 | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | |
| W38 | OEM-X-29 | SPEEDUINO-A-35 | 0.5 | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | |
| W39 | OEM-X-36 | SPEEDUINO-A-38 | 0.5 | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | |
| W40 | OEM-X-47 | SPEEDUINO-A-17 | 0.5 | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | |
| W41 | OEM-X-13 | SPEEDUINO-A-21 | 0.5 | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | |
| W42 | OEM-X-77 | SPEEDUINO-A-20 | 0.5 | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | |
| W43 | OEM-X-42 | SPEEDUINO-A-14 | 0.5 | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ | ☐ |
Bench test (before first power-up)
Battery disconnected, ECU and every sensor unplugged. Meter on resistance. Each pair below must read open (OL): a reading means a pinched wire, a stray strand or a mis-pinned cavity. Then check continuity of every wire (last column of the build checklist).
| # | Probe A | Probe B | Expect | Why | Reading |
|---|---|---|---|---|---|
| 1 | MAIN-R-COIL+ | SPEEDUINO-A-13 | open (OL) | +12 V supply must not touch 5 V sensor reference | |
| 2 | MAIN-R-COIL- | MAIN-R-COIL+ | open (OL) | power ground must not touch +12 V supply | |
| 3 | MAIN-R-COIL- | MAIN-R-OUT | open (OL) | power ground must not touch +12 V supply | |
| 4 | MAIN-R-COIL- | NEW-BATT-1 | open (OL) | power ground must not touch +12 V supply | |
| 5 | MAIN-R-COIL- | OEM-X-54 | open (OL) | power ground must not touch +12 V supply | |
| 6 | MAIN-R-COIL- | SPEEDUINO-A-13 | open (OL) | power ground must not touch 5 V sensor reference | |
| 7 | OEM-X-54 | SPEEDUINO-A-13 | open (OL) | +12 V supply must not touch 5 V sensor reference | |
| 8 | SPEEDUINO-A-12 | MAIN-R-COIL+ | open (OL) | sensor ground must not touch +12 V supply | |
| 9 | SPEEDUINO-A-12 | MAIN-R-OUT | open (OL) | sensor ground must not touch +12 V supply | |
| 10 | SPEEDUINO-A-12 | NEW-BATT-1 | open (OL) | sensor ground must not touch +12 V supply | |
| 11 | SPEEDUINO-A-12 | OEM-X-54 | open (OL) | sensor ground must not touch +12 V supply | |
| 12 | SPEEDUINO-A-12 | SPEEDUINO-A-13 | open (OL) | sensor ground must not touch 5 V sensor reference | |
| 13 | SPEEDUINO-A-13 | MAIN-R-OUT | open (OL) | 5 V sensor reference must not touch +12 V supply | |
| 14 | SPEEDUINO-A-13 | NEW-BATT-1 | open (OL) | 5 V sensor reference must not touch +12 V supply |
If any reading doesn't match, stop and get help before powering up.
Revisions
| Rev | Label | By | Date |
|---|---|---|---|
| No revisions yet. | |||
Schematic
Connectors
MAIN-R
| Cavity | Function | Signal | Wire | Colour | Gauge (mm²) | Destination | Terminal | Seal | Plug |
|---|---|---|---|---|---|---|---|---|---|
| COIL+ | Relay coil positive (ignition-switched +12V) | — | W2 | — | 0.5 | OEM-X-56 | — | — | — |
| COIL- | Relay coil negative (ECU low-side driver) | — | W4 | — | 0.5 | SP-GND-1 | — | — | — |
| IN | Relay contact input (battery + via main fuse) | — | W3 | — | 0.85 | NEW-BATT-1 | — | — | — |
| OUT | Relay contact output (switched +12V bus) | — | W5 | — | 0.85 | SPEEDUINO-PWR-12V | — | — | — |
NEW-BATT
| Cavity | Function | Signal | Wire | Colour | Gauge (mm²) | Destination | Terminal | Seal | Plug |
|---|---|---|---|---|---|---|---|---|---|
| 1 | — | — | W3 | — | 0.85 | MAIN-R-IN | — | — | — |
OEM-X
| Cavity | Function | Signal | Wire | Colour | Gauge (mm²) | Destination | Terminal | Seal | Plug |
|---|---|---|---|---|---|---|---|---|---|
| 1 | Fuel pump relay control | — | W32 | — | 0.5 | SPEEDUINO-A-16 | — | — | — |
| 13 | O2 sensor signal | — | W41 | — | 0.5 | SPEEDUINO-A-21 | — | — | — |
| 15 | Ground | — | W6 | — | 0.85 | SP-GND-1 | — | — | — |
| 16 | Crank position sensor (+) | — | W20 | — | 0.5 | SPEEDUINO-A-25 | — | — | — |
| 17 | Camshaft position sensor (Hall) | — | W21 | — | 0.5 | SPEEDUINO-A-24 | — | — | — |
| 2 | Idle speed control valve (close winding) | — | W37 | — | 0.5 | SPEEDUINO-A-37 | — | — | — |
| 23 | Ignition coil cylinder 4 | — | W25 | — | 0.5 | SPEEDUINO-A-8 | — | — | — |
| 24 | Ignition coil cylinder 6 | — | — | — | — | — | — | — | — |
| 25 | Ignition coil cylinder 5 | — | — | — | — | — | — | — | — |
| 26 | Battery voltage (constant +12V) | — | — | — | — | — | — | — | — |
| 27 | Main relay control | — | W33 | — | 0.5 | SPEEDUINO-A-15 | — | — | — |
| 28 | Ground (electronics + sensor shielding) | — | W12 | — | 0.5 | SP-0V-1 | — | — | — |
| 29 | Idle speed control valve (open winding) | — | W38 | — | 0.5 | SPEEDUINO-A-35 | — | — | — |
| 3 | Injector cylinder 5 | — | W30 | — | 0.5 | SPEEDUINO-A-1 | — | — | — |
| 31 | Injector cylinder 3 | — | W28 | — | 0.5 | SPEEDUINO-A-3 | — | — | — |
| 32 | Injector cylinder 2 | — | W27 | — | 0.5 | SPEEDUINO-A-2 | — | — | — |
| 33 | Injector cylinder 1 | — | W26 | — | 0.5 | SPEEDUINO-A-1 | — | — | — |
| 34 | Ground (output stages) | — | W7 | — | 0.85 | SP-GND-1 | — | — | — |
| 36 | Evap purge solenoid | — | W39 | — | 0.5 | SPEEDUINO-A-38 | — | — | — |
| 38 | O2 sensor heater relay control | — | W36 | — | 0.5 | SPEEDUINO-A-36 | — | — | — |
| 4 | Injector cylinder 6 | — | W31 | — | 0.5 | SPEEDUINO-A-2 | — | — | — |
| 40 | O2 sensor signal ground | — | W13 | — | 0.5 | SP-0V-1 | — | — | — |
| 41 | Mass air flow (MAF) signal | — | — | — | — | — | — | — | — |
| 42 | Vehicle speed signal | — | W43 | — | 0.5 | SPEEDUINO-A-14 | — | — | — |
| 43 | Crank position sensor (-) | — | W14 | — | 0.5 | SP-0V-1 | — | — | — |
| 44 | Sensor ground (IAT/ECT/TPS) | — | W15 | — | 0.5 | SP-0V-1 | — | — | — |
| 45 | Shield ground | — | — | — | — | — | — | — | — |
| 47 | Tachometer output | — | W40 | — | 0.5 | SPEEDUINO-A-17 | — | — | — |
| 5 | Injector cylinder 4 | — | W29 | — | 0.5 | SPEEDUINO-A-5 | — | — | — |
| 50 | Ignition coil cylinder 1 | — | W22 | — | 0.5 | SPEEDUINO-A-7 | — | — | — |
| 51 | Ignition coil cylinder 2 | — | W23 | — | 0.5 | SPEEDUINO-A-34 | — | — | — |
| 52 | Ignition coil cylinder 3 | — | W24 | — | 0.5 | SPEEDUINO-A-33 | — | — | — |
| 54 | ECU power (+14V from main relay) | — | W1 | — | 0.85 | SP-14V-1 | — | — | — |
| 55 | Ground (ignition) | — | W8 | — | 0.85 | SP-GND-1 | — | — | — |
| 56 | Ignition switch (terminal 15) | — | W2 | — | 0.5 | MAIN-R-COIL+ | — | — | — |
| 59 | +5V sensor supply | — | W19 | — | 0.5 | SPEEDUINO-A-13 | — | — | — |
| 6 | Ground (injector output stages) | — | W9 | — | 0.85 | SP-GND-1 | — | — | — |
| 69 | Knock sensor cylinders 4-6 | — | — | — | — | — | — | — | — |
| 7 | VANOS intake camshaft solenoid | — | — | — | — | — | — | — | — |
| 70 | Knock sensor cylinders 1-3 | — | — | — | — | — | — | — | — |
| 71 | Knock sensor ground/shield | — | W16 | — | 0.5 | SP-0V-1 | — | — | — |
| 73 | Throttle position (TPS) | — | W34 | — | 0.5 | SPEEDUINO-A-22 | — | — | — |
| 77 | Intake air temperature (IAT) | — | W42 | — | 0.5 | SPEEDUINO-A-20 | — | — | — |
| 78 | Engine coolant temperature (ECT) | — | W35 | — | 0.5 | SPEEDUINO-A-19 | — | — | — |
| 8 | Check engine light (MIL) | — | — | — | — | — | — | — | — |
SP-0V
| Cavity | Function | Signal | Wire | Colour | Gauge (mm²) | Destination | Terminal | Seal | Plug |
|---|---|---|---|---|---|---|---|---|---|
| 1 | — | — | W12 | — | 0.5 | OEM-X-28 | — | — | — |
| 1 | — | — | W13 | — | 0.5 | OEM-X-40 | — | — | — |
| 1 | — | — | W14 | — | 0.5 | OEM-X-43 | — | — | — |
| 1 | — | — | W15 | — | 0.5 | OEM-X-44 | — | — | — |
| 1 | — | — | W16 | — | 0.5 | OEM-X-71 | — | — | — |
| 1 | — | — | W17 | — | 0.5 | SPEEDUINO-A-12 | — | — | — |
| 1 | — | — | W18 | — | 0.5 | SPEEDUINO-A-23 | — | — | — |
SP-14V
| Cavity | Function | Signal | Wire | Colour | Gauge (mm²) | Destination | Terminal | Seal | Plug |
|---|---|---|---|---|---|---|---|---|---|
| 1 | — | — | W1 | — | 0.85 | OEM-X-54 | — | — | — |
SP-GND
| Cavity | Function | Signal | Wire | Colour | Gauge (mm²) | Destination | Terminal | Seal | Plug |
|---|---|---|---|---|---|---|---|---|---|
| 1 | — | — | W4 | — | 0.5 | MAIN-R-COIL- | — | — | — |
| 1 | — | — | W6 | — | 0.85 | OEM-X-15 | — | — | — |
| 1 | — | — | W7 | — | 0.85 | OEM-X-34 | — | — | — |
| 1 | — | — | W8 | — | 0.85 | OEM-X-55 | — | — | — |
| 1 | — | — | W9 | — | 0.85 | OEM-X-6 | — | — | — |
| 1 | — | — | W10 | — | 0.85 | SPEEDUINO-A-10 | — | — | — |
| 1 | — | — | W11 | — | 0.85 | SPEEDUINO-A-9 | — | — | — |
SPEEDUINO-A
| Cavity | Function | Signal | Wire | Colour | Gauge (mm²) | Destination | Terminal | Seal | Plug |
|---|---|---|---|---|---|---|---|---|---|
| 1 | Injector 1 | — | W26 | — | 0.5 | OEM-X-33 | — | — | — |
| 1 | Injector 1 | — | W30 | — | 0.5 | OEM-X-3 | — | — | — |
| 10 | Ground | — | W10 | — | 0.85 | SP-GND-1 | — | — | — |
| 11 | MAP sensor (0-5V) | — | — | — | — | — | — | — | — |
| 12 | Ground | — | W17 | — | 0.5 | SP-0V-1 | — | — | — |
| 13 | 5V | — | W19 | — | 0.5 | OEM-X-59 | — | — | — |
| 14 | Proto area 1 (flex fuel) | — | W43 | — | 0.5 | OEM-X-42 | — | — | — |
| 15 | Proto area 2 (fan) | — | W33 | — | 0.5 | OEM-X-27 | — | — | — |
| 16 | Proto area 3 (fuel pump) | — | W32 | — | 0.5 | OEM-X-1 | — | — | — |
| 17 | Proto area 4 (tachometer) | — | W40 | — | 0.5 | OEM-X-47 | — | — | — |
| 18 | Proto area 5 (clutch) | — | — | — | — | — | — | — | — |
| 19 | Coolant temp (CLT) | — | W35 | — | 0.5 | OEM-X-78 | — | — | — |
| 2 | Injector 2 | — | W27 | — | 0.5 | OEM-X-32 | — | — | — |
| 2 | Injector 2 | — | W31 | — | 0.5 | OEM-X-4 | — | — | — |
| 20 | Inlet air temp (IAT) | — | W42 | — | 0.5 | OEM-X-77 | — | — | — |
| 21 | O2 sensor | — | W41 | — | 0.5 | OEM-X-13 | — | — | — |
| 22 | TPS input | — | W34 | — | 0.5 | OEM-X-73 | — | — | — |
| 23 | Ground | — | W18 | — | 0.5 | SP-0V-1 | — | — | — |
| 24 | Cam input / VR2+ | — | W21 | — | 0.5 | OEM-X-17 | — | — | — |
| 25 | Crank input / VR1+ | — | W20 | — | 0.5 | OEM-X-16 | — | — | — |
| 26 | VR2- | — | — | — | — | — | — | — | — |
| 27 | VR1- | — | — | — | — | — | — | — | — |
| 28 | 5V | — | — | — | — | — | — | — | — |
| 29 | Idle stepper 2B | — | — | — | — | — | — | — | — |
| 3 | Injector 3 | — | W28 | — | 0.5 | OEM-X-31 | — | — | — |
| 30 | Idle stepper 2A | — | — | — | — | — | — | — | — |
| 31 | Idle stepper 1A | — | — | — | — | — | — | — | — |
| 32 | Idle stepper 1B | — | — | — | — | — | — | — | — |
| 33 | Ignition 3 | — | W24 | — | 0.5 | OEM-X-52 | — | — | — |
| 34 | Ignition 2 | — | W23 | — | 0.5 | OEM-X-51 | — | — | — |
| 35 | Boost | — | W38 | — | 0.5 | OEM-X-29 | — | — | — |
| 36 | Idle 2 (3-wire idle) | — | W36 | — | 0.5 | OEM-X-38 | — | — | — |
| 37 | PWM idle | — | W37 | — | 0.5 | OEM-X-2 | — | — | — |
| 38 | VVT | — | W39 | — | 0.5 | OEM-X-36 | — | — | — |
| 5 | Injector 4 | — | W29 | — | 0.5 | OEM-X-5 | — | — | — |
| 7 | Ignition 1 | — | W22 | — | 0.5 | OEM-X-50 | — | — | — |
| 8 | Ignition 4 | — | W25 | — | 0.5 | OEM-X-23 | — | — | — |
| 9 | Ground | — | W11 | — | 0.85 | SP-GND-1 | — | — | — |
SPEEDUINO-PWR
| Cavity | Function | Signal | Wire | Colour | Gauge (mm²) | Destination | Terminal | Seal | Plug |
|---|---|---|---|---|---|---|---|---|---|
| 12V | Main power (+12 V switched) | — | W5 | — | 0.85 | MAIN-R-OUT | — | — | — |
Pin map
| OEM point | OEM function | OEM family | Target point | Target function | Target family | Wire colour | Evidence |
|---|---|---|---|---|---|---|---|
| OEM-X-1 | Fuel pump relay control | low_side_out | SPEEDUINO-A-16 | Proto area 3 (fuel pump) | low_side_out | corroborated | |
| OEM-X-13 | O2 sensor signal | lambda_nb_in | SPEEDUINO-A-21 | O2 sensor | lambda_nb_in | corroborated | |
| OEM-X-15 | Ground | ground | MAIN-R-COIL- + SPEEDUINO-A-10 + SPEEDUINO-A-9 | Relay coil negative (ECU low-side driver) + Ground + Ground | ground + load | corroborated | |
| OEM-X-16 | Crank position sensor (+) | trigger_in | SPEEDUINO-A-25 | Crank input / VR1+ | trigger_in | corroborated | |
| OEM-X-17 | Camshaft position sensor (Hall) | trigger_in | SPEEDUINO-A-24 | Cam input / VR2+ | trigger_in | corroborated | |
| OEM-X-2 | Idle speed control valve (close winding) | low_side_out | SPEEDUINO-A-37 | PWM idle | low_side_out | corroborated | |
| OEM-X-23 | Ignition coil cylinder 4 | ignition_out | SPEEDUINO-A-8 | Ignition 4 | ignition_out | corroborated | |
| OEM-X-24 | Ignition coil cylinder 6 | ignition_out | — | — | — | corroborated | |
| OEM-X-25 | Ignition coil cylinder 5 | ignition_out | — | — | — | corroborated | |
| OEM-X-26 | Battery voltage (constant +12V) | power_in | — | — | — | corroborated | |
| OEM-X-27 | Main relay control | low_side_out | SPEEDUINO-A-15 | Proto area 2 (fan) | low_side_out | corroborated | |
| OEM-X-28 | Ground (electronics + sensor shielding) | sensor_ground | SPEEDUINO-A-12 + SPEEDUINO-A-23 | Ground + Ground | sensor_ground | corroborated | |
| OEM-X-29 | Idle speed control valve (open winding) | low_side_out | SPEEDUINO-A-35 | Boost | low_side_out | corroborated | |
| OEM-X-3 | Injector cylinder 5 | injector_out | SPEEDUINO-A-1 | Injector 1 | injector_out | corroborated | |
| OEM-X-31 | Injector cylinder 3 | injector_out | SPEEDUINO-A-3 | Injector 3 | injector_out | corroborated | |
| OEM-X-32 | Injector cylinder 2 | injector_out | SPEEDUINO-A-2 | Injector 2 | injector_out | corroborated | |
| OEM-X-33 | Injector cylinder 1 | injector_out | SPEEDUINO-A-1 | Injector 1 | injector_out | corroborated | |
| OEM-X-34 | Ground (output stages) | ground | MAIN-R-COIL- + SPEEDUINO-A-10 + SPEEDUINO-A-9 | Relay coil negative (ECU low-side driver) + Ground + Ground | ground + load | corroborated | |
| OEM-X-36 | Evap purge solenoid | low_side_out | SPEEDUINO-A-38 | VVT | low_side_out | corroborated | |
| OEM-X-38 | O2 sensor heater relay control | low_side_out | SPEEDUINO-A-36 | Idle 2 (3-wire idle) | low_side_out | corroborated | |
| OEM-X-4 | Injector cylinder 6 | injector_out | SPEEDUINO-A-2 | Injector 2 | injector_out | corroborated | |
| OEM-X-40 | O2 sensor signal ground | sensor_ground | SPEEDUINO-A-12 + SPEEDUINO-A-23 | Ground + Ground | sensor_ground | corroborated | |
| OEM-X-41 | Mass air flow (MAF) signal | analog_in | — | — | — | corroborated | |
| OEM-X-42 | Vehicle speed signal | digital_in | SPEEDUINO-A-14 | Proto area 1 (flex fuel) | digital_in | corroborated | |
| OEM-X-43 | Crank position sensor (-) | sensor_ground | SPEEDUINO-A-12 + SPEEDUINO-A-23 | Ground + Ground | sensor_ground | corroborated | |
| OEM-X-44 | Sensor ground (IAT/ECT/TPS) | sensor_ground | SPEEDUINO-A-12 + SPEEDUINO-A-23 | Ground + Ground | sensor_ground | corroborated | |
| OEM-X-45 | Shield ground | shield | — | — | — | corroborated | |
| OEM-X-47 | Tachometer output | tacho_out | SPEEDUINO-A-17 | Proto area 4 (tachometer) | tacho_out | corroborated | |
| OEM-X-5 | Injector cylinder 4 | injector_out | SPEEDUINO-A-5 | Injector 4 | injector_out | corroborated | |
| OEM-X-50 | Ignition coil cylinder 1 | ignition_out | SPEEDUINO-A-7 | Ignition 1 | ignition_out | corroborated | |
| OEM-X-51 | Ignition coil cylinder 2 | ignition_out | SPEEDUINO-A-34 | Ignition 2 | ignition_out | corroborated | |
| OEM-X-52 | Ignition coil cylinder 3 | ignition_out | SPEEDUINO-A-33 | Ignition 3 | ignition_out | corroborated | |
| OEM-X-54 | ECU power (+14V from main relay) | power_in | — | — | — | corroborated | |
| OEM-X-55 | Ground (ignition) | ground | MAIN-R-COIL- + SPEEDUINO-A-10 + SPEEDUINO-A-9 | Relay coil negative (ECU low-side driver) + Ground + Ground | ground + load | corroborated | |
| OEM-X-56 | Ignition switch (terminal 15) | digital_in | MAIN-R-COIL+ | Relay coil positive (ignition-switched +12V) | power_in | corroborated | |
| OEM-X-59 | +5V sensor supply | vref | SPEEDUINO-A-13 | 5V | vref | corroborated | |
| OEM-X-6 | Ground (injector output stages) | ground | MAIN-R-COIL- + SPEEDUINO-A-10 + SPEEDUINO-A-9 | Relay coil negative (ECU low-side driver) + Ground + Ground | ground + load | corroborated | |
| OEM-X-69 | Knock sensor cylinders 4-6 | knock_in | — | — | — | corroborated | |
| OEM-X-7 | VANOS intake camshaft solenoid | low_side_out | — | — | — | corroborated | |
| OEM-X-70 | Knock sensor cylinders 1-3 | knock_in | — | — | — | corroborated | |
| OEM-X-71 | Knock sensor ground/shield | sensor_ground | SPEEDUINO-A-12 + SPEEDUINO-A-23 | Ground + Ground | sensor_ground | corroborated | |
| OEM-X-73 | Throttle position (TPS) | analog_in | SPEEDUINO-A-22 | TPS input | analog_in | corroborated | |
| OEM-X-77 | Intake air temperature (IAT) | temp_in | SPEEDUINO-A-20 | Inlet air temp (IAT) | temp_in | corroborated | |
| OEM-X-78 | Engine coolant temperature (ECT) | temp_in | SPEEDUINO-A-19 | Coolant temp (CLT) | temp_in | corroborated | |
| OEM-X-8 | Check engine light (MIL) | low_side_out | — | — | — | corroborated |
Cut list
| Wire | From | To | Gauge (mm²) | Colour | Length | Signal | Ident |
|---|---|---|---|---|---|---|---|
| W1 | OEM-X-54 | SP-14V-1 | 0.85 | no route | ECU power (+14V from main relay) | — | |
| W2 | OEM-X-56 | MAIN-R-COIL+ | 0.5 | no route | Ignition switch (terminal 15) | — | |
| W3 | NEW-BATT-1 | MAIN-R-IN | 0.85 | no route | Relay contact input (battery + via main fuse) | — | |
| W4 | MAIN-R-COIL- | SP-GND-1 | 0.5 | no route | Relay coil negative (ECU low-side driver) | — | |
| W5 | MAIN-R-OUT | SPEEDUINO-PWR-12V | 0.85 | no route | Relay contact output (switched +12V bus) | — | |
| W6 | OEM-X-15 | SP-GND-1 | 0.85 | no route | Ground | — | |
| W7 | OEM-X-34 | SP-GND-1 | 0.85 | no route | Ground (output stages) | — | |
| W8 | OEM-X-55 | SP-GND-1 | 0.85 | no route | Ground (ignition) | — | |
| W9 | OEM-X-6 | SP-GND-1 | 0.85 | no route | Ground (injector output stages) | — | |
| W10 | SP-GND-1 | SPEEDUINO-A-10 | 0.85 | no route | Ground | — | |
| W11 | SP-GND-1 | SPEEDUINO-A-9 | 0.85 | no route | Ground | — | |
| W12 | OEM-X-28 | SP-0V-1 | 0.5 | no route | Ground (electronics + sensor shielding) | — | |
| W13 | OEM-X-40 | SP-0V-1 | 0.5 | no route | O2 sensor signal ground | — | |
| W14 | OEM-X-43 | SP-0V-1 | 0.5 | no route | Crank position sensor (-) | — | |
| W15 | OEM-X-44 | SP-0V-1 | 0.5 | no route | Sensor ground (IAT/ECT/TPS) | — | |
| W16 | OEM-X-71 | SP-0V-1 | 0.5 | no route | Knock sensor ground/shield | — | |
| W17 | SP-0V-1 | SPEEDUINO-A-12 | 0.5 | no route | Ground | — | |
| W18 | SP-0V-1 | SPEEDUINO-A-23 | 0.5 | no route | Ground | — | |
| W19 | OEM-X-59 | SPEEDUINO-A-13 | 0.5 | no route | +5V sensor supply | — | |
| W20 | OEM-X-16 | SPEEDUINO-A-25 | 0.5 | no route | Crank position sensor (+) | — | |
| W21 | OEM-X-17 | SPEEDUINO-A-24 | 0.5 | no route | Camshaft position sensor (Hall) | — | |
| W22 | OEM-X-50 | SPEEDUINO-A-7 | 0.5 | no route | Ignition coil cylinder 1 | — | |
| W23 | OEM-X-51 | SPEEDUINO-A-34 | 0.5 | no route | Ignition coil cylinder 2 | — | |
| W24 | OEM-X-52 | SPEEDUINO-A-33 | 0.5 | no route | Ignition coil cylinder 3 | — | |
| W25 | OEM-X-23 | SPEEDUINO-A-8 | 0.5 | no route | Ignition coil cylinder 4 | — | |
| W26 | OEM-X-33 | SPEEDUINO-A-1 | 0.5 | no route | Injector cylinder 1 | — | |
| W27 | OEM-X-32 | SPEEDUINO-A-2 | 0.5 | no route | Injector cylinder 2 | — | |
| W28 | OEM-X-31 | SPEEDUINO-A-3 | 0.5 | no route | Injector cylinder 3 | — | |
| W29 | OEM-X-5 | SPEEDUINO-A-5 | 0.5 | no route | Injector cylinder 4 | — | |
| W30 | OEM-X-3 | SPEEDUINO-A-1 | 0.5 | no route | Injector cylinder 5 | — | |
| W31 | OEM-X-4 | SPEEDUINO-A-2 | 0.5 | no route | Injector cylinder 6 | — | |
| W32 | OEM-X-1 | SPEEDUINO-A-16 | 0.5 | no route | Fuel pump relay control | — | |
| W33 | OEM-X-27 | SPEEDUINO-A-15 | 0.5 | no route | Main relay control | — | |
| W34 | OEM-X-73 | SPEEDUINO-A-22 | 0.5 | no route | Throttle position (TPS) | — | |
| W35 | OEM-X-78 | SPEEDUINO-A-19 | 0.5 | no route | Engine coolant temperature (ECT) | — | |
| W36 | OEM-X-38 | SPEEDUINO-A-36 | 0.5 | no route | O2 sensor heater relay control | — | |
| W37 | OEM-X-2 | SPEEDUINO-A-37 | 0.5 | no route | Idle speed control valve (close winding) | — | |
| W38 | OEM-X-29 | SPEEDUINO-A-35 | 0.5 | no route | Idle speed control valve (open winding) | — | |
| W39 | OEM-X-36 | SPEEDUINO-A-38 | 0.5 | no route | Evap purge solenoid | — | |
| W40 | OEM-X-47 | SPEEDUINO-A-17 | 0.5 | no route | Tachometer output | — | |
| W41 | OEM-X-13 | SPEEDUINO-A-21 | 0.5 | no route | O2 sensor signal | — | |
| W42 | OEM-X-77 | SPEEDUINO-A-20 | 0.5 | no route | Intake air temperature (IAT) | — | |
| W43 | OEM-X-42 | SPEEDUINO-A-14 | 0.5 | no route | Vehicle speed signal | — |
Bill of materials
| Category | Part number | Manufacturer | Description | Qty | Unit |
|---|---|---|---|---|---|
| connector | BMW-E36-DME-CONN | BMW | E36 DME (M3.1/M3.3.1) harness connector | 1.000 | ea |
ECU setup sheet
| Role | Engine ref | Engine signal | Sensor | ECU point | ECU function | ECU class | Setup flag |
|---|---|---|---|---|---|---|---|
| No configured channels. | |||||||
Findings
Open (5)
| Severity | Code | Subject | Message |
|---|---|---|---|
| error | REQUIRED_UNMAPPED | OEM-X-24 | Required OEM function "Ignition coil cylinder 6" (ignition_out) is not connected to the new ECU. |
| error | REQUIRED_UNMAPPED | OEM-X-25 | Required OEM function "Ignition coil cylinder 5" (ignition_out) is not connected to the new ECU. |
| error | REQUIRED_UNMAPPED | OEM-X-41 | Required OEM function "Mass air flow (MAF) signal" (analog_in) is not connected to the new ECU. |
| info | NET_FAMILY | OEM-X-56 ↔ MAIN-R-COIL+ | OEM-X-56 "Ignition switch (terminal 15)" [digital_in] is wired to MAIN-R-COIL+ "Relay coil positive (ignition-switched +12V)" [power_in]. Switched supply used as the ignition-on sense. |
| info | UNMAPPED | OEM | 5 optional OEM pins are not mapped: OEM-X-45 Shield ground; OEM-X-69 Knock sensor cylinders 4-6; OEM-X-7 VANOS intake camshaft solenoid; OEM-X-70 Knock sensor cylinders 1-3; OEM-X-8 Check engine light (MIL) |
Accepted (1)
| Code | Subject | Reason | By |
|---|---|---|---|
| REQUIRED_UNMAPPED | OEM-X-26 | Battery-constant (memory) feed of the stock ECU: the new ECU has no such input, so it is not needed. | mapping-proposal |
Notes
Auto-mapped by auto_map() from the library pin data on 2026-10-20. Review every wire against both manuals before building. Open items: - OEM-X 25: Ignition coil cylinder 5: no free ignition output on Speeduino Speeduino - OEM-X 24: Ignition coil cylinder 6: no free ignition output on Speeduino Speeduino - OEM-X 41: Mass air flow (MAF) signal: no free maf/analog_0_5 on Speeduino Speeduino Not wired: - OEM-X 26: Battery voltage (constant +12V): Speeduino Speeduino has no battery-constant memory input; not needed - OEM-X 70: Knock sensor cylinders 1-3: no free knock input on Speeduino Speeduino - OEM-X 69: Knock sensor cylinders 4-6: no free knock input on Speeduino Speeduino - OEM-X 45: Shield ground: no shield pin on Speeduino Speeduino - OEM-X 7: VANOS intake camshaft solenoid: no free low_side/relay_control/heater_low_side/ls_hs/injector on Speeduino Speeduino - OEM-X 8: Check engine light (MIL): no free low_side/relay_control/heater_low_side/ls_hs/injector on Speeduino Speeduino
Sources
| Reliability | Kind | Title | URL | Archive | Captured | SHA-256 |
|---|---|---|---|---|---|---|
| 4 | vendor_doc | Emtron SL4/SL6/SL8 pinout pages | https://docs.emtronaustralia.com.au/engine-management/wiring/index.html | archive | 2026-10-05 | e52b3da9996a |
| 4 | vendor_doc | Link BMWLink E36X (G4X) plug-in install manual | https://linkecu.com/documentation/E36X.pdf | archive | 2026-10-05 | 010cda3acd08 |
| 4 | vendor_doc | Speeduino Manual (08/04/25) — V0.4 board IDC40 pinout & features | https://speeduino.com/Speeduino_manual.pdf | archive | 2026-10-05 | 21806bd29ef0 |
| 4 | vendor_doc | Speeduino wiki — V0.4 board & wiring (12v input, switched power) | https://wiki.speeduino.com/en/boards/V04 | — | — | — |
| 3 | forum | rusEFI Mazda Miata 2002 engine wiring | https://github.com/rusefi/rusefi/wiki/Mazda-Miata-2002 | archive | 2026-10-05 | cc3cae670408 |
| 2 | community_copy | bimmer-service: Bosch Motronic M3.3.1 pinout (E36 M50) | https://www.bimmer-service.com/2025/11/17/bosch-motronic-m3-3-1-pinout-wiring-diagram/ | — | — | — |