← Back

BMW 3 Series E46 1998–2006 (M54) → MoTeC M170 13170 (auto)

BMW 3 Series E46 1998–2006 (M54) — MoTeC — M170
⚠ NOT CHECKED. Don't build from this.
Drawn by Michael Gnankou · Rev 0 · draft · 2026-10-08

Before you start

Statusdraft · not yet verified: nobody has reported building and running this harness
Open errorsnone
Size of the job73 wires · 10 connectors · 1 part lines
ToolsCrimp and extraction tools for each terminal family (see Connectors) · wire strippers · multimeter · heat gun + heat-shrink
Order of work1. 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 Ω.

WireFromToGaugeColourCutLabelCrimp ACrimp BPin APin BContinuity
W1OEM-X60001-8SP-14V-10.85☐☐☐☐☐☐☐
W2OEM-X60001-9SP-14V-10.85☐☐☐☐☐☐☐
W3SP-14V-1M170-A-230.85☐☐☐☐☐☐☐
W4SP-14V-1M170-A-320.85☐☐☐☐☐☐☐
W5SP-14V-1M170-A-410.85☐☐☐☐☐☐☐
W6OEM-X60001-7M170-A-540.85☐☐☐☐☐☐☐
W7OEM-X60001-4SP-GND-10.85☐☐☐☐☐☐☐
W8OEM-X60001-5SP-GND-10.85☐☐☐☐☐☐☐
W9OEM-X60001-6SP-GND-10.85☐☐☐☐☐☐☐
W10OEM-X60005-5SP-GND-10.85☐☐☐☐☐☐☐
W11SP-GND-1M170-A-140.85☐☐☐☐☐☐☐
W12SP-GND-1M170-A-150.85☐☐☐☐☐☐☐
W13SP-GND-1M170-A-190.85☐☐☐☐☐☐☐
W14SP-GND-1M170-A-200.85☐☐☐☐☐☐☐
W15SP-GND-1M170-A-210.85☐☐☐☐☐☐☐
W16OEM-X60002-20SP-0V-10.5☐☐☐☐☐☐☐
W17OEM-X60002-21SP-0V-10.5☐☐☐☐☐☐☐
W18OEM-X60002-22SP-0V-10.5☐☐☐☐☐☐☐
W19OEM-X60002-24SP-0V-10.5☐☐☐☐☐☐☐
W20OEM-X60003-15SP-0V-10.5☐☐☐☐☐☐☐
W21OEM-X60003-17SP-0V-10.5☐☐☐☐☐☐☐
W22OEM-X60003-18SP-0V-10.5☐☐☐☐☐☐☐
W23OEM-X60003-20SP-0V-10.5☐☐☐☐☐☐☐
W24OEM-X60003-21SP-0V-10.5☐☐☐☐☐☐☐
W25OEM-X60003-23SP-0V-10.5☐☐☐☐☐☐☐
W26OEM-X60003-25SP-0V-10.5☐☐☐☐☐☐☐
W27OEM-X60003-28SP-0V-10.5☐☐☐☐☐☐☐
W28OEM-X60004-12SP-0V-10.5☐☐☐☐☐☐☐
W29OEM-X60004-7SP-0V-10.5☐☐☐☐☐☐☐
W30SP-0V-1M170-A-110.5☐☐☐☐☐☐☐
W31SP-0V-1M170-A-270.5☐☐☐☐☐☐☐
W32OEM-X60003-7SP-5V1-10.5☐☐☐☐☐☐☐
W33OEM-X60004-14SP-5V1-10.5☐☐☐☐☐☐☐
W34OEM-X60004-9SP-5V1-10.5☐☐☐☐☐☐☐
W35SP-5V1-1M170-A-160.5☐☐☐☐☐☐☐
W36OEM-X60003-8M170-A-490.5☐☐☐☐☐☐☐
W37OEM-X60003-2M170-A-560.5☐☐☐☐☐☐☐
W38OEM-X60003-5M170-A-460.5☐☐☐☐☐☐☐
W39OEM-X60003-29M170-A-290.5☐☐☐☐☐☐☐
W40OEM-X60003-30M170-A-600.5☐☐☐☐☐☐☐
W41OEM-X60005-3M170-A-10.5☐☐☐☐☐☐☐
W42OEM-X60005-2M170-A-50.5☐☐☐☐☐☐☐
W43OEM-X60005-1M170-A-40.5☐☐☐☐☐☐☐
W44OEM-X60005-9M170-A-100.5☐☐☐☐☐☐☐
W45OEM-X60005-8M170-A-170.5☐☐☐☐☐☐☐
W46OEM-X60005-7M170-A-250.5☐☐☐☐☐☐☐
W47OEM-X60003-33M170-A-330.5☐☐☐☐☐☐☐
W48OEM-X60003-34M170-A-430.5☐☐☐☐☐☐☐
W49OEM-X60003-35M170-A-500.5☐☐☐☐☐☐☐
W50OEM-X60003-36M170-A-510.5☐☐☐☐☐☐☐
W51OEM-X60003-37M170-A-630.5☐☐☐☐☐☐☐
W52OEM-X60003-38M170-A-660.5☐☐☐☐☐☐☐
W53OEM-X60003-43M170-A-90.5☐☐☐☐☐☐☐
W54OEM-X60003-44M170-A-80.5☐☐☐☐☐☐☐
W55OEM-X60003-46M170-A-590.5☐☐☐☐☐☐☐
W56OEM-X60003-47M170-A-650.5☐☐☐☐☐☐☐
W57OEM-X60001-1M170-A-240.5☐☐☐☐☐☐☐
W58OEM-X60002-23M170-A-420.5☐☐☐☐☐☐☐
W59OEM-X60004-10M170-A-570.5☐☐☐☐☐☐☐
W60OEM-X60002-1M170-A-580.5☐☐☐☐☐☐☐
W61OEM-X60002-13M170-A-640.5☐☐☐☐☐☐☐
W62OEM-X60003-40M170-A-620.5☐☐☐☐☐☐☐
W63OEM-X60003-1M170-A-260.5☐☐☐☐☐☐☐
W64OEM-X60003-19M170-A-180.5☐☐☐☐☐☐☐
W65OEM-X60004-8M170-A-60.5☐☐☐☐☐☐☐
W66OEM-X60003-10M170-A-70.5☐☐☐☐☐☐☐
W67OEM-X60004-13M170-A-120.5☐☐☐☐☐☐☐
W68OEM-X60002-14M170-A-360.5☐☐☐☐☐☐☐
W69OEM-X60002-15M170-A-350.5☐☐☐☐☐☐☐
W70OEM-X60002-16M170-A-440.5☐☐☐☐☐☐☐
W71OEM-X60003-24M170-A-280.5☐☐☐☐☐☐☐
W72OEM-X60003-22M170-A-380.5☐☐☐☐☐☐☐
W73OEM-X60003-27M170-A-300.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 AProbe BExpectWhyReading
1M170-A-23M170-A-11open (OL)+12 V supply must not touch sensor ground
2M170-A-54M170-A-11open (OL)+12 V supply must not touch sensor ground
3M170-A-11M170-A-16open (OL)sensor ground must not touch 5 V sensor reference
4M170-A-14M170-A-16open (OL)power ground must not touch 5 V sensor reference
5M170-A-14M170-A-23open (OL)power ground must not touch +12 V supply
6M170-A-14M170-A-54open (OL)power ground must not touch +12 V supply
7M170-A-23M170-A-16open (OL)+12 V supply must not touch 5 V sensor reference
8M170-A-54M170-A-16open (OL)+12 V supply must not touch 5 V sensor reference

