|
|
|
How to MegaSquirt your Ford Zetec
If you haven't already, please read the 'disclaimer' at the top of the
parent page here.
Updated 10/1/2009
Applications: This works for the 2.0 or 2.3 Zetec engine installed in many
Fords, including the Focus, Escort, Cougar, and Contour / Mondeo. This engine is
also a popular choice for kit cars, like the Piper Engineering car shown here.
We generally recommend MS2/Extra on these cars as it works very well with the
factory trigger wheel. This page also includes instructions for using other
MegaSquirt variants.
The mods in this article also apply to many other Ford four cylinder motors.
For example, the 1.9 CVH and 2.0 SPI engines found in '91 and later Escorts and
some Focuses also used a similar ignition system, along with many European
Fords. The '91-'95 Escorts had an external EDIS module, while '96 and later US
market cars all had the ignition control built into the ECU.

Most Zetecs use a coil pack with a simple wiring setup - the center terminal
gets 12 volt power, the side terminals each fire the two spark outputs on their
respective sides of the coil. Direct Coil Control Distributorless Ignition on a Megasquirt-II V3.0
or V3.57 Board
Using MS2/Extra firmware, version 2.0.0 or higher
Hardware mods required:
- Build the VR
conditioner circuit, as described in Step 51 of the MegaManual. All
our preassembled Megasquirts with the V3.0 or V3.57 board come with this
circuit installed.
- Jumper TachSelect
to VRIN. (V3.57: Set JP1 to the 1-2 position.)
- Jumper TSEL to
VROUT. (V3.57: Set J1 to the 3-4 position.)
- You may need to
adjust the VR trim pots, R52 and R56, when this is installed on a
running engine. A usual base setting is to turn them all the way
counterclockwise.
- 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.

- Heatshrink wrap
this wire/resistor assembly.

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

