How to MegaSquirt Your V6 Powered Ford Probe GT or Mazda MX-6/MX-3

Using the stock distributor, wasted spark, or coil on plug

MegaSquirt your Ford Probe GT

Looking for the easiest way to do this? We now have a MSPNP option, currently available for 1993-1995 models. This ECU comes fully assembled and ready to plug into the stock wiring. See this link for how to install a MSPNP in these cars. To buy an MSPNP for a ’93-’95 Probe or MX6, click here.

Application(s): This article covers the 1993-1997 Ford Probe GT, Mazda MX-6, and Mazda 626 equipped with the KL-DE, KL-03, or KL-ZE engines (2.5 liter V6), with a manual tranmsission, as well as the ’92-94 MX-3 with the 1.8 V6 or one of the above 2.5 V6s swapped in. See notes about automatic transmissions under “Other Things the ECU Controls.” The first generation Probe LX used a 3.0 pushrod V6 with electronics very similar to the 5.0 Mustang, and can be MegaSquirted using the same mods as in our Mustang article.

Level of control:  Full Standalone EMS– Fuel and Ignition Control

There have been several ways to install MegaSquirt on these engines, but we’ve worked out a method of using the stock crank trigger wheel and the one tooth wheel in the distributor to get the accuracy of a crank trigger, without having to file any teeth off the pulley or make any other changes to the engine wiring. This works on both OBD-I and OBD-II motors, so if you have a later car, there’s no need to swap in an early distributor.

ECU Modifications

On these engines, you can use any of the current MegaSquirt variants – I, II, or III. We recommend the V3.0 board if building one yourself, or the V3.57 if buying one ready made. The MS3 with MS3X will work out of the box; the MS2 and MS1 require customization. On an MS3, you just have to make sure the jumpers are set correctly. The MS3 can use the stock sensors for sequential injection and sequential coil-on-plug control.

Using the MS-III PCB V3.0 or V3.57 ECU

And the MS3X expansion board

  • Set up the ECU up to trigger from the VR Input. Jumper TachSelect to VRIN and TSEL to VROUT for a V3.0. For a V3.57, set the JP1 jumper on the main board to the 1-2 position, and set J1 to the 3-4 position.
  • Use the MS3X pull up jumper for the cam sensor pull up (JP7).
  • On a V3.0, the easiest way to get idle control is to use the PWM IAC driver on the MS3X board. If you wish to use the main board IAC driver, you’ll need to install a TIP120 mod kit – see the MK-PWMIAC catalog page for details.

That’s it!

If you are using the factory sensors, the MS2/Extra code will support them without any modifications under the hood.

Using the MS-II PCBv3 or V3.57 ECU

with MS2/Extra 2.0.1 or later code

  • Build the ECU up to trigger from the VR Input. Jumper TachSelect to VRIN and TSEL to VROUT.
  • We will need a 5 volt pull up on the ignition output.
    • For a V3.0 board, run a 270 ohm resistor from the 5 volt source in the proto area or the right side of R24 to the top (negative) lead of D14, and run a jumper wire from the negative lead of D14 to IGN.
    • For a V3.57 board, run a jumper from PAD1 to the center hole of the Q16 slot, remove Q16 if fitted, and run a 330 ohm resistor from PAD4 to PAD1.
  • We’ll also need a second trigger input. Solder a 1K resistor onto a length of wire, and cover the resistor with heat shrink tubing. Connect this resistor-on-a-wire combination from JS10 to SPR1 (for a V3.0 board) or PAD7 (for a V3.57 board).
  • Solder a 470 ohm resistor onto a length of wire and cover with heat shrink tubing. Run this resistor-on-a-wire from the 5 volt terminal in the proto area to the same input pin (SPR1 or PAD7) used in the previous step.
  • Connect a 0.1 uF capacitor from JS10 to SG or the proto area ground.

That’s it!