Revisions

RevLabelByDate
No revisions yet.

Schematic

M170-AOEM-X60001OEM-X60002OEM-X60003OEM-X60004OEM-X60005SP-0VSP-14VSP-5V1SP-GND

Connectors

M170-A

CavityFunctionSignalWireColourGauge (mm²)DestinationTerminalSealPlug
1Low Side Ignition 1—W41—0.5OEM-X60005-3———
10Low Side Ignition 4—W44—0.5OEM-X60005-9———
11Sensor 0V A—W30—0.5SP-0V-1———
12Analogue Voltage Input 5—W67—0.5OEM-X60004-13———
13Universal Digital Input 7————————
14Battery Negative 1—W11—0.85SP-GND-1———
15Battery Negative 2—W12—0.85SP-GND-1———
16Sensor 5.0V A—W35—0.5SP-5V1-1———
17Low Side Ignition 5—W45—0.5OEM-X60005-8———
18Analogue Voltage Input 2—W64—0.5OEM-X60003-19———
19Battery Negative 3—W13—0.85SP-GND-1———
2Low Side Ignition 8————————
20Battery Negative 4—W14—0.85SP-GND-1———
21Battery Negative 5—W15—0.85SP-GND-1———
22Universal Digital Input 8————————
23Battery Positive—W3—0.85SP-14V-1———
24Peak Hold Injector 5—W57—0.5OEM-X60001-1———
25Low Side Ignition 6—W46—0.5OEM-X60005-7———
26Analogue Voltage Input 1—W63—0.5OEM-X60003-1———
27Sensor 0V B—W31—0.5SP-0V-1———
28Analogue Temperature Input 1—W71—0.5OEM-X60003-24———
29Knock Input 1—W39—0.5OEM-X60003-29———
3Low Side Ignition 7————————
30Analogue Temperature Input 3—W73—0.5OEM-X60003-27———
31CAN Bus 1 Low————————
32Battery Positive—W4—0.85SP-14V-1———
33Peak Hold Injector 1—W47—0.5OEM-X60003-33———
34Sensor 5.0V B————————
35Analogue Voltage Input 7—W69—0.5OEM-X60002-15———
36Analogue Voltage Input 6—W68—0.5OEM-X60002-14———
37Sensor 6.3V————————
38Analogue Temperature Input 2—W72—0.5OEM-X60003-22———
39Analogue Temperature Input 4————————
4Low Side Ignition 3—W43—0.5OEM-X60005-1———
40CAN Bus 1 High————————
41Battery Positive—W5—0.85SP-14V-1———
42Peak Hold Injector 6—W58—0.5OEM-X60002-23———
43Low Side Injector 1—W48—0.5OEM-X60003-34———
44Analogue Voltage Input 8—W70—0.5OEM-X60002-16———
45Universal Digital Input 4————————
46Universal Digital Input 3—W38—0.5OEM-X60003-5———
47Ethernet Transmit -————————
48Ethernet Transmit +————————
49Universal Digital Input 1—W36—0.5OEM-X60003-8———
5Low Side Ignition 2—W42—0.5OEM-X60005-2———
50Peak Hold Injector 2—W49—0.5OEM-X60003-35———
51Low Side Injector 2—W50—0.5OEM-X60003-36———
52Universal Digital Input 5————————
53Universal Digital Input 6————————
54Battery Backup—W6—0.85OEM-X60001-7———
55Ethernet Receive +————————
56Universal Digital Input 2—W37—0.5OEM-X60003-2———
57Peak Hold Injector 7—W59—0.5OEM-X60004-10———
58Half Bridge Output 5—W60—0.5OEM-X60002-1———
59Half Bridge Output 3—W55—0.5OEM-X60003-46———
6Analogue Voltage Input 3—W65—0.5OEM-X60004-8———
60Knock Input 2—W40—0.5OEM-X60003-30———
61Ethernet Receive -————————
62Peak Hold Injector 8—W62—0.5OEM-X60003-40———
63Peak Hold Injector 3—W51—0.5OEM-X60003-37———
64Half Bridge Output 6—W61—0.5OEM-X60002-13———
65Half Bridge Output 4—W56—0.5OEM-X60003-47———
66Peak Hold Injector 4—W52—0.5OEM-X60003-38———
7Analogue Voltage Input 4—W66—0.5OEM-X60003-10———
8Half Bridge Output 2—W54—0.5OEM-X60003-44———
9Half Bridge Output 1—W53—0.5OEM-X60003-43———

