|
Megasquirt-3 MS3 DIY board assembly manual |
Introduction -
Build choices -
Version 2.2 -
Version 3.0 -
Version 3.57
Introduction
This manual page is primarily intended to help you through the DIY soldering together of the V3.0 mainboard. If you bought a pre-assembled Megasquirt, then this should all be covered. This may also be of use if you are changing the installation of a Megasquirt and need to alter the tach input.
Choices
Before starting assembly it is important to make some decisions regarding the build. While these can be altered later, it makes life easier if you are able to get it right first time and saves desoldering parts you already added.
MS3X or no MS3X ?
With MS3X
The MS3X card provides cam input, 8 logic spark outputs, 8 outputs for high impedance injectors, 6 mid current PWM outputs, 3 analogue inputs and 4 switch inputs.
When using the MS3X you will typically not be installing additional spark drivers on the mainboard (using logic COPs or an external spark box) and you do not need to make modifications for PWM idle.
The mainboard injector channels are spare and could even be omitted if you won't use them. They can be used for staging, dual fuel or high-current outputs like nitrous solenoids.
Typically though, it is worth installing all major components from the kit for completeness.
Without MS3X
In this case, you do need to consider the mainboard customisation. You might need to add spark drivers.
PWM idle - If you are running PWM idle then you will need to add the additional drive transistor.
Low-z injectors - If you are running low-z injectors then installing the current limiting sense resistors R37 and R38 is strongly recommended. If you are running hi-z injectors, then you could choose to omit these resistors and install a link jumper instead to free up two spaces on the heatsink, but generally just install them.
Cam input - if you need a cam input you will likely have to add a DIY circuit for one.
Mainboard version 2.2
The v2.2 is now technically obsolete, but is still supplied due to user demand.
It was designed for fuel-only control triggering from coil-negative, which it does fine.
However, it does not include support for VR (magnetic) type crank sensors which are now widely used for fuel and ignition control.
But more importantly, there are no provisions to physically mount the MS3 card and if you were to drill the PCB you would break through some traces.
Thus, it is not recommended for MS3 installs and will not be covered.
Mainboard version 3.0
The v3.0 is the current DIY assembly mainboard.
Please note: You can simply fit all of the components if you wish. The explanation below is to save you fitting more than is needed, or having to remove components you've already soldered in because they need swapping for another value, need to be removed or simply aren't used.
1) It is assumed you can already solder, if not then there are lots of good articles that explain how to do that on the internet already, so we won't cover that here.
If you are inexperienced at soldering then assembling the Megasquirt simulator (stim) or another electronics kit first is strongly advised. Some components on the board are quite fiddly and one small solder-bridge is enough to cause big problems.
For self assembly it is expected that you will have bought a kit from one of the recommended suppliers. The description below assumes all of the same valued components are in bags (e.g. R39 and R40 are the same value, so would be in one bag, C16 and C17 are the same values, so would be in another bag, etc) as they would be from a MegaSquirt kit supplier.
(While it is possible to buy all the parts individually, for a single Megasquirt
build this is likely to be extremely time consuming and not worth the effort - just buy a complete kit, really.)
2) Clear space on a work bench with good lighting. Get your tools together - soldering iron, solder, stand, wire snippers etc.
3) Start the build by soldering in the 2 connectors (37 pinned and 9 pinned items)
4) Next get all the bags of resistors together, keeping them in the bags.
(R1, etc)
Find R12, R37, R38, R43, R39 and R57. Put them out of the
way for the moment as you dont need them yet. R57 is never needed and should not actually be part of the kit.
5) Now solder all of the rest of the ordinary resistors in place - soldering from the top. Note: There is no polarity for resistors, so they can fit in either way round.
6) Now solder in the two variable resistors R52 and R56 ensure the adjusting screw matches the legend on the silkscreen. Even though these look identical, they are different values so do not mix them up. Solder from below.
7) Next get all the bags of diodes together, keeping them in the bags. (D1, etc) Note, ALL of the diodes have a strip on them that MUST go the same side as the strip marked on the board!
8) Remove D1 and D2 from the bags and put them to one side. Keep both these diodes as you may need them (FIdle output mods). Note, D1 may need installing if your using a coil -ve triggering setup.
9) Find D8 and remove it from the bag. (Keep this to one side as you may need it later, it's a 22V Zener)
10) -
11) Next you can fit all the rest of the diodes.
![]() |
![]() |
12) Next get all the bags of capacitors together, keeping them in the bags
(C1, etc).
If youre using the coil ve
as the trigger input go to step 15 (This is rare now.) Note that you CANNOT trigger from coil negative if you are trying to run ignition or sequential fuel - you need a trigger-wheel arrangement.
13) As long as youre NOT using the coil ve as the trigger input (Fuel only) find C30 and instead install it in H1/Boot (This adds smoothing to the battery voltage measurement and reduces the chance of noise getting injected into the CPU from the 12V line.)
14) Find C22 and C14, C16 and C17. Solder these in. Note, these are polarised, ensure the lead with the + next to it on the component goes into the square pad on the board, this is also labelled with a + on the board.
15) Now solder all the rest of the capacitors in. Solder from above.
![]() |
![]() |
15B) Solder in the two polyfuses F1 and F2. Solder in the two inductors L1 and L2, leave a little gap underneath. Solder in MOV1 (looks like a big round capacitor.) (Not shown installed in this photo.)
16) Now find the bag with all the chips in it, U6, U3, U7, U4 and the 40 pin socket for U1. Solder these
in place, be careful to get them the correct way round! Also, be sure not to mix up U4 (IXDI404) and U7 (MC34072)
Check that U7 is not an LM2904 - these do not work well.
Note, the notch in the component must
line up with the notch shown on the board. For the chips it usually works well to solder one leg in from above (to hold the part in place) then turn the board over and solder in all legs from below for a better joint and less heat into the chip.
17) Find Q16, (Ignition Transistor), D14, D15 and D16 (LEDs) Q4 and Q20 (small transistors) and MS3 CPU card. Put these to one side but dont lose them!!
18) Now place the metal strip (heatsink) in place and start fitting the main
power transistors, remembering Q9 and Q12 have a piece of mica insulation under
them to stop them touching the heatsink!
Note, you can put a screw through R36 and R37s
hole to hold the heatsink in place whilst you put the transistors in. All transistors should be fitted with a smear of thermal grease.
| Without mica | ![]() |
| With mica | ![]() |
19) Find Y1 (crystal) this is very very small. This is not needed for MS3, but for completeness you can fit it so that the body of the crystal lays on the metal pad above the holes. You should glue this to the board or very carefully solder it so it doesn't move about.

20) You can now fit all the other components (polyfuses, MOV etc), except for those that you put
to one side! I fit the MAP sensor last, dont forget to bolt it in place
with the plastic screws then solder it in once it's secure. It mounts on the underside of the board. Note, if using
metal screws, dont tighten them up too much or the sensor case will
distort and read incorrectly. This is installed with the writing facing you, the 'round' side goes towards the board. One of the pins has a small notch out of it which goes in the hole with 'notch' next to it.
Note, if using the SPR1-4 connections you should install the jumper wires before the MAP sensor.
21) R37 and R38 are 'sense' resistors for the current limiting circuits on the injector drivers. Normally these should be installed.
(If, however, you prefer to do without the current limiting and want to make two spaces on the heatsink bar, then you can instead link out R37 and R38 by soldering a copper wire between the 2 holes in each. Ensure the link is flat to the board as you may need a component on the heat sink later on in the build. Remember that without these current sense resistors, there is no over-current protection on the injector circuits.)
22) R43 is intended to allow coil current to be measured if you are using the Q16 high current coil driver. Unless you have access to an oscilloscope and plan on performing this test you won't need it. Either install R43 or link it out.

23) Solder a wire between s12c and JS9, this
feeds the stepper motor driver on the MS3 CPU card. Even if you are
not going to use a stepper idle valve, it is needed to use those outputs for
other purposes and for the MS3X switch inputs. Do install it.
(Note that this link is for Megasquirt-2 and Megasquirt-3 only, not the older Megasquirt-1)
Testing Stage:
24) The board is now built to a basic level and is ready for a few tests:

|
a) Start by looking at ALL of the diodes and ensure they are the right way round. If you have any smoke then its likely youve put a diode in the wrong way round, this will mean finding it and fitting a new component. Once any component smokes it is no longer any use! |
25) LEDs. For most installs, you can proceed and install the LEDs. Only in situations where you are DIYing many spark outputs and want to fit an
additional connector should they be omitted.
Temporarily fit the case end-plate to the DB9 connector - this gives you the correct alignment for the LEDs.
Take each LED and find the shorter leg, this goes to the hole marked (-) Ensuring correction orientation, bend the legs so that the LED fits through the hole in the case and the legs go into the holes in the board. Apply a little solder from above, then turn over and fully solder.
26) Idle valves:
The MS3 card has support for a 4 wire stepper idle valve built-in, just requiring 5 jumpers on the mainboard.
When using the MS3X card in addition it is suggested that you install these jumper wires and use the standard 'FIDLE' components.
If using 2 wire PWM idle without the MS3X card, you will need to upgrade the 'FIDLE' circuit on the V3.0 board.
Note, the PWM Idle Valve circuit upgrade can also be used to drive other solenoids such as boost control.
|
i)Stepper Idle Valve:
If using a 4 wired idle valve (or using as two spare outputs) then solder wires from:
ii) PWM Idle Valve:
iii) No Idle Valve: |
27) Trigger input:
See the Ignition page for selecting and wiring your tach inputs.
28) Spark outputs:
See the Ignition page for selecting and wiring your spark outputs.
For a single high current spark output, install Q16 as follows
a) Install the BIP373 into Q16, ensuring you use a mica insulator and thermal grease between the transistor and heatsink
b) Run a jumper wire from the top of R26, install a 330R resistor in series. Use heatshrink over the resistor
c) Jumper the other side of the resistor to IGBTIN.
d) Jumper IGBTOUT to IGN
e) Ensure R43 or a jumper is fitted in place
f) The coil can be connected to pin 36 on the DB37 as shown in the MS3 external wiring diagram.
g) Ensure your spark settings are for LEDs, D14 and Inverted.
29) Next we need to check that everything is OK before we plug in the microprocessor.
Plug the board into your stim (or 12V supply as in step 24c) and power it up.
Ensure you have 0-5V on TSEL, if you get any
more than 5V you have a wiring issue with the trigger input side which would likely destroy the MS3 CPU card. As long
as you have 0-5V you can proceed to step 28.
30) Now your ready to test the board with the microprocessor in place. Fit the MS3 CPU card into socket U1.
Note that it is normal for some of the pins on the large square chip on the MS3 card to appear 'bridged'.
Installing bolts
![]() | Side view of completed assembly |
![]() | Lower view |
![]() | Top view |
31) MS3X and ribbon cables
If you are not using the MS3X, skip this step. However - ensure that nothing can touch or short the exposed pin headers. If in doubt fit a dummy ribbon cable plug.
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.
Fitting into case
When used with the MS3X, the mainboard, endplate and MS3X assembly needs to be slid into the case as one unit. If the MS3X is not used, the case lid may be fitted independently. For a first start attempt, it makes sense to leave off the case lid in case you need to make a re-adjustment to the VR pots.
To make it easier to install the end-plate screws, use a 2.5mm drill to open up the hole in the case body.
Next steps
Now continue working through the Quick Start Guide
Mainboard version 3.57
The v3.57 mainboard is a factory assembled surface-mount circuit board.
As supplied to the end-user it is be supplied complete. You need to confirm the tach input jumper and may need some customisation for spark outputs.
Jumpers to check
0) 12V feed to card: (required)
Ensure the following jumper wire is fitted:
a) JS9 to S12C
i) 4 wire Stepper Idle Valve or spare outputs: (optional)
Ensure the following jumper wires are fitted:
a) JS0 to IAC1A
b) JS1 to IAC1B
c) JS2 to IAC2A
d) JS3 to IAC2B
ii) CAN communications (optional)
To use CAN the following jumper wires are required:
a) JS6 to SPR1
b) JS8 to SPR2
iii) Tach input (Required)
See the Ignition page for selecting and wiring your tach inputs.
iv) Spark output (Optional)
See the Ignition page for selecting and wiring your spark outputs.
For a single high current spark output, install Q16 as follows
a) Install the BIP373 into Q16, ensuring you use a mica insulator and thermal grease between the transistor and heatsink
b) Run a jumper wire from U1 pin 7 (equivalent to the right of R26), install a 330R resistor in series. Use heatshrink over the resistor
c) Jumper the other side of the resistor to IGBTIN.
d) The coil can be connected to pin 36 on the DB37 as shown in the MS3 external wiring diagram.
e) Ensure your spark settings are for LEDs, D14 and Inverted.
Assembling the MS3 card, MS3X card and case - see steps 26 onwards for the V3.0 board above.
Next steps
Now continue working through the Quick Start Guide
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 James Murray, Ken Culver and Philip Ringwood.