|
Megasquirt 3 - Hardware |
Main plug wiring -
MS3X plug wiring -
DB15 plug wiring -
Harness adapter/DIYBOB -
Idle valve wiring -
Switch inputs -
MS3 card headers -
MS3X setup and jumpers -
Pin usage table tech
All connector diagrams are viewed looking at back of loom plug when plugged into Megasquirt.
Lower 'V3 / Mainboard' connector

Downloadable PDF
Notes:
1. When using MS3 as sequential EFI it is normal to use the MS3X card in addition and the two injector bank outputs on the main connector are generally not used for the main injectors. They become spare outputs that could be used for other high-current outputs or for additional staged injectors.
2. The high current ignition output on pin 36 depends on how the ECU was built - check with your supplier. With wasted spark or coil-on-plug from the MS3X, this output would not normally be used.
3. Optional 12V flyback. If the main connector injector outputs are in use with low-z injectors, there is an optional modification inside the Megasquirt that makes that pin into a "12V flyback" and should be connected to a fused 12V supply. Check with your supplier.
4. 2 or 3 wire PWM idle valves wire up easily to the MS3X card.
5. All of the ground pins 1,2,7,8,9,10,11,12,13,14,15,16,17,18,19 are connected together within the Megasquirt. The above diagram shows certain pins used as dedicated sensor ground returns - this is good practice, but so long as the sensors are grounded AT the Megasquirt, the particular ground pin number does not matter (i.e. do not ground the sensors to the body or the battery or the engine.) Likewise the power grounds - these are shown at the right of the connector because this makes them electrically closer to the high power components within the Megasquirt, but all ground pins are connected together so alternates can be used. These power ground connections should go direct to the engine block (not the battery and certainly not the body.) Poor grounding by the installer usually results in installation problems.
Upper 'MS3X' connector

Downloadable PDF
Notes:
Wiring for the various input/output types is covered in more detail in those manual sections. Injectors are spark outputs must be wired corresponding to engine firing order. All of the power outputs are low-side ground switching (i.e. they provide a ground, not 12V)
Injector outputs
Spark outputs
Sequential fuel/spark wiring examples
PWM outputs
Spare port outputs
Analogue inputs
Switch inputs