OEM-X60001

CavityFunctionSignalWireColourGauge (mm²)DestinationTerminalSealPlug
1Injector/unloader relay control (terminal 15)—W57—0.5M170-A-24———
4Power ground—W7—0.85SP-GND-1———
5Power ground—W8—0.85SP-GND-1———
6Power ground—W9—0.85SP-GND-1———
7Battery constant (terminal 30)—W6—0.85M170-A-54———
8ECU main power (terminal 87 via main relay)—W1—0.85SP-14V-1———
9Voltage supply (injector / fuse carrier)—W2—0.85SP-14V-1———

OEM-X60002

CavityFunctionSignalWireColourGauge (mm²)DestinationTerminalSealPlug
1O2 sensor heater, bank 1 pre-cat—W60—0.5M170-A-58———
13O2 sensor heater, bank 2 pre-cat—W61—0.5M170-A-64———
14O2 sensor signal, bank 1 pre-cat—W68—0.5M170-A-36———
15O2 sensor signal, bank 2 pre-cat—W69—0.5M170-A-35———
16O2 sensor signal, bank 1 post-cat—W70—0.5M170-A-44———
18O2 sensor signal, bank 2 post-cat————————
19O2 sensor heater, bank 2 post-cat————————
20O2 sensor ground, bank 1 pre-cat—W16—0.5SP-0V-1———
21O2 sensor ground, bank 2 pre-cat—W17—0.5SP-0V-1———
22O2 sensor ground, bank 1 post-cat—W18—0.5SP-0V-1———
23Main relay control—W58—0.5M170-A-42———
24O2 sensor ground, bank 2 post-cat—W19—0.5SP-0V-1———
7O2 sensor heater, bank 1 post-cat————————

OEM-X60003

CavityFunctionSignalWireColourGauge (mm²)DestinationTerminalSealPlug
1Mass air flow (MAF) signal—W63—0.5M170-A-26———
10Throttle position sensor 2—W66—0.5M170-A-7———
15Exhaust camshaft ground—W20—0.5SP-0V-1———
17MAF ground—W21—0.5SP-0V-1———
18Intake camshaft ground—W22—0.5SP-0V-1———
19Throttle position sensor 1—W64—0.5M170-A-18———
2Exhaust camshaft position—W37—0.5M170-A-56———
20Throttle ground—W23—0.5SP-0V-1———
21Crankshaft ground—W24—0.5SP-0V-1———
22Intake air temperature (IAT)—W72—0.5M170-A-38———
23IAT ground—W25—0.5SP-0V-1———
24Engine coolant temperature (ECT)—W71—0.5M170-A-28———
25ECT ground—W26—0.5SP-0V-1———
27Engine oil temperature—W73—0.5M170-A-30———
28Oil temperature ground—W27—0.5SP-0V-1———
29Knock sensor, cylinders 1-3 (A)—W39—0.5M170-A-29———
30Knock sensor, cylinders 1-3 (B)—W40—0.5M170-A-60———
31Knock sensor, cylinders 4-6 (A)————————
32Knock sensor, cylinders 4-6 (B)————————
33Injector cylinder 1—W47—0.5M170-A-33———
34Injector cylinder 2—W48—0.5M170-A-43———
35Injector cylinder 3—W49—0.5M170-A-50———
36Injector cylinder 4—W50—0.5M170-A-51———
37Injector cylinder 5—W51—0.5M170-A-63———
38Injector cylinder 6—W52—0.5M170-A-66———
40VANOS intake solenoid—W62—0.5M170-A-62———
41VANOS exhaust solenoid————————
42Evap purge valve————————
43Throttle motor drive 1 (H-bridge)—W53—0.5M170-A-9———
44Throttle motor drive 2 (H-bridge)—W54—0.5M170-A-8———
45Map-controlled thermostat————————
46Idle speed control, close—W55—0.5M170-A-59———
47Idle speed control, open—W56—0.5M170-A-65———
48Knock sensor shield————————
49DISA intake flap————————
5Intake camshaft position—W38—0.5M170-A-46———
7Throttle body +5V supply—W32—0.5SP-5V1-1———
8Crankshaft position—W36—0.5M170-A-49———