- Now, you will be constructing duplicates
of this BIP373 circuit for each coil output you need. You will be
using outputs A through D on a V8. 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:
| Output |
Input Location (V3.0) |
Input Location (V3.57) |
| Spark A |
Top of R26 |
U1 pin 7 |
| Spark B |
Top of R29 |
U1 pin 8 |
- 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, for up to 8 cylinders.
| Output |
Board connection |
DB37 pin |
| Spark A |
IGN |
36 |
| Spark B |
IAC2B |
31 |
Our assembled V3.57 MS2s are already built for
stepper IAC control, so this is the pinout they use.
| Output |
Board connection |
Output pin |
| Spark A |
IGN |
DB37 pin 36 |
| Spark B |
IAC2B |
DB15 pin 10 |
- 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.
External wiring:
- Connect the VR sensor to pin 24 and the
shielded ground wire.
- Connect the negative terminals of the coil
to the pins specified in the above pinout.
MegaTune settings required:
Under Tach Input / Ignition Settings:
- Set Spark Mode to "Toothed Wheel."
- Set the trigger angle / offset to 0.
- Set Ignition Input Capture to "Falling
Edge."
- Set Spark Output to "Going High
(Inverted)." Setting this wrong can
overheat the BIP373s or damage the coils.
- Set Number of Coils to "Wasted Spark."
- Set Spark A output pin to D14.
Under Trigger Wheel Settings:
Some settings are the same for all engines.
- Trigger Wheel Arrangement: Single wheel
with missing teeth
- Trigger Wheel Teeth: 36
- Missing Teeth: 1
- Wheel Speed: Crank Wheel
- Tooth #1 Angle: 80
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.
|
EDIS on a Megasquirt-I V2.2 Board
Using MSnS-E firmware
Hardware mods required:
- Remove D5, D8, R10, and the XG1-XG2
jumper.
- Jumper XG1 to the right hole of D5.
- Install a 1K resistor in place of D8.
- Run a jumper from the bottom hole of R10
and the banded side of the D9 diode.
- Use a 750 ohm to 1K resistor to connect
the right side of R23 to the negative side of D17.
- Run a wire from the negative side of D17
to X11 to bring the SAW output out on the DB37 pin 25.
External wiring:
- Connect the EDIS PIP signal to pin 24.
- Connect the EDIS SAW signal to pin 25.
MegaTune settings required:
Under Codebase and Output Functions:
- Set EDIS on, and all other code types off.
- Set LED17(D14) Function to Spark Output A.
- Turn off all other spark outputs.
Under Spark Settings:
- Set Trigger Angle and Trigger Angle
Ignition to 0.
- Set Cranking Timing to Trigger Return.
- Set Hold Ignition to 0.
- Set Spark Output Inverted to Yes.
- Do not select oddfire.
Under Dwell Settings:
- Specify Fixed Duty, 50% duty cycle.
The MSnS-E manual has a
detailed write-up about EDIS here. |
EDIS on a Megasquirt-I V3.0 Board
Using MSnS-E firmware
Hardware mods required:
- Remove C30.
- Run a jumper from the top hole of C30 to
S12C.
- If building the board from scratch, you do
not need to include D1 or D2, but they do not need to be removed.
- Replace R12 with a 1K resistor.
- Remove the XG1 to XG2 jumper, and jumper
XG1 to TachSelect.
- Jumper OPTOUT to TSEL.
- Connect a 750 ohm to 1K resistor from the
right side of R24 or the 5V hole in the proto area to the negative
lead of D14.
- Run a wire from the negative lead of D14
to the IGN jumper hole on the opposite side of the board to bring
the SAW output out to pin 36 of the DB37 connector.
External wiring:
- Connect the EDIS PIP signal to pin 24.
- Connect the EDIS SAW signal to pin 36.
MegaTune settings required:
Under Codebase and Output Functions:
- Set EDIS on, and all other code types off.
- Set LED17(D14) Function to Spark Output A.
- Turn off all other spark outputs.
Under Spark Settings:
- Set Trigger Angle and Trigger Angle
Addition to 0.
- Set Cranking Timing to Trigger Return.
- Set Hold Ignition to 0.
- Set Spark Output Inverted to Yes.
- Do not select oddfire.
Under Dwell Settings:
- Specify Fixed Duty, 50% duty cycle.
The MSnS-E manual has a
detailed write-up about EDIS here.
|
Direct Coil Control Distributorless Ignition on a Megasquirt-I V3.0 or V3.57 Board
Using MSnS-E firmware
Hardware mods required:
- Build the VR
conditioner circuit, as described in Step 51 of the MegaManual. All
our preassembled Megasquirts with the V3.0 or V3.57 board come with this
circuit installed.
- Jumper TachSelect
to VRIN. (V3.57: Set JP1 to the 1-2 position.)
- Jumper TSEL to
VROUT. (V3.57: Set J1 to the 3-4 position.)
- You may need to
adjust the VR trim pots, R52 and R56, when this is installed on a
running engine. A usual base setting is to turn them all the way
counterclockwise.
- Jumper IGBTOUT to
IGN to send to IGBT ignition coil driver signal out of pin 36 on the
DB37. (V3.0 only)
- 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.

- Heatshrink wrap
this wire/resistor assembly.

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