Harness Adapter / DIYBOB
DIYautotune offer a harness adapter that can be used to more easily integrate the MS3 wiring looms to your existing loom. A range of adapters are available that plug into your stock loom connector. Soldering is required to join the MS3 loom pigtails to the adapter, but your stock loom is typically unchanged.
See the DIYautotune DIYBOB page
4 wire stepper idle
The pin numbers (e.g. #31) relate to pin numbers on the main/lower connector.
2 wire PWM idle
*Note the diode. The MS3X mid-current outputs are configured for low-frequency valves (e.g. boost or nitrous solenoids.) For high frequency valves such as idle valves or VVT solenoids it is necessary to connect a diode from signal to 12V in the loom. Alternatively a small jumper wire can be installed inside the case to make all outputs high-frequency capable. This is detailed in the build manual.
3 wire PWM idle
Switch inputs
Certain features allow or require a switch input. (e.g. launch, idle-up, nitrous, datalogging.) The MS3X allows direct connection of a momentary or toggle switch.
Note! Double check that the jumper from S12C to JS9 is installed on your mainboard. Without it the switch inputs will not work.
Also ensure that JP8 on the MS3X card is NOT installed.
MS3 card pin headers
The MS3 card itself has two pin headers. Primarily these are intended to connect to the MS3X card. All signals are 0-5V low-current (0.02A max) and are direct connections to the CPU. They MUST NOT be directly connected to anything off-board. A suitable conditioning or driver circuit is essential - otherwise permanent damage to the CPU will occur.
Do NOT apply 12V to any of these pins. Be exceptionally careful if bench testing the MS3 that no shorts occur. The chips on the MS3 card will be destroyed if 12V is applied.
![]() | ![]() |
![]() |
Depending on whether you purchased your Megasquirt3 as a package or not, you may need to setup the MS3X card. For turn-key installs this should come pre-set.
JP3 is jumper for a pullup on the "Tacho" output. This gives a 0-12V signal which is compatible with most recent aftermarket tachometers.
JP7 is a jumper for a pullup on the "Cam" input. This is typically required with hall or optical sensor inputs. It should not be used with VR sensor inputs.
When using hall or optical sensors inputs, the cam input adjustment potentiometers should be set as follows. Turn both pots (R11 and R32) full anti-clockwise - approx five turns. Then turn the top one (R11) two turns clockwise.
When using a VR (magnetic) sensor input, the cam input adjustment potentiometers should be set as follows. Turn both pots (R11 and R32) full anti-clockwise - approx five turns. This is usually the right setting.
JP8 is jumper for a pullup on the "Nitrous in" input. Normally the nitrous system expects a 12V input here and the jumper should be omitted. If re-using this input for a ground-swiching input then install the jumper.
R65,R66,R67 are optional 'bias' resistors on the analogue inputs EXT_MAP, EGO2, SPARE_ADC respectively. These would be typically used when connecting a resistive temperature sensor to one of the inputs. For standard calibration, use a 2.49K resistor with a GM style coolant or air temperature sensor.
H1,H2,H3,H4,H5,H6 are not presently used and should not be jumpered or otherwise connected.
See also the Build Manual
Note: You can only use each pin for one function at a time.
Although alternative functions are available, it is best to use the "typical" usage if possible.
MS2 mode is where the MS3 card is used to upgrade an existing MS2 install and all features are via the mainboard. These pins are the existing typical usage.
MS3X mode is where the MS3-extender card is used. Inputs and outputs are assigned to make best use of the card and require minimal, if any, customisation to the Megasquirt mainboard.
|
Pad |
CPU port |
|
Wiring loom pin# |
Max current from output |
Typical in MS2 mode |
Suggested MS3X mode |
Alternative functions
|
|||||
|
Main plug |
MS3X plug |
|||||||||||
|
JS0 |
J0+J6 |
IAC1A |
25 |
|
0.5A |
Stepper Idle (JS0 - JS3) † |
Stepper Idle (JS0 - JS3) † |
|
Tacho Output |
Nitrous stage 1 Relay |
Boost Control PWM Output |
Generic Output |
|
JS1 |
J0+J6 |
IAC1B |
27 |
|
0.5A |
Stepper Idle (JS0 - JS3) † |
Stepper Idle (JS0 - JS3) † |
... |
... |
... |
... |
|
|
JS2 |
J1+J6 |
IAC2A |
29 |
|
0.5A |
Stepper Idle (JS0 - JS3) † |
Stepper Idle (JS0 - JS3) † |
|
Tacho Output |
Nitrous stage 2 relay |
Boost Control PWM Output |
Generic Output |
|
JS3 |
J1+J6 |
IAC2B |
31 |
|
0.5A |
Stepper Idle (JS0 - JS3) † |
Stepper Idle (JS0 - JS3) † |
|
... |
... |
... |
... |
|
JS4 |
AD7 |
|
* |
|
- |
Realtime baro or Spark F |
Spare ADC |
Knock Input |
Launch Control Input |
Second O2 input |
NOS Input |
... |
|
JS5 |
AD6 |
|
* |
|
- |
Realtime baro or Spark E |
Spare ADC |
Knock Input |
Launch Control Input |
Second O2 input |
NOS Input |
... |
|
JS7 |
E0 |
|
* |
|
- |
Launch Control Input |
Spare logic input |
... |
... |
... |
... |
Switch VE and or Ignition map Tables |
|
JS10 |
T5 |
|
* |
|
- |
Secondary tach in (Cam) |
Spare i/o |
Spark A (pin 36) |
- |
Tacho Output |
NOS Input |
Launch Control Input |
|
|
T2 |
Cam in |
|
32 |
- |
- |
Secondary tach in (Cam) |
- |
- |
- |
- |
- |
|
JS11 |
J7 |
|
* |
|
@ |
Spark D |
Spare i/o |
Launch Control Input |
Tacho Output |
Generic Output |
Boost Control PWM Output |
... |
|
|
M3 |
D14 |
36 |
|
# |
Spark A |
As LED |
|
Tacho Output |
... |
... |
Generic Output |
|
|
M5 |
D15 |
* |
|
# |
Spark C |
As LED |
Datalog LED |
Tacho Output |
... |
... |
Generic Output |
|
|
M4 |
D16 |
* |
|
# |
Spark B |
As LED |
|
Tacho Output |
... |
... |
Generic Output |
|
|
P7 |
Fidle |
30 |
|
0.8A |
PWM Idle Valve |
Spare output |
Datalog LED |
|
Boost Control PWM Output |
... |
Generic Output |
|
TSEL |
T0 |
Tach |
24 |
|
- |
Primary tach in (Crank) |
Primary tach in (Crank) |
- |
- |
- |
- |
- |
|
|
T1+P0 |
Inj1 |
32+33 |
|
14A |
Injector bank1 |
Optional Injectors |
|
|
|
|
|
|
|
T3+P1 |
Inj2 |
34+35 |
|
14A |
Injector bank2 |
Optional Injectors |
|
|
|
|
|
|
|
A0 |
InjA |
|
19 |
5A |
n/a |
Injector A |
|
|
|
|
|
|
|
A1 |
InjB |
|
16 |
5A |
n/a |
Injector B |
|
|
|
|
|
|
|
A2 |
InjC |
|
13 |
5A |
n/a |
Injector C |
|
|
|
|
|
|
|
A3 |
InjD |
|
10 |
5A |
n/a |
Injector D |
|
|
|
|
|
|
|
A4 |
InjE |
|
7 |
5A |
n/a |
Injector E |
|
|
|
|
|
|
|
A5 |
InjF |
|
4 |
5A |
n/a |
Injector F |
|
|
|
|
|
|
|
A6 |
InjG |
|
1 |
5A |
n/a |
Injector G |
|
|
|
|
|
|
|
A7 |
InjH |
|
20 |
5A |
n/a |
Injector H |
|
|
|
|
|
|
|
B0 |
CoilA |
|
14 |
0.04A |
n/a |
Spark A |
|
|
|
|
|
|
|
B1 |
CoilB |
|
33 |
0.04A |
n/a |
Spark B |
|
|
|
|
|
|
|
B2 |
CoilC |
|
15 |
0.04A |
n/a |
Spark C |
|
|
|
|
|
|
|
B3 |
CoilD |
|
34 |
0.04A |
n/a |
Spark D |
|
|
|
|
|
|
|
B4 |
CoilE |
|
35 |
0.04A |
n/a |
Spark E |
|
|
|
|
|
|
|
B5 |
CoilF |
|
36 |
0.04A |
n/a |
Spark F |
|
|
|
|
|
|
|
B6 |
CoilG |
|
18 |
0.04A |
n/a |
Spark G |
|
|
|
|
|
|
|
B7 |
CoilH |
|
37 |
0.04A |
n/a |
Spark H |
|
|
|
|
|
|
|
AN11 |
ADC11 |
|
23 |
- |
n/a |
Baro or external MAP |
|
|
|
|
|
|
|
AN12 |
ADC12 |
|
22 |
- |
n/a |
EGO2 |
|
|
|
|
|
|
|
AN13 |
ADC13 |
|
21 |
- |
n/a |
Spare ADC in |
|
|
|
|
|
|
|
E2 |
Flex |
|
5 |
- |
n/a |
Flex fuel in |
|
|
|
|
|
|
|
P4 |
Nitrous1 |
|
24 |
3A |
n/a |
Nitrous 1 |
|
|
|
|
|
|
|
P3 |
Boost |
|
6 |
3A |
n/a |
Boost |
|
|
|
|
|
|
|
P5 |
Nitrous2 |
|
25 |
3A |
n/a |
Nitrous 2 |
|
|
|
|
|
|
|
P6 |
VVT |
|
27 |
3A |
n/a |
VVT |
|
|
|
|
|
|
|
P2 |
Idle |
|
9 |
3A |
n/a |
PWM idle |
Datalog LED |
|
|
|
|
|
|
T6 |
PT6 |
|
30 |
- |
n/a |
Datalog in (active gnd) |
|
|
|
|
0-12V Logic input |
|
|
K0 |
PK0 |
|
26 |
3A |
n/a |
Tacho out |
|
|
|
|
Generic Output |
|
|
H6 |
PH6 |
|
28 |
- |
n/a |
Tableswitch (active gnd) |
|
|
|
|
|
|
|
H7 |
PH7 |
|
29 |
- |
n/a |
Nitrous in (active 12V) |
|
|
|
|
|
|
|
K2 |
Launch |
|
11 |
- |
n/a |
Launch in (active gnd) |
|
|
|
|
|
|
|
T4 |
PT4 |
|
31 |
0.02A |
n/a |
Logic in/out |
|
|
|
|
Generic Output |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
† All 4 (JS0-JS3) pads are used for the stepper motor if selected! Also the stepper pins work in pairs. There are only two output functions although they connect to four pins.
* External connection decided by board builder
# If used as spark output will usually have a high current driver on board e.g. 7A. Without that driver limit would be 0.8A
@ If used as spark output will usually have a high current driver on board e.g. 7A. Without that driver limit would be 0.02A
If you have a question, comment, or suggestion for this FAQ please post it on the forum.
No part of this manual may be reproduced or changed without written permission from the authors.