OEM-X60004

CavityFunctionSignalWireColourGauge (mm²)DestinationTerminalSealPlug
10Fuel pump relay control—W59—0.5M170-A-57———
12Pedal ground 2—W28—0.5SP-0V-1———
13Pedal position signal 2—W67—0.5M170-A-12———
14Pedal +5V supply 2—W33—0.5SP-5V1-1———
7Pedal ground 1—W29—0.5SP-0V-1———
8Pedal position signal 1—W65—0.5M170-A-6———
9Pedal +5V supply 1—W34—0.5SP-5V1-1———

OEM-X60005

CavityFunctionSignalWireColourGauge (mm²)DestinationTerminalSealPlug
1Ignition coil 3—W43—0.5M170-A-4———
2Ignition coil 2—W42—0.5M170-A-5———
3Ignition coil 1—W41—0.5M170-A-1———
5Ignition ground—W10—0.85SP-GND-1———
7Ignition coil 6—W46—0.5M170-A-25———
8Ignition coil 5—W45—0.5M170-A-17———
9Ignition coil 4—W44—0.5M170-A-10———

SP-0V

CavityFunctionSignalWireColourGauge (mm²)DestinationTerminalSealPlug
1——W16—0.5OEM-X60002-20———
1——W17—0.5OEM-X60002-21———
1——W18—0.5OEM-X60002-22———
1——W19—0.5OEM-X60002-24———
1——W20—0.5OEM-X60003-15———
1——W21—0.5OEM-X60003-17———
1——W22—0.5OEM-X60003-18———
1——W23—0.5OEM-X60003-20———
1——W24—0.5OEM-X60003-21———
1——W25—0.5OEM-X60003-23———
1——W26—0.5OEM-X60003-25———
1——W27—0.5OEM-X60003-28———
1——W28—0.5OEM-X60004-12———
1——W29—0.5OEM-X60004-7———
1——W30—0.5M170-A-11———
1——W31—0.5M170-A-27———

SP-14V

CavityFunctionSignalWireColourGauge (mm²)DestinationTerminalSealPlug
1——W1—0.85OEM-X60001-8———
1——W2—0.85OEM-X60001-9———
1——W3—0.85M170-A-23———
1——W4—0.85M170-A-32———
1——W5—0.85M170-A-41———

SP-5V1

CavityFunctionSignalWireColourGauge (mm²)DestinationTerminalSealPlug
1——W32—0.5OEM-X60003-7———
1——W33—0.5OEM-X60004-14———
1——W34—0.5OEM-X60004-9———
1——W35—0.5M170-A-16———

SP-GND

CavityFunctionSignalWireColourGauge (mm²)DestinationTerminalSealPlug
1——W7—0.85OEM-X60001-4———
1——W8—0.85OEM-X60001-5———
1——W9—0.85OEM-X60001-6———
1——W10—0.85OEM-X60005-5———
1——W11—0.85M170-A-14———
1——W12—0.85M170-A-15———
1——W13—0.85M170-A-19———
1——W14—0.85M170-A-20———
1——W15—0.85M170-A-21———

Pin map