- Now, you will be constructing duplicates
of this BIP373 circuit for each coil output you need. On these
motors, you'll be using spark outputs A through D. 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:
| Output |
Input Location (V3.0) |
Input Location (V3.57) |
| Spark A |
Top of R26 |
U1 pin 7 |
| Spark B |
Top of R29 |
U1 pin 8 |
- 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.
This is our recommended pinout, which we use in our assembled ECUs.
| Output |
Board connection |
DB37 pin |
| Spark A |
IGN |
36 |
| Spark B |
IAC2B |
31 |
- 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.
External wiring:
- Connect the VR sensor to pin 24 and the
shielded ground wire.
- Connect the negative terminals of the coil
to the pins specified in the above pinout.
MegaTune settings required:
Under Codebase and Output Functions:
- Set Generic Wheel on, and all other code
types off.
- Set one spark output for every two
cylinders.
- Turn off all unused spark outputs.
Under Wheel Decoder Settings:
Some settings are the same for all engines.
- Wheel decoder base teeth: 36
- 2nd trigger enable: Off
- Missing Teeth: -1
- Dual dizzy mode: Normal
- Wheel decoder routine: 025 style
Use these wheel decoder settings.
| Trig pos A |
Trig return pos A |
Trig pos B |
Trig return pos B |
Trig pos C |
Trig return pos C |
Trig pos D |
Trig return pos D |
Trig pos E |
Trig return pos E |
Trig pos F |
Trig return pos F |
| 3 |
8 |
21 |
26 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
Under Spark Settings:
- Trigger Angle: 60
- Trigger Angle Ignition: 0
- Cranking Timing: Trigger Return.
- Set Spark Output Inverted:
Yes.
Setting this wrong will overheat the BIP373.
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.
|
EDIS on a Megasquirt-II V3.0 Board
Using standard MS-II Firmware
Hardware mods required:
If you're
assembling your MegaSquirt-II from a kit
(Part#
MS230-K):
- Build the ECU up to trigger from the
Hall/Optical Input.
- Jumper JS10 to IGN to bring the ignition
output directly to pin 36.
If you're
modifying a DIYAutoTune.com MS230-C MegaSquirt-II Assembled ECU:
No mods are required; our units are set up for
EDIS out of the box.
External wiring:
- Connect the EDIS PIP signal to pin 24.
- Connect the EDIS SAW signal to pin 36.
MegaTune settings required:
Under "Base Ignition Settings," make the
following settings.
- Trigger Offset: 0 degrees
- Predictor Algorithm: Last Interval
- Ignition Input Capture: Rising Edge
- Cranking Trigger: Calculated
- Coil Charging Scheme: EDIS
- Spark Output: Going High (Inverted)
The MegaManual has a
detailed write-up on using MS-II with EDIS for further reading. |
Other things the ECU controls
The ECU on these cars typically controlled a lot more than fuel and spark.
In particular, on Focuses we recommend using a parallel
installation to keep the stock ECU in control of the gauges. See
this article for more tips
about parallel installations. Most earlier applications can ditch the stock ECU
altogether if you have a manual transmission. Because of the wide variety of
cars these motors came in, this advice will need to be a bit generic.
Air Conditioning: Most of these cars simply have the ECU activate a relay to
cut off the A/C at full throttle; the A/C otherwise works on its own.
Automatic transmission: All factory Zetec cars have the automatic
transmission controlled by the stock ECU. If you have one of these, you will
need to retain the stock ECU for transmission control.
Cooling fans: These can be run with a
relay control mod.
Fuel pump: Cars with return type fuel systems can have the MegaSquirt control
the fuel pump relay through its fuel pump output on pin 37. For cars with
returnless fuel systems, we recommend leaving the stock ECU in control of this.
Gauges: On the Ford Focus, the ECU controls the gauges over a network, so we
recommend leaving it in place for gauge control. On earlier cars, the only ECU controlled
gauge is the tachometer. This can be controlled from an EDIS tach output, or you
can modify the ECU for tachometer control. See the tach output circuits in the
MS1/Extra and
MS2/Extra guides.
Idle speed: These use a 2 wire PWM idle air control valve which can be
controlled using the standard output circuit on a V3.57 board. V2.2 and V3.0
boards can control this using our
MK-PWMIAC mod kit.
What to Order
If you're buying an assembled unit, it will need special mods to work with
the ignition, as described above. We can install these for you for an extra
charge; please
contact us for details.
If you're building your unit from a kit, here is what we recommend.
MS230-K MegaSquirt II V3.0 Kit
MK-BIP373 to add extra coil driver
MK-PWMIAC to control the IAC valve
MK-RelayCtrl for relay outputs, as needed
JimStim-K JimStim kit
MSHarness12 12' wiring harness (If you are wiring up a kit car from scratch,
you could instead use a
relay board,
relay cable, and
12' wire bundle, as shown on the kit car on this page)
TuneCable6 serial cable
USB-2920 if your computer doesn't have an adapter port
If you are doing a parallel installation, we also recommend giving the MS its
own coolant and air temperature sensors:
CLTIATwPiggy Closed element CLT sensor
IATwPiggy Open element IAT sensor
We also recommend a
wideband oxygen
sensor system for tuning.
|