Using the MS-I PCBv3 with MSnS-E firmware

  • Build the ECU up to trigger from the VR Input. Jumper TachSelect to VRIN and TSEL to VROUTINV.
  • We will need a 5 volt pull up on the ignition output.
    • For a V3.0 board, run a 270 ohm resistor from the 5 volt source in the proto area or the right side of R24 to the top (negative) lead of D14, and run a jumper wire from the negative lead of D14 to IGN.
    • For a V3.57 board, run a jumper from PAD1 to the center hole of the Q16 slot, remove Q16 if fitted, and run a 330 ohm resistor from PAD4 to PAD1.
  • We’ll also need a second trigger input. Solder a 1K resistor onto a length of wire, and cover the resistor with heat shrink tubing. Connect this resistor-on-a-wire combination from JS8 to IAC1A.
  • Solder a 470 ohm resistor onto a length of wire and cover with heat shrink tubing. Run this resistor-on-a-wire from the 5 volt terminal in the proto area to IAC1A.
  • Connect a 0.1 uF capacitor from JS8 to SG or the proto area ground.

That’s it!

Wiring

Here are the wires you’ll need to grab for ignition control and where they connect to the MegaSquirt. The crankshaft position sensor is on the front of the block, connected near the temperature sensor. The camshaft position sensor is in the distributor, as is the ignition module. The distributor wiring colors are slightly different depending on the year and model.

Probe wire colors (all years):

FunctionColorMS1  connectionMS2 V3.0 connectionMS2 V3.57 connectionMS3X connection
Crankshaft position signalGreenPin 24 (IGN center wire)Pin 24 (IGN center wire)Pin 24 (IGN center wire)Main board Pin 24 (IGN center wire)
Crankshaft position returnBlueGround (IGN shield)Ground (IGN shield)Ground (IGN shield)Ground (IGN shield)
Camshaft position sensorBlue / PinkPin 25Pin 3DB15 pin 7MS3X pin 32 (cam input)
Ignition moduleBlue / OrangePin 36Pin 36Pin 36MS3X pin 14 (Spark A)

MX-6 1993-1995 wire colors:

FunctionColorMS1  connectionMS2 V3.0 connectionMS2 V3.57 connectionMS3X connection
Crankshaft position signalGreenPin 24 (IGN center wire)Pin 24 (IGN center wire)Pin 24 (IGN center wire)Main board Pin 24 (IGN center wire)
Crankshaft position returnBlueGround (IGN shield)Ground (IGN shield)Ground (IGN shield)Ground (IGN shield)
Camshaft position sensorPinkPin 25Pin 3DB15 pin 7MS3X pin 32 (cam input)
Ignition moduleYellow / BlackPin 36Pin 36Pin 36MS3X pin 14 (Spark A)

MX-6 1996-1997 wire colors:

FunctionColorMS1  connectionMS2 V3.0 connectionMS2 V3.57 connectionMS3X connection
Crankshaft position signalGreenPin 24 (IGN center wire)Pin 24 (IGN center wire)Pin 24 (IGN center wire)Main board Pin 24 (IGN center wire)
Crankshaft position returnBlueGround (IGN shield)Ground (IGN shield)Ground (IGN shield)Ground (IGN shield)
Camshaft position sensorBlue / OrangePin 25Pin 3DB15 pin 7MS3X pin 32 (cam input)
Ignition moduleYellow / BlackPin 36Pin 36Pin 36MS3X pin 14 (Spark A)

MX-3 1992-1994 wire colors:

FunctionColorMS1  connectionMS2 V3.0 connectionMS2 V3.57 connectionMS3X connection
Crankshaft position signalBlue / GreenPin 24 (IGN center wire)Pin 24 (IGN center wire)Pin 24 (IGN center wire)Main board Pin 24 (IGN center wire)
Crankshaft position returnBlue / YellowGround (IGN shield)Ground (IGN shield)Ground (IGN shield)Ground (IGN shield)
Camshaft position sensorViolet / WhitePin 25Pin 3DB15 pin 7MS3X pin 32 (cam input)
Ignition moduleOrangePin 36Pin 36Pin 36MS3X pin 14 (Spark A)

Be careful not to wire the crankshaft position sensor backwards; this can result in a noisy RPM signal and unsteady timing.

Idle Air Control

These engines use a pulse width modulated (PWM) idle air control motor. A V3.57 board (or MS3X) can control this directly with no additional mods. With a V3.0 board, you will need to add our PWM idle control mod kit to control this valve.

Other Things the ECU Controls

The stock ECU controls a couple other devices in these cars besides the injectors, ignition, and IAC valve. Here’s what to do about the ones you will need to control.

Fuel pump: This is a standard output on the Megasquirt. Wire the Megasquirt main board pin 37 to the fuel pump relay wire that went to the stock ECU.