OEM pointOEM functionOEM familyTarget pointTarget functionTarget familyWire colourEvidence
OEM-X60001-1Injector/unloader relay control (terminal 15)low_side_outM170-A-24Peak Hold Injector 5injector_outcorroborated
OEM-X60001-4Power groundgroundM170-A-14 + M170-A-15 + M170-A-19 + M170-A-20 + M170-A-21Battery Negative 1 + Battery Negative 2 + Battery Negative 3 + Battery Negative 4 + Battery Negative 5groundcorroborated
OEM-X60001-5Power groundgroundM170-A-14 + M170-A-15 + M170-A-19 + M170-A-20 + M170-A-21Battery Negative 1 + Battery Negative 2 + Battery Negative 3 + Battery Negative 4 + Battery Negative 5groundcorroborated
OEM-X60001-6Power groundgroundM170-A-14 + M170-A-15 + M170-A-19 + M170-A-20 + M170-A-21Battery Negative 1 + Battery Negative 2 + Battery Negative 3 + Battery Negative 4 + Battery Negative 5groundcorroborated
OEM-X60001-7Battery constant (terminal 30)power_inM170-A-54Battery Backuppower_incorroborated
OEM-X60001-8ECU main power (terminal 87 via main relay)power_inM170-A-23 + M170-A-32 + M170-A-41Battery Positive + Battery Positive + Battery Positivepower_incorroborated
OEM-X60001-9Voltage supply (injector / fuse carrier)power_inM170-A-23 + M170-A-32 + M170-A-41Battery Positive + Battery Positive + Battery Positivepower_incorroborated
OEM-X60002-1O2 sensor heater, bank 1 pre-catlow_side_outM170-A-58Half Bridge Output 5hbridge_outcorroborated
OEM-X60002-13O2 sensor heater, bank 2 pre-catlow_side_outM170-A-64Half Bridge Output 6hbridge_outcorroborated
OEM-X60002-14O2 sensor signal, bank 1 pre-catlambda_nb_inM170-A-36Analogue Voltage Input 6analog_incorroborated
OEM-X60002-15O2 sensor signal, bank 2 pre-catlambda_nb_inM170-A-35Analogue Voltage Input 7analog_incorroborated
OEM-X60002-16O2 sensor signal, bank 1 post-catlambda_nb_inM170-A-44Analogue Voltage Input 8analog_incorroborated
OEM-X60002-18O2 sensor signal, bank 2 post-catlambda_nb_in———corroborated
OEM-X60002-19O2 sensor heater, bank 2 post-catlow_side_out———corroborated
OEM-X60002-20O2 sensor ground, bank 1 pre-catsensor_groundM170-A-11 + M170-A-27Sensor 0V A + Sensor 0V Bsensor_groundcorroborated
OEM-X60002-21O2 sensor ground, bank 2 pre-catsensor_groundM170-A-11 + M170-A-27Sensor 0V A + Sensor 0V Bsensor_groundcorroborated
OEM-X60002-22O2 sensor ground, bank 1 post-catsensor_groundM170-A-11 + M170-A-27Sensor 0V A + Sensor 0V Bsensor_groundcorroborated
OEM-X60002-23Main relay controllow_side_outM170-A-42Peak Hold Injector 6injector_outcorroborated
OEM-X60002-24O2 sensor ground, bank 2 post-catsensor_groundM170-A-11 + M170-A-27Sensor 0V A + Sensor 0V Bsensor_groundcorroborated
OEM-X60002-7O2 sensor heater, bank 1 post-catlow_side_out———corroborated
OEM-X60003-1Mass air flow (MAF) signalanalog_inM170-A-26Analogue Voltage Input 1analog_incorroborated
OEM-X60003-10Throttle position sensor 2analog_inM170-A-7Analogue Voltage Input 4analog_incorroborated
OEM-X60003-15Exhaust camshaft groundsensor_groundM170-A-11 + M170-A-27Sensor 0V A + Sensor 0V Bsensor_groundcorroborated
OEM-X60003-17MAF groundsensor_groundM170-A-11 + M170-A-27Sensor 0V A + Sensor 0V Bsensor_groundcorroborated
OEM-X60003-18Intake camshaft groundsensor_groundM170-A-11 + M170-A-27Sensor 0V A + Sensor 0V Bsensor_groundcorroborated
OEM-X60003-19Throttle position sensor 1analog_inM170-A-18Analogue Voltage Input 2analog_incorroborated
OEM-X60003-2Exhaust camshaft positiontrigger_inM170-A-56Universal Digital Input 2digital_incorroborated
OEM-X60003-20Throttle groundsensor_groundM170-A-11 + M170-A-27Sensor 0V A + Sensor 0V Bsensor_groundcorroborated
OEM-X60003-21Crankshaft groundsensor_groundM170-A-11 + M170-A-27Sensor 0V A + Sensor 0V Bsensor_groundcorroborated
OEM-X60003-22Intake air temperature (IAT)temp_inM170-A-38Analogue Temperature Input 2temp_incorroborated
OEM-X60003-23IAT groundsensor_groundM170-A-11 + M170-A-27Sensor 0V A + Sensor 0V Bsensor_groundcorroborated
OEM-X60003-24Engine coolant temperature (ECT)temp_inM170-A-28Analogue Temperature Input 1temp_incorroborated
OEM-X60003-25ECT groundsensor_groundM170-A-11 + M170-A-27Sensor 0V A + Sensor 0V Bsensor_groundcorroborated
OEM-X60003-27Engine oil temperaturetemp_inM170-A-30Analogue Temperature Input 3temp_incorroborated
OEM-X60003-28Oil temperature groundsensor_groundM170-A-11 + M170-A-27Sensor 0V A + Sensor 0V Bsensor_groundcorroborated
OEM-X60003-29Knock sensor, cylinders 1-3 (A)knock_inM170-A-29Knock Input 1knock_incorroborated
OEM-X60003-30Knock sensor, cylinders 1-3 (B)knock_inM170-A-60Knock Input 2knock_incorroborated
OEM-X60003-31Knock sensor, cylinders 4-6 (A)knock_in———corroborated
OEM-X60003-32Knock sensor, cylinders 4-6 (B)knock_in———corroborated
OEM-X60003-33Injector cylinder 1injector_outM170-A-33Peak Hold Injector 1injector_outcorroborated
OEM-X60003-34Injector cylinder 2injector_outM170-A-43Low Side Injector 1injector_outcorroborated
OEM-X60003-35Injector cylinder 3injector_outM170-A-50Peak Hold Injector 2injector_outcorroborated
OEM-X60003-36Injector cylinder 4injector_outM170-A-51Low Side Injector 2injector_outcorroborated
OEM-X60003-37Injector cylinder 5injector_outM170-A-63Peak Hold Injector 3injector_outcorroborated
OEM-X60003-38Injector cylinder 6injector_outM170-A-66Peak Hold Injector 4injector_outcorroborated
OEM-X60003-40VANOS intake solenoidlow_side_outM170-A-62Peak Hold Injector 8injector_outcorroborated
OEM-X60003-41VANOS exhaust solenoidlow_side_out———corroborated
OEM-X60003-42Evap purge valvelow_side_out———corroborated
OEM-X60003-43Throttle motor drive 1 (H-bridge)hbridge_outM170-A-9Half Bridge Output 1hbridge_outcorroborated
OEM-X60003-44Throttle motor drive 2 (H-bridge)hbridge_outM170-A-8Half Bridge Output 2hbridge_outcorroborated
OEM-X60003-45Map-controlled thermostatlow_side_out———corroborated
OEM-X60003-46Idle speed control, closehbridge_outM170-A-59Half Bridge Output 3hbridge_outcorroborated
OEM-X60003-47Idle speed control, openhbridge_outM170-A-65Half Bridge Output 4hbridge_outcorroborated
OEM-X60003-48Knock sensor shieldshield———corroborated
OEM-X60003-49DISA intake flaplow_side_out———corroborated
OEM-X60003-5Intake camshaft positiontrigger_inM170-A-46Universal Digital Input 3digital_incorroborated
OEM-X60003-7Throttle body +5V supplyvrefM170-A-16Sensor 5.0V Avrefcorroborated
OEM-X60003-8Crankshaft positiontrigger_inM170-A-49Universal Digital Input 1digital_incorroborated
OEM-X60004-10Fuel pump relay controllow_side_outM170-A-57Peak Hold Injector 7injector_outcorroborated
OEM-X60004-12Pedal ground 2sensor_groundM170-A-11 + M170-A-27Sensor 0V A + Sensor 0V Bsensor_groundcorroborated
OEM-X60004-13Pedal position signal 2analog_inM170-A-12Analogue Voltage Input 5analog_incorroborated
OEM-X60004-14Pedal +5V supply 2vrefM170-A-16Sensor 5.0V Avrefcorroborated
OEM-X60004-7Pedal ground 1sensor_groundM170-A-11 + M170-A-27Sensor 0V A + Sensor 0V Bsensor_groundcorroborated
OEM-X60004-8Pedal position signal 1analog_inM170-A-6Analogue Voltage Input 3analog_incorroborated
OEM-X60004-9Pedal +5V supply 1vrefM170-A-16Sensor 5.0V Avrefcorroborated
OEM-X60005-1Ignition coil 3ignition_outM170-A-4Low Side Ignition 3ignition_outcorroborated
OEM-X60005-2Ignition coil 2ignition_outM170-A-5Low Side Ignition 2ignition_outcorroborated
OEM-X60005-3Ignition coil 1ignition_outM170-A-1Low Side Ignition 1ignition_outcorroborated
OEM-X60005-5Ignition groundgroundM170-A-14 + M170-A-15 + M170-A-19 + M170-A-20 + M170-A-21Battery Negative 1 + Battery Negative 2 + Battery Negative 3 + Battery Negative 4 + Battery Negative 5groundcorroborated
OEM-X60005-7Ignition coil 6ignition_outM170-A-25Low Side Ignition 6ignition_outcorroborated
OEM-X60005-8Ignition coil 5ignition_outM170-A-17Low Side Ignition 5ignition_outcorroborated
OEM-X60005-9Ignition coil 4ignition_outM170-A-10Low Side Ignition 4ignition_outcorroborated

