MS-Extra ECU Build Manual

ECU Build for MS1-Extra
V3.0 PCB
Warning for
E-Bay buyers!!

Please see the Official Suppliers list before buying through E-Bay.
This is there for your protection.

Please Note:

All of these instructions / diagrams are to be used at your own risk, like most things there is more than one way to do the same thing, what we have tried to do is to offer a method that we have tested or that others have tested for us. No warranty expressed or implied.

Use at your own risk.
If you do have any suggestions or settings that work please let me know Philip.Ringwood(at)

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.
It is assumed you can already solder, if not then there are lots of good articals that explain how to do that on the internet already, so we won't cover that here.

1) Decide if you’re going to build your own ECU from a kit of parts or buy a pre-assembled ECU.
2) If you decided to build your own MS-Extra ECU then get a kit off 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.
There are a few decisions to be made when ordering, these effect how it’s built:

a) MS-Extra microprocessor:
b) Spark Output(s):
High powered spark driver (Directly firing the ignition coils)
Low powered spark drivers (External igniters, EDIS4,6,or 8 Module, etc)
c) Trigger Input:
VR sensor (used on most multi-teeth wheels)
Hall sensor, points, EDIS PIP, VAST, etc.
Coil -ve (Fuel only, rare now I think)
d) Idle Output:
PWM 2 or 3 wired device. You will need a TIP122 and a mica insulator for this.
No Idle Valve, some setups, like bike throttles, don’t have idle valves.
MS1 Microprocessor

3) Start the build by soldering in the 2 connectors (37pinned 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, you don’t need any of them, but R43 may come in handy later. Solder the holes on the board for R39 so you don't accidentally fit it. (The rest will be fine as you shouldn't find these in the parts to fit if you've put them to one side)
5) Now solder all of the rest of the resistors in place. Note: There is no polarity for resistors, so they can fit in either way round.

6) 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!
7) 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.
8) Now solder the 4 holes up on the main board for D1 and D2, so you don’t accidentally add them.
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) Now solder up the holes for D8 on the main board.
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 you’re using the coil –ve as the trigger input go to step 15 (This is rare now)
13) As long as you’re NOT using the coil –ve as the trigger input (Fuel only) find C30 and put it out of the way.
14) Solder the 2 holes up on the main board for C30 so you can’t fit a capacitor into the holes by accident.
15) 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.
16) Now solder all the rest of the capacitors in.

16B) 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.)














17) Now find the bag with all the chips in it, U6, U3, U7 and U4. Solder these in place, be careful to get them the correct way round! Also, be sure not to mix up U4 (IXDI404) and U7 (MC33072)
U7 could be one of two parts, the LM2904 works in 99% of cases though is being phased out and replaced with a substitute (MC33072) that has been shown to solve problems that a very small number of vehicles (e.g. LS1) may experience.
      Note, the notch in the component must line up with the notch shown on the board. All notches face the top of the board, U6 notch to the left.
18) Find Q16, (Ignition Transistor), D14, D15 and D16 (LEDs) Q4 and Q20 (small transistors) and U1 (black 40 pinned chip for MS1) put these to one side, don’t lose them!!
19) 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 R37’s hole to hold the heatsink in place whilst you put the transistors in.

Without micano mica
With micamica

20) Find Y1 (crystal) this is very very small. If you're building an MS1 then 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.

21) You can now fit all the other components, except for those that you put to one side! I fit the MAP sensor last, don’t forget to bolt it in place with the plastic screws then solder it in once it's secure. Note, if using metal screws, don’t 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.
22) 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.)

23) 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.

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.
b) Check that you fitted the mica insulators under Q9 and Q12 on the heatsink and that they look ok.
c) Now you can plug it into your Stim and measure the voltage on the 40 pin connector U1:
    Put the -ve probe of you're voltmeter on pin 32 of the 40pin connector (U1) Note, this is WITHOUT the MS1 microprocessor in place!
 Put the +ve probe onto pin 20 (Top pin right side)
    Ensure you read 5V (+- 0.1V)
d) Keep the +ve probe on pin 20 and move the -ve probe to pin 19 and pin 2, ensure you have 5V on the meter for both measurments. If its OK goto stage 25.
e) If you don't get 5V then put the -ve probe on the 0V on the proto area and put the +ve probe onto the left pin of U5 (top left hand side on heatsink) check the voltage     on the meter, it should be 12V (9V if using a battery) if this isn't there then you have a stim/battery problem as the ECU isn't getting any power. It could also be a diode     in the wrong way round, so check D10, D11, D12 and D13!
f) If they are all OK then check the mica insulation on Q9 and Q12, with an ohmmeter (mulitmeter) put one probe on the metal heatsink and another on the metal tab of     Q9 and Q12, you should read 300+ Ohms. If you read less then you have a short, remove the insulator and fix the issue with a new one.