Air conditioning: While the stock ECU controls the air conditioner, you don’t need a computer to make this work. Wiring the A/C request wire running to the ECU to the A/C compressor relay should make this work, although we have not tested this one for ourselves. The MS3X can control A/C using one of its on/off inputs and a medium current output.

VRIS: The Variable Resonance Induction System uses two separate solenoids to operate a set of butterflies in the intake manifold to change the intake characteristics. You can leave both open, but it is possible to control them with the MegaSquirt. The factory settings have VRIS valve 1 open at 3250 RPM and valve 2 open at 4250 RPM. You can drive the solenoids from the MegaSquirt using our relay control mod kits, or the MS3X medium current outputs.

Cooling fans: There are two relays for the cooling fans in these cars, one of which turns on the fan in low speed mode and the other turns on the fan in high speed mode. You can either maintain the two stage mode by using one output to turn the low speed fan on and a second output to turn on the high speed fan at a higher temperature, or simply run the fan off at low temperatures and at high speed when the engine gets hot. Use our relay control mod kits for fan control, or the MS3X medium current outputs.

For more information about the relay outputs, see our Common MegaSquirt Modifications page. Note that the MS1 has only four such outputs, and using them all will keep you from being able to also run boost control. With the MS2, there are enough general purpose outputs to run all four VRIS and fan outputs and have one left over.

Automatic transmission: On OBD-II cars, this is controlled by the ECU directly, so if you have a ’96 or later car with an automatic, you’ll need to do a parallel installation. (See this link for more information on how to do this.) On ’95 and earlier cars, the transmission ahs a separate controller and it looks like this can work without the stock ECU, although we have not confirmed that at this point.

Gauges: These are not controlled by the ECU, so if you’re using the stock distributor you have nothing to worry about here. The MS3X can use its tach output

MegaTune Configuration for MS3 or MS2/Extra

Set the following under Tach Input / Ignition Settings.

  • Spark mode: Toothed Wheel
  • Trigger Angle / Offset: 0
  • Ignition Input Capture: Rising Edge
  • Spark Output: Going Low / Normal for MS2, Going High / Inverted for MS3 It is critical to get the Spark Output Inverted setting correct, as setting this wrong can result in damage to the ignition module or coil.
  • Number of coils: Single Coil
  • Spark A output pin: D14 (MS2) or MS3X outputs (MS3)

Dwell settings will depend on the coil used; 2.5 to 3.0 msec is a safe starting point.  A typical rule of thumb is to back off the dwell until you can just barely detect a misfire under lean cruising conditions, then add 0.2 ms of dwell time.

Use these trigger wheel settings.

  • Trigger wheel arrangement: Dual Wheel
  • Trigger wheel teeth: 6
  • Missing teeth: 0
  • Tooth #1 Angle: 60 (this may need to be adjusted slightly due to production tolerances)
  • Wheel speed: Crank Wheel
  • Second trigger active on: Rising and Falling (MS2) or Rising (MS3)
  • and every rotation of: Crank (MS2 only)

If you use someone else’s .msq file we do recommend you check the firmware version the .msq file was built on as you cannot always use a file built on one firmware version with an ECU running a different version or a different ignition setup– it’s best to use the .msq files with the same version of the firmware that the file was built on.  Alternately you can manually copy the settings over from the borrowed file.

 

MegaTune Configuration for MS1/Extra

Under Codebase and Output Functions, set Wheel Decoder to Generic Wheel, and all other code types to Off. Set LED17 (D14) Function to Spark Output A. Do not enable the other spark outputs. Use the following wheel decoder settings:

  • Wheel decoder base teeth: 6
  • 2nd trigger enable: 2nd trigger
  • 2nd trigger active edge: rising and falling
  • 2nd trigger and missing teeth: no missing
  • Trig Pos A: 1
  • Trig Pos B: 3
  • Trig Pos C: 5
  • Dual dizzy mode: Normal
  • Wheel decoder routine: 024s9 style
  • Set all unused positions to zero.

On the ‘Spark’ menu choose ‘Spark Settings’ and set ‘Spark Output Inverted’ to NO, and set the trigger angle to 60.  It is critical to get the Spark Output Inverted setting correct, as setting this wrong can result in damage to the ignition module or coil. Dwell settings will depend on the coil used; 2.5 to 3.0 msec is a safe starting point.  A typical rule of thumb is to back off the dwell until you can just barely detect a misfire under lean cruising conditions, then add 0.2 ms of dwell time.

If you use someone else’s .msq file we do recommend you check the firmware version the .msq file was built on as you cannot always use a file built on one firmware version with an ECU running a different version or a different ignition setup– it’s best to use the .msq files with the same version of the firmware that the file was built on.  Alternately you can manually copy the settings over from the borrowed file.

Going distributorless?

Yes, you can use these input mods for a crank triggered distributorless ignition, with different hardware mods. Software changes are minimal: Just enable spark outputs B and C with MS1/Extra, or set Number of Coils to Wasted Spark in MS2/Extra. You will keep the same ignition input mods, but the output mods will be different, and the stock tach will not work without mods as it is triggered from the ignition module. The mods needed will depend on the coils you’re using. For example, these mods will work if using BIP373s to drive a coil without built in ignitors.

The MS3X has no need of mods for distributorless ignition. Instead, you can wire the MS3X spark outputs A through C (wasted spark) or A through F (coil on plug) to an ignition module or coils with built in ignitors, like LS1 coils or our IGN-1A race coils.

Hardware mods for distributorless ignition (MS1 or MS2):

  • Jumper IGBTOUT to IGN to send to IGBT ignition coil driver signal out of pin 36 on the DB37. (not needed on a V3.57)
  • Cut out R57 if fitted (This won’t be there on my units, though.).

Now for constructing the outputs…

  • Get a 330 ohm 1/4w resistor and cut the leads down to about 1/2″ at each end. Maybe a bit less.
  • Tin each end of the resistor with a bit of solder.
  • Cut a 5″ piece of hookup wire (22ga is fine) and strip just a 1/8″ or so. Tin the stripped wire with solder.
  • Melt the tinned wire tip to one end of the tinned 330 ohm resistor tip and let it cool.

msnse_led17-d14_thru_vb921005

  • Heatshrink wrap this wire/resistor assembly.

msnse_led17-d14_thru_vb921007

  • Use this wire/resistor combo to jumper the ‘top’ (top as in when you facing the silkscreen side of the PCB, with the text so that you can read it normally) lead of R26 to IGBTIN on the opposite side of the PCB. (On a V3.57, this is kind of tricky. It’s easier to use pin 7 on the U1 socket instead.)

msnse_led17-d14_thru_vb921011

  • Now, you will be constructing two duplicates of this BIP373 circuit for spark outputs B and C. You can mount the additional BIP373s on a second heat sink stacked on top of the first, attached on top with long screws. Or you can mount the BIP373s to the case.
  • Each BIP373 will need a resistor-on-a-wire assembly, running to its left leg. You will get the BIP373 input signal from the following locations:
OutputInput Location (V3.0)Input Location (V3.57)
Spark ATop of R26U1 pin 7
Spark BTop of R29U1 pin 8
Spark CTop of R27U1 pin 9
  • The center leg of the BIP373 is its spark output. We have found that the IAC traces can carry enough current for normal use, so you can use one IAC trace for each spark output. You may need to add an extra connector with the V3.0 on 12 cylinder applications, or if you are running a stepper IAC.  You can use this pinout if you are not running a stepper IAC or using the stepper IAC outputs for fans / VRIS.
OutputBoard connectionDB37 pin
Spark AIGN36
Spark BIAC2B31
Spark CIAC2A29
  • Connect the right leg of each BIP373 to a ground, such as the proto area ground or SG pins. It’s best if you can find a separate ground for each BIP373.
  • Connect the negative terminals of the coil to the pins specified in the above pinout.

Enable dwell control and adjust as needed to match the coils you are using. Set the dwell at a very low value to start with (we’ve found Ford EDIS coils have especially short dwell times) and increase it slowly. Back it off if the BIP373s become hot to the touch.

 

Suggested parts

On these motors, you can use a MegaSquirt I or II, although the MegaSquirt-II has the edge. We recommend using a GM open element IAT sensor and removing the air flow meter.

ECU options:

Mod kits discussed in this article:

  • MK-BIP373 for wasted spark output – 2 required for a V3.0, 3 required for a V3.57 (not needed for using the stock distributor and ignition module)
  • MK-RelayCtrl for fans and VRIS – you may need up to 4 of these
  • MK-PWMIAC for idle speed control with a V3.0 board (not needed for a V3.57)

Other recommended parts

Feedback welcome

If you have any further information, contributions, or questions about this article, please contact us.