Cut list

WireFromToGauge (mm²)ColourLengthSignalIdent
W1OEM-X60001-8SP-14V-10.85no routeECU main power (terminal 87 via main relay)—
W2OEM-X60001-9SP-14V-10.85no routeVoltage supply (injector / fuse carrier)—
W3SP-14V-1M170-A-230.85no routeBattery Positive—
W4SP-14V-1M170-A-320.85no routeBattery Positive—
W5SP-14V-1M170-A-410.85no routeBattery Positive—
W6OEM-X60001-7M170-A-540.85no routeBattery constant (terminal 30)—
W7OEM-X60001-4SP-GND-10.85no routePower ground—
W8OEM-X60001-5SP-GND-10.85no routePower ground—
W9OEM-X60001-6SP-GND-10.85no routePower ground—
W10OEM-X60005-5SP-GND-10.85no routeIgnition ground—
W11SP-GND-1M170-A-140.85no routeBattery Negative 1—
W12SP-GND-1M170-A-150.85no routeBattery Negative 2—
W13SP-GND-1M170-A-190.85no routeBattery Negative 3—
W14SP-GND-1M170-A-200.85no routeBattery Negative 4—
W15SP-GND-1M170-A-210.85no routeBattery Negative 5—
W16OEM-X60002-20SP-0V-10.5no routeO2 sensor ground, bank 1 pre-cat—
W17OEM-X60002-21SP-0V-10.5no routeO2 sensor ground, bank 2 pre-cat—
W18OEM-X60002-22SP-0V-10.5no routeO2 sensor ground, bank 1 post-cat—
W19OEM-X60002-24SP-0V-10.5no routeO2 sensor ground, bank 2 post-cat—
W20OEM-X60003-15SP-0V-10.5no routeExhaust camshaft ground—
W21OEM-X60003-17SP-0V-10.5no routeMAF ground—
W22OEM-X60003-18SP-0V-10.5no routeIntake camshaft ground—
W23OEM-X60003-20SP-0V-10.5no routeThrottle ground—
W24OEM-X60003-21SP-0V-10.5no routeCrankshaft ground—
W25OEM-X60003-23SP-0V-10.5no routeIAT ground—
W26OEM-X60003-25SP-0V-10.5no routeECT ground—
W27OEM-X60003-28SP-0V-10.5no routeOil temperature ground—
W28OEM-X60004-12SP-0V-10.5no routePedal ground 2—
W29OEM-X60004-7SP-0V-10.5no routePedal ground 1—
W30SP-0V-1M170-A-110.5no routeSensor 0V A—
W31SP-0V-1M170-A-270.5no routeSensor 0V B—
W32OEM-X60003-7SP-5V1-10.5no routeThrottle body +5V supply—
W33OEM-X60004-14SP-5V1-10.5no routePedal +5V supply 2—
W34OEM-X60004-9SP-5V1-10.5no routePedal +5V supply 1—
W35SP-5V1-1M170-A-160.5no routeSensor 5.0V A—
W36OEM-X60003-8M170-A-490.5no routeCrankshaft position—
W37OEM-X60003-2M170-A-560.5no routeExhaust camshaft position—
W38OEM-X60003-5M170-A-460.5no routeIntake camshaft position—
W39OEM-X60003-29M170-A-290.5no routeKnock sensor, cylinders 1-3 (A)—
W40OEM-X60003-30M170-A-600.5no routeKnock sensor, cylinders 1-3 (B)—
W41OEM-X60005-3M170-A-10.5no routeIgnition coil 1—
W42OEM-X60005-2M170-A-50.5no routeIgnition coil 2—
W43OEM-X60005-1M170-A-40.5no routeIgnition coil 3—
W44OEM-X60005-9M170-A-100.5no routeIgnition coil 4—
W45OEM-X60005-8M170-A-170.5no routeIgnition coil 5—
W46OEM-X60005-7M170-A-250.5no routeIgnition coil 6—
W47OEM-X60003-33M170-A-330.5no routeInjector cylinder 1—
W48OEM-X60003-34M170-A-430.5no routeInjector cylinder 2—
W49OEM-X60003-35M170-A-500.5no routeInjector cylinder 3—
W50OEM-X60003-36M170-A-510.5no routeInjector cylinder 4—
W51OEM-X60003-37M170-A-630.5no routeInjector cylinder 5—
W52OEM-X60003-38M170-A-660.5no routeInjector cylinder 6—
W53OEM-X60003-43M170-A-90.5no routeThrottle motor drive 1 (H-bridge)—
W54OEM-X60003-44M170-A-80.5no routeThrottle motor drive 2 (H-bridge)—
W55OEM-X60003-46M170-A-590.5no routeIdle speed control, close—
W56OEM-X60003-47M170-A-650.5no routeIdle speed control, open—
W57OEM-X60001-1M170-A-240.5no routeInjector/unloader relay control (terminal 15)—
W58OEM-X60002-23M170-A-420.5no routeMain relay control—
W59OEM-X60004-10M170-A-570.5no routeFuel pump relay control—
W60OEM-X60002-1M170-A-580.5no routeO2 sensor heater, bank 1 pre-cat—
W61OEM-X60002-13M170-A-640.5no routeO2 sensor heater, bank 2 pre-cat—
W62OEM-X60003-40M170-A-620.5no routeVANOS intake solenoid—
W63OEM-X60003-1M170-A-260.5no routeMass air flow (MAF) signal—
W64OEM-X60003-19M170-A-180.5no routeThrottle position sensor 1—
W65OEM-X60004-8M170-A-60.5no routePedal position signal 1—
W66OEM-X60003-10M170-A-70.5no routeThrottle position sensor 2—
W67OEM-X60004-13M170-A-120.5no routePedal position signal 2—
W68OEM-X60002-14M170-A-360.5no routeO2 sensor signal, bank 1 pre-cat—
W69OEM-X60002-15M170-A-350.5no routeO2 sensor signal, bank 2 pre-cat—
W70OEM-X60002-16M170-A-440.5no routeO2 sensor signal, bank 1 post-cat—
W71OEM-X60003-24M170-A-280.5no routeEngine coolant temperature (ECT)—
W72OEM-X60003-22M170-A-380.5no routeIntake air temperature (IAT)—
W73OEM-X60003-27M170-A-300.5no routeEngine oil temperature—

Bill of materials

CategoryPart numberManufacturerDescriptionQtyUnit
connectorBMW-E46-MS43-CONNBMWE46 DME (MS43) harness connector1.000ea

ECU setup sheet

RoleEngine refEngine signalSensorECU pointECU functionECU classSetup flag
No configured channels.

Findings

Open (12)

SeverityCodeSubjectMessage
warnDBW_MOTOR_CURRENTM170-A-8Cannot confirm M170 can drive the throttle motor: M170-A-8 "Half Bridge Output 2" is rated 12.0 A, but the motor current at OEM-X60003-44 is unknown. Add the motor's peak current from a source, or measure the motor resistance: peak ≈ 14 V ÷ R (Hondata measured 4.9 A for a Civic Si body, 10.4 A for a ZDX body; holding current is about 1 A).
warnDBW_MOTOR_CURRENTM170-A-9Cannot confirm M170 can drive the throttle motor: M170-A-9 "Half Bridge Output 1" is rated 12.0 A, but the motor current at OEM-X60003-43 is unknown. Add the motor's peak current from a source, or measure the motor resistance: peak ≈ 14 V ÷ R (Hondata measured 4.9 A for a Civic Si body, 10.4 A for a ZDX body; holding current is about 1 A).
warnNET_FAMILYOEM-X60002-1 ↔ M170-A-58OEM-X60002-1 "O2 sensor heater, bank 1 pre-cat" [low_side_out] is wired to M170-A-58 "Half Bridge Output 5" [hbridge_out]. A half-bridge can act as a low-side switch only if configured that way.
warnNET_FAMILYOEM-X60002-13 ↔ M170-A-64OEM-X60002-13 "O2 sensor heater, bank 2 pre-cat" [low_side_out] is wired to M170-A-64 "Half Bridge Output 6" [hbridge_out]. A half-bridge can act as a low-side switch only if configured that way.
warnNET_FAMILYOEM-X60003-2 ↔ M170-A-56OEM-X60003-2 "Exhaust camshaft position" [trigger_in] is wired to M170-A-56 "Universal Digital Input 2" [digital_in]. Hall-type cam/speed signals can use a digital input if it handles the frequency; VR signals cannot.
warnNET_FAMILYOEM-X60003-5 ↔ M170-A-46OEM-X60003-5 "Intake camshaft position" [trigger_in] is wired to M170-A-46 "Universal Digital Input 3" [digital_in]. Hall-type cam/speed signals can use a digital input if it handles the frequency; VR signals cannot.
warnNET_FAMILYOEM-X60003-8 ↔ M170-A-49OEM-X60003-8 "Crankshaft position" [trigger_in] is wired to M170-A-49 "Universal Digital Input 1" [digital_in]. Hall-type cam/speed signals can use a digital input if it handles the frequency; VR signals cannot.
infoNET_FAMILYOEM-X60001-1 ↔ M170-A-24OEM-X60001-1 "Injector/unloader relay control (terminal 15)" [low_side_out] is wired to M170-A-24 "Peak Hold Injector 5" [injector_out]. Injector drivers can usually run general low-side loads; check current and PWM frequency.
infoNET_FAMILYOEM-X60002-23 ↔ M170-A-42OEM-X60002-23 "Main relay control" [low_side_out] is wired to M170-A-42 "Peak Hold Injector 6" [injector_out]. Injector drivers can usually run general low-side loads; check current and PWM frequency.
infoNET_FAMILYOEM-X60003-40 ↔ M170-A-62OEM-X60003-40 "VANOS intake solenoid" [low_side_out] is wired to M170-A-62 "Peak Hold Injector 8" [injector_out]. Injector drivers can usually run general low-side loads; check current and PWM frequency.
infoNET_FAMILYOEM-X60004-10 ↔ M170-A-57OEM-X60004-10 "Fuel pump relay control" [low_side_out] is wired to M170-A-57 "Peak Hold Injector 7" [injector_out]. Injector drivers can usually run general low-side loads; check current and PWM frequency.
infoUNMAPPEDOEM10 optional OEM pins are not mapped: OEM-X60002-18 O2 sensor signal, bank 2 post-cat; OEM-X60002-19 O2 sensor heater, bank 2 post-cat; OEM-X60002-7 O2 sensor heater, bank 1 post-cat; OEM-X60003-31 Knock sensor, cylinders 4-6 (A); OEM-X60003-32 Knock sensor, cylinders 4-6 (B); OEM-X60003-41 VANOS exhaust solenoid; OEM-X60003-42 Evap purge valve; OEM-X60003-45 Map-controlled thermostat; OEM-X60003-48 Knock sensor shield; OEM-X60003-49 DISA intake flap

Accepted (0)

CodeSubjectReasonBy

Notes

Fit check: unconfirmed. Confirm these before building: - Needs CAN (E46 K-bus/CAN); not documented for this ECU - This car has EWS 3.3 (rolling code) immobilizer; needs a delete/bypass Auto-mapped by auto_map() from the library pin data on 2026-10-06. Review every wire against both manuals before building. Not wired: - OEM-X60003 31: Knock sensor, cylinders 4-6 (A): no free knock input on MoTeC M170 - OEM-X60003 32: Knock sensor, cylinders 4-6 (B): no free knock input on MoTeC M170 - OEM-X60003 48: Knock sensor shield: no shield pin on MoTeC M170 - OEM-X60002 19: O2 sensor heater, bank 2 post-cat: no free heater_low_side/low_side/ls_hs/hbridge on MoTeC M170 - OEM-X60002 7: O2 sensor heater, bank 1 post-cat: no free heater_low_side/low_side/ls_hs/hbridge on MoTeC M170 - OEM-X60003 41: VANOS exhaust solenoid: no free low_side/ls_hs/injector/hbridge on MoTeC M170 - OEM-X60003 42: Evap purge valve: no free low_side/ls_hs/injector/hbridge on MoTeC M170 - OEM-X60003 45: Map-controlled thermostat: no free low_side/ls_hs/injector/hbridge on MoTeC M170 - OEM-X60003 49: DISA intake flap: no free low_side/ls_hs/injector/hbridge on MoTeC M170 - OEM-X60002 18: O2 sensor signal, bank 2 post-cat: no free o2_narrowband/analog_0_5 on MoTeC M170

Sources

ReliabilityKindTitleURLArchiveCapturedSHA-256
4vendor_docMoTeC: M1 ECU Hardware manual (7 Nov 2013) — M130/M150/M170/M190 pinout tableshttps://web.archive.org/web/2023id_/https://www.motec.com.au/hessian/uploads/M1_ECU_Hardware_c2517380e4.pdf—2026-10-0503dc5975f739
2community_copyms4x.net: Siemens MS43 Pinouthttps://www.ms4x.net/index.php?title=Siemens_MS43_Pinout———
2community_copyrusefi wiki: 2002 BMW 325 / 2004 BMW 330Ci E46 DME pinout (M54/MS43)https://github.com/rusefi/rusefi/wiki/2002-BMW-325-and-2004-BMW-330Ci-E46-DME-pinout———