If you have any smoke then its likely you’ve 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)(MS1 jump to Step 26)
26) Idle valves:



ii) PWM Idle Valve: 2, 3 wired devices need a TIP122 and mica insulation.
a) Cut the legs of the TIP122 so they are half the length they were as new.
b) Fit a piece of mica insulation under it and using plastic screws bolt it to the heatsink in a spare position, or bolt onto the case.
c) Solder a wire from the centre pin of Q4 to the pin 1 of the TIP122.
d) Solder a wire from the right of R39 to the pin 3 of the TIP122
(Some installs might connect pin 3 to the bottom of R43, that's fine too.)
e) Ensure D8 is not fitted or remove it if it is.
f) Get an IN4001 (you should have a spare from D2) and install the non banded end into the right hole of D8 and the banded end to S12.
g) Solder a wire from the non-banded side of the 1N4001 diode to pin 2 of the TIP122.

TIP122 idle

iii) No Idle Valve:
a) Solder components Q4, Q20 and R39 in place. Note, this gives you a programmable output that can drive a relay e.g. cooling fan on FIdle (Pin 30 of the db37)


26) Trigger input: Remember you have already decided between VR, Hall or coil –ve. Note, Hall input covers all inputs like VAST, EDIS PIP, GM HEI, etc.
      See the specific manual for you’re engine's input to find out if it’s 5V or 12V. If in doubt measure the voltage with the engine stopped and ignition on.


VR Sensors Only (as fitted to most multi-toothed cranks, 36-1, 60-2, etc):
a) Solder a link between VRIN and TACHSELECT
b) For an MS1 solder a wire between VrOUTINV and TSEL
c) N/A
d) With a small screwdriver, turn the pot’s, R52 and R56, anticlockwise until they click (this sets them up for most VR sensors).

Hall sensors Only (EDIS, VAST, luminition, etc):
b) Solder a wire between TACHSELECT and XG1
c) For 5V inputs fit a 470R resistor into the position of R12
    For 12V inputs fit a 1K resistor into the position of R12
d) For 5V inputs solder a wire between the top hole of C30 and 5V on the proto area.
    For 12V inputs, solder a wire between the top hole of C30 and s12c pad on the main board.

Coil –ve Only (Firing trigger off –ve side of coil, Fuel Only) This is rare now!
a) Fit a 36V Zener Diode in reverse into position D2, remember that D2 wasn’t fitted earlier in the build. Note, the Zener Diode must be fitted backwards, so the strip on the diode is the opposite end to the stripe on the main board! (This component is part of the kit from good suppliers)
b) Ensure C30 is fitted. (This is needed for noise elimination)
c) Ensure D1 is fitted.
d) Ensure R12 is fitted (390R 1/2W)
e) Solder a jumper from XG1 to XG2. (In exceptionally noisy situations it might be required to remove that jumper and instead runs XG1 out through a spare connection on the DB37 and through the loom direct to the engine.)

27) Next we need to check that everything is OK before we plug in the microprocessor. Plug the board into your stim 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. As long as you have 0-5V you can proceed to step 28.
28) Now your ready to test the board with the microprocessor in place. Fit U1 (black 40 pinned microprocessor) into the 40 pin connector.
      Plug the ECU into your stim and turn the power on.
      Feel the top row of power transistors, if they get hot at all turn the power off and check for faults.
      If the microprocessor gets hot then turn it off. Slightly warm is OK, if any part is too hot to touch then there is a fault!
29) Next you need to figure out your ignition driver(s) See the MS1-Extra Ignition Manuals for information specifically for your setup.
30) Once the spark drivers are sorted, your ready to load the code into your MS-Extra ECU.

Component Pinouts

Pull up circuit diagram

List of component part numbers used in the ignition section:

DigiKey part numbers:
Farnell part numbers

1N4001 = 1N4001/4GICT-ND
1K resistor = 1.0KQBK-ND
470R resistor = 470QBK-ND

1N4001 = 352-5326
1K resistor = 509-164
470R resistor = 543-305

Please note: Above part numbers will need checking, some components will come with a minimum order in multiples of 5 and 10.

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.