|
Megasquirt 3 - Tach input and ignition outputs |
Intro -
Tach in (general) -
VR input -
Hall sensor input -
Gear-tooth sensor input -
Opto input -
Points input -
Coil negative -
EDIS/HEI/TFI input -
Tach input internal wiring (V3.0) -
(V3.57) -
(MS3X cam) -
(cam w/o MS3X) -
Tach input external wiring -
Trigger wheel patterns -
Coils types -
Ignition outputs -
Firing order -
Settings -
Introduction
The following shows a simplified block diagram of the Megasquirt system.

This section of the manual will focus on the tach input and ignition output.
Tach input
The tach input is one of the most important signals going into the Megasquirt-3 and correct system operation is not possible until the tach input is correctly installed and configured. Until the Megasquirt reads the correct rpm, nothing else will work. Even if you are starting with fuel injection only (not controlling ignition) you must still provide the Megasquirt with a tach input - see coil negative triggering.There are many different options for tach input and this is probably one of the largest areas of difficulty with any aftermarket EFI install. Megasquirt-3 contains software decoders to suit many stock installs using original sensors. If your engine is supported, then this is the recommended approach.
Two key pieces of information you need to know are:
The sensor types fall into a few basic families of sensors and the right way to use the sensor depends more on the type rather than the particular vehicle or manufacturer. There are also a few "special" systems in use from the eighties that combine a sensor input with an ignition driver output in one module. These will be discussed later - Ford TFI, Ford EDIS, GM HEI, GM DIS.
Note that if you are upgrading your board from an earlier Megasquirt version you may well be able to retain the existing input circuits unchanged.
VR (magnetic) sensor
The VR sensor is a very commonly used sensor. Usually it is seen as a two wire sensor although some manufacturers install a screen on the cable, yours may have three wires. In CAS (crank angle sensor) units a multiplug may be used to combine multiple sensors. The sensor itself generates an AC voltage when a piece of steel (the trigger) moves past it. The voltage varies from less than a volt during cranking to tens of volts at higher revs. In order to use a VR sensor a "conditioner" circuit is required to convert the AC voltage into a DC square wave signal while retaining the timing information. The Megasquirt board (V3 or V357) has this conditioner built in. One wire from the VR sensor is connected to ground at the Megasquirt and the other connects to the tach input. Ideally use a screened twisted pair cable. If fitted, connect the screen to ground at the Megasquirt end only.
The Megasquirt board needs to be set for VR input. V3.0 VR setting - V3.57 VR setting
The Megasquirt main board has provision to adjust the trigger threshold on the input signal - these is by two small potentiometers inside the case. These are labelled R52 and R56. Using a small screw driver, carefully turn both about 12 turns anti-clockwise position. (There is no dead-stop, sometimes but you may feel a "click" when the end position is reached, they can't be damaged by turning too far.)
For more technical information on setting the trigger point, see VR technical
Hall sensor
The Hall sensor is another commonly used category of sensor. These are almost exclusively a three wire sensor. In CAS (crank angle sensor) units a multiplug may be used to combine multiple sensors. The sensor itself acts like a switch to ground in the presence of a magnetic field. Hall sensors are commonly seen in distributors where vanes or shutters mask off the magnetic field causing the sensor to rapidly switch on or off at the edge of the vane. Another way that a hall sensor can be used is with a "flying magnet" installed on a rotating part of the engine (crank, cam sprocket etc.). As the magnet passes the hall sensor, the output switches to ground. The hall sensor requires a supply voltage which is usually 12V from a fused 12V supply or 5V from the TPSREF output of the Megasquirt. The sensor is then grounded at the Megasquirt and the third wire connects to the tach input.a. The most common OEM arrangement for a hall sensor is within a distributor. The vanes in the distributor rotate and block or unblock a magnet.
With no vane between the magnet and sensor - the output is grounded. (0V)
With a vane between the magnet and sensor - the output is inactive. (The pullup in the ECU will make this 5V.)
![]() | Typical Hall-sensor distributor with vane-cup removed for clarity |
![]() | Modified vane-cup for single tooth, for use with missing tooth crank wheel as part of a sequential install. |
b. Possible aftermarket arrangement for a hall sensor with flying magnets in trigger wheel.
When the magnet passes the hall sensor it grounds its output. (0V)
At other times, the output is inactive. (The pullup in the ECU will make this 5V.)
The Megasquirt board needs to be set for VR input. V3.0 VR+pullup setting - V3.57 VR+pullup setting
(Note, that previous Megasquirt versions may have used the optoisolator input, but for better high frequency response with toothed wheels and to match the input on the MS3X card, it is advised to use the VR circuit.)
The Megasquirt main board has provision to adjust the trigger threshold on the input signal - these is by two small potentiometers inside the case. These are labelled R52 and R56. Using a small screw driver, carefully turn both about 12 turns anti-clockwise. (There is no dead-stop, but you may feel a "click" when the end position is reached, they can't be damaged by turning too far.) Then rotate R56 a few turns clockwise.
Gear Tooth sensor
The gear-tooth sensor is a variant of the hall sensor - the key difference is that it has a magnet built into it and switches when close to steel, no external magnets are required. This makes them very easy to use. These are almost exclusively a three wire sensor. In CAS (crank angle sensor) units a multiplug may be used to combine multiple sensors. The sensor itself acts like a switch to ground when close to steel. The gear-tooth sensor requires a supply voltage which is usually 12V from a fused 12V supply or 5V from the TPSREF output of the Megasquirt. The sensor is then grounded at the Megasquirt and the third wire connects to the tach input.Typical use of geartooth sensor with steel trigger wheel.
When a steel tooth passes the sensor it grounds the output. (0V)
At other times, the output is inactive. (The pullup in the ECU will make this 5V.)
A commonly used sensor is the 1GT101DC from Honeywell.
The Megasquirt board needs to be set for VR input. V3.0 VR+pullup setting - V3.57 VR+pullup setting
(Note, that previous Megasquirt versions may have used the optoisolator input, but for better high frequency response with toothed wheels and to match the input on the MS3X card, it is advised to use the VR circuit.)
The Megasquirt main board has provision to adjust the trigger threshold on the input signal - these is by two small potentiometers inside the case. These are labelled R52 and R56. Using a small screw driver, carefully turn both about 12 turns anti-clockwise. (There is no dead-stop, but you may feel a "click" when the end position is reached, they can't be damaged by turning too far.)) Then rotate R56 a few turns clockwise.
Optical sensor
The optical sensor is another commonly used category of sensor. These are almost exclusively a three wire sensor. In CAS (crank angle sensor) units a multiplug may be used to combine multiple sensors. The sensor itself acts like a switch to ground when light shines through the trigger disc. Optical sensors are commonly seen in distributors where vanes or shutters block the light causing the sensor to rapidly switch off and back on when light is present again. The optical sensor requires a supply voltage which is usually taken from the 5V VREF output of the Megasquirt. The sensor is then grounded at the Megasquirt and the third wire connects to the tach input.
The Megasquirt board needs to be set for VR input. V3.0 VR+pullup setting - V3.57 VR+pullup setting
(Note, that previous Megasquirt versions may have used the optoisolator input, but for better high frequency response with toothed wheels and to match the input on the MS3X card, it is advised to use the VR circuit.)
The Megasquirt main board has provision to adjust the trigger threshold on the input signal - these is by two small potentiometers inside the case. These are labelled R52 and R56. Using a small screw driver, carefully turn both about 12 turns anti-clockwise. (There is no dead-stop, but you may feel a "click" when the end position is reached, they can't be damaged by turning too far.) Then rotate R56 a few turns clockwise.
Points input
It is possible to convert a points distributor to give a tach input to Megasquirt and have control of your timing. In this case the points now only provide a tach signal and the Megasquirt is used to control the coil. Most conventional points distributors have a mechanical advance (weights) and a vacuum canister. In the original system these change the timing depending on engine rpm and load. Now that Megasquirt will be controlling the timing you will need to lock out these mechanisms in your distributor and likely change the phasing.
The Megasquirt board needs to be set for VR input. V3.0 VR+pullup setting - V3.57 VR+pullup setting
(Note, that previous Megasquirt versions may have used the optoisolator input, but for better high frequency response with toothed wheels and to match the input on the MS3X card, it is advised to use the VR circuit.)
The Megasquirt main board has provision to adjust the trigger threshold on the input signal - these is by two small potentiometers inside the case. These are labelled R52 and R56. Using a small screw driver, carefully turn both about 12 turns anti-clockwise. (There is no dead-stop, but you may feel a "click" when the end position is reached, they can't be damaged by turning too far.) Then rotate R56 a few turns clockwise.
Coil Negative
For fuel-only installs it is possible to obtain a tach in trigger from the negative terminal of a single coil. Note that this won't work well on a wasted spark setup and must never be connected to a CDI type high primary voltage coil.
The Megasquirt board needs to be set for Opto input. V3.0 Opto setting - V3.57 VR setting
Combined Ignition module (TFI, EDIS, HEI, GMDIS)
Some ignition modules, particularly from the 1980s combine the tach input and coil driving ignition output within one module
The Megasquirt board needs to be set for VR input. V3.0 VR setting - V3.57 VR setting
Full wiring for these specific installs are covered in module specific sections - see the index page. It is important to be aware that while Ford EDIS and GM DIS both have special toothed wheels, the module handles all the decoding and presents a signal to the Megasquirt that looks like a distributor input. With these two modules, the Megasquirt does not know or care how many teeth are actually on the wheel, so do not use the "trigger wheel" setting. This also means that normally you cannot use sequential fuel with these systems as no engine position information is available to the Megasquirt.
Tach input internal wiring (V3.0)
V3.0 board - VR Input for VR (magnetic) sensor
a) Solder a link between VRIN and TACHSELECT
b) Solder a wire between VrOUT and TSEL
c) With a small screwdriver, turn the pots, R52 and R56, about 12 turns anticlockwise (sometimes you may feel a "click" when the end position is reached, they can't be damaged by turning too far.) This sets them up for most VR sensors.
V3.0 board - VR Input for logic input e.g. TFI, EDIS, GMDIS, LS1, modules
a) Solder a link between VRIN and TACHSELECT
b) Solder a wire between VrOUT and TSEL
c) With a small screwdriver, turn the pots, R52 and R56, about 12 turns anticlockwise (sometimes you may feel a "click" when the end position is reached, they can't be damaged by turning too far.)
d) Turn R56 back about 6 turns clockwise.
V3.0 board - VR Input with pullup for hall sensors, optical sensors or points
a) Solder a link between VRIN and TACHSELECT
b) Solder a wire between VrOUT and TSEL
c) Install a 1k resistor (any value 470R - 2k2 is likely ok) in the proto area. Connect one end to the 5V hole and join the other end to VRIN with a jumper wire.
d) With a small screwdriver, turn the pots, R52 and R56, about 12 turns anticlockwise (sometimes you may feel a "click" when the end position is reached, they can't be damaged by turning too far.) and then turn R56 back about 6 turns clockwise.
V3.0 Opto-isolator (for coil negative fuel-only triggering):
a) Fit a 36V Zener Diode in reverse into position D2. 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.
f) Link TACHSELECT to OPTOIN
g) Link TSEL to OPTOOUT
Tach input internal wiring (V3.57)
V3.57 board - VR Input for VR (magnetic) sensor
a) Find JP1 in the bottom right of the board. Place a jumper across positions 1 and 2
b) Find J1 in the middle of the board. Place a jumper across positions 3 and 4
c) With a small screwdriver, turn the pots, R52 and R56, 7 turns anticlockwise (sometimes you may feel a "click" when the end position is reached, they can't be damaged by turning too far.) This sets them up for most VR sensors.
V3.57 board - VR Input for logic input e.g. TFI, EDIS, GMDIS, LS1, modules
a) Find JP1 in the bottom right of the board. Place a jumper across positions 1 and 2
b) Find J1 in the middle of the board. Place a jumper across positions 3 and 4
c) With a small screwdriver, turn the pots, R52 and R56, 7 turns anticlockwise (sometimes you may feel a "click" when the end position is reached, they can't be damaged by turning too far.)
d)Turn R56 back about 2 turns clockwise.
V3.57 board - VR Input with pullup for hall sensors, optical sensors or points
a) Find JP1 in the bottom right of the board. Place a jumper across positions 1 and 2
b) Find J1 in the middle of the board. Place a jumper across positions 3 and 4
c) Install a 1k resistor (any value 470R - 2k2 is likely ok) onto the pads marked R57
d) With a small screwdriver, turn the pots, R52 and R56, 7 turns anticlockwise (sometimes you may feel a "click" when the end position is reached, they can't be damaged by turning too far.) and then turn R56 back about 2 turns clockwise.
V3.57 Opto-isolator (for coil negative fuel-only triggering):
a) Find JP1 in the bottom right of the board. Place a jumper across positions 2 and 3
b) Find J1 in the middle of the board. Place a jumper across positions 1 and 2
c) Place a jumper from XG1 to XG2 (just to the left of J1 above U3.) 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.
MS3X card - Cam Input
For hall or optical sensor inputs.
a) Install the jumper across JP7
b) Turn both pots (R11 and R32) 7 turns anti-clockwise (sometimes you may feel a "click" when the end position is reached, they can't be damaged by turning too far.)
c) Then turn the top one (R11) 3 turns clockwise.
For LS1 type sensor or logic modules inputs
a) Ensure JP7 is not jumpered.
b) Turn both pots (R11 and R32) 7 turns anticlockwise (sometimes you may feel a "click" when the end position is reached, they can't be damaged by turning too far.)
c) Then turn the top one (R11) 3 turns clockwise.
For a VR (magnetic) sensor input
a) Ensure JP7 is not jumpered.
b) Turn both pots (R11 and R32) 7 turns anti-clockwise (sometimes you may feel a "click" when the end position is reached, they can't be damaged by turning too far.)
Non-MS3X Cam Input
If you do not have the MS3X card, but need a cam input then a little more creativity is required.
Tach input external wiring
Trigger Wheel Patterns
The most basic tach input is coil negative triggers, this provides one pulse per ignition event. (i.e. 4 pulses per 720 degrees of crank rotation on a 4 cylinder 4 stroke engine.) This is sufficient for untimed fuel injection only.
Basic distributor type pickups again give one pulse per ignition event, but the pulse occurs at a specific engine angle. These inputs may be used to control fuel and ignition with a single coil.
A basic crank trigger (like 'flying magnet' arrangement) gives much the same, but will have more accurate spark as it eliminates timing chain or belt slop.
A missing-tooth crank wheel (e.g. 36-1 or 60-2) gives additional engine position information. With just the crank wheel the Megasquirt can operate wasted spark ignition and semi-sequential fuel.
A missing-tooth crank wheel and a single-tooth cam wheel gives full engine position information allowing coil-on-plug ignition and full sequential fuel.
Many custom OEM crank and cam patterns are also supported. Some (e.g. Renix) are only good for a single coil, while others (e.g. LS1) give full sequential.
Coil types
Coils come in many shapes and sizes. The coil may be a single tower coil, dual tower wasted spark coil or multiple coils in a coilpack. The current drive may be high current inductive, logic level inductive or CDI type.
High current inductive - standard single tower coil
This style of single output coil is extremely common. In different applications various coil resistances and currents are used. Until the seventies most coils were "12V type". During the seventies it was common to use "8V" ballasted coils. With the advent of EFI, lower resistance "EFI only" coils came into use. These are usually accomodated by setting the appropriate dwell.
High current inductive - wasted spark coilpack
Shown here is an "EDIS type" coilpack from Ford. Similar style coilpacks are used by numerous manufacturers. Each of the two high current inputs produces a spark in a pair of outputs. These are wired to cylinders that need to fire 360 crank degrees apart.
Shown here is a GM two post coil. The high current inputs produces a spark in the pair of outputs. These are wired to cylinders that need to fire 360 crank degrees apart.
Bike type CDI coils
More information is needed on these coils - generally they need a CDI style driver to operate them correctly.
LS1, LS2, LS truck coils
The LS style coils are of a "coil near plug" design, they are also logic level. They are fairly easy to obtain used (in the USA) and are available new from OEM or aftermarket. The truck coil gives the most powerful spark and is easily identified by the heatsink.
Coil-on-plug coils
There are many different coil on plug coils used by the OEMs. Some are logic level, some require high current drivers. If a coil has two wires it is certainly high current. If a coil has three or four wires it is almost certainly logic level.
High current 2 wire COP (Renault)
Mazda rotary coils
These coils have integral ignitors and can be directly connected to the MS3X logic output.
Ignition outputs
There are numerous options available for ignition outputs depending on the number and type of coils you have. For TFI, EDIS, HEI, GMDIS see the combined ignition module section as they combine the input and output into one external module.
Ignition coils as you probably know require amps or tens of amps of current in order to work. The signal from the MS3X is a much lower-power "logic-level" signal - the kind of signal seen inside computers. So some sort of device is needed to allow the weak logic-level signal from the MS3X to drive the coils which require a lot of power.
In other automotive scenarios, this might be done with a relay which is commonly used to switch a high-power signal from a source signal of lower power. But a relay isn't suitable for driving a coil for a number of reasons, so instead there's an electronic device called an "igniter" or "coil driver" to do the job. Some coils have the igniter built in, those coils have more than 2 wires because of the extra functions they contain. Simple coils without built-in igniters only have 2 wires.
If you're using a factory ignitor with matching factory coils you can expect that the coils and igniters are designed to work together. The only place resistance might be an issue is at the inputs to the igniter, as some igniters (particularly the ones built into certain VW/Audi coils) require a stronger drive signal than the MS3X can supply. That's a pretty unusual situation and is mentioned in that section.
Logic ignition outputs
The MS3X board provides up to eight logic level buffered 0-5V outputs. Do not connect them directly to non-logic coils.
Note to upgraders, if you were previously using the "LED drivers" with a pullup to give a logic spark then you were almost certainly set to "Going low (normal)" before, so be sure to switch that setting to "Going high (inverted)" when moving to MS3X spark outputs.
LS1 coil wiring
A dwell figure of 5.5-6.0ms is advised for LS1 coils.
LS2 coil wiring
A dwell figure of 5.0-5.5ms is advised for LS2 coils.
Bosch 211 module wiring
The Bosch 211 module offers a simple to use four channel coil driver, however it is an expensive option. A single module new will cost significantly more than buying a set of LS style coils used.
Generic modules
DIYautotune now offer their Quadspark four way ignition module. This is easily used to drive high-current coils from the MS3X outputs with similar wiring to the Bosch module.
Various other OEM or aftermarket coil driver modules exist that follow the same general pattern as the Bosch module.
The creative DIYer could use BIP373 or equivalent to make an external ignition module driven from the logic outputs.
Mazda rotary coils wiring
See the rotary page for more information on wiring up Wankel rotary engines.
2/3 wire COPs (without built-in ignitors)
2-wire and 3-wire COPs require an ignitor as they are simply a 'dumb' high-current ignition coil. Do NOT connect directly to the MS3X outputs. Check your service manual to determine the pinout.
For a 2 wire COP, the two wires are :
For a 3 wire COP, the three wires are :
4/5 wire COPs (with built-in ignitors)
4-wire or 5-wire COPs have a built in amplifier (ignitor) so they can typically be
connected directly to the 0-5V low current MS3X logic level spark outputs.
Some COPs require 12V signals or more current than the MS3X outputs
Coil input resistance check
Many logic coils are suitable for direct connection to MS3X outputs, but before use it is necessary to check the resistance to ground
on the input.
Using a multimeter set to resistance, check between the Spark Signal Input and Signal Ground.
If you have a reading of say ~1k then the MS3X outputs can be used directly.
If you measure around 120-500 ohms then you will need a buffer.
(An external buffer box may be available in the future, presently you will need to DIY. See the MS2/Extra manuals for options.)
VAG P/N 06B 905 115 COPs: as used on (VW 1.8t and may other VAG cars (2001+).)
During production these coils have changed electrically and it is necessary to perform the resistance check to confirm suitability.
|
Pin 1: Connects to Pin 1 on all other coils and then to +12v ignition feed (or fuel pump relay) Pin 2: Signal ground (connect to engine block*) Pin 3: Spark Signal from ECU (from MS3X or via buffer) Pin 4: Power ground (connect to engine block) |
Earlier than 2001 coils, PN - 06B 905 115, 06B 905 115 rev B and E.
These have an input resistance of ~1k and should work ok with the MS3X outputs. Be sure to use "Going high (inverted)"
Cranking dwell = 4.0ms
Running dwell= 3.0ms
Later than 2001 coils, PN 06B 905 115 rev L and R
These have a low input resistance and require a buffer.
Avoid the earlier 'L' revision as they are reported to have reliability issues.
Cranking dwell = 4.0ms
Running dwell= 3.0ms
Direct (high current) coil control
The MS3X outputs must not be directly connected to a high current coil.
However, the mainboard can optionally be configured by your reseller (or you can DIY) for a number up to six high current coil outputs - see the MS2/Extra documentation for this.
For a single high-current driver, there are instructions in the build manual on setting this up.
See here for V3.0 mainboard or here for V3.57 mainboard
Be sure you have set old style "LED" spark hardware in Ignition options.
Capacitive discharge control boxes from MSD, Crane and others give a high energy spark. These systems are popular with drag racers.
A single signal wire is connected from the spark box to the Megasquirt for ignition timing control.
With MS3X
When using the MS3X card, there is a simple connection to the MSD etc. spark box on their "points" input wire. By convention this is the white wire. (Note! This is available in 1.0 RC5 and later only.)
Use the following ignition settings.
Without MS3X
Without the MS3X card, you need to ensure that your mainboard includes the "high current ignition driver" (BIP 373)
See here for V3.0 mainboard or here for V3.57 mainboard
Be sure you have set old style "LED" spark hardware and "Inverted" spark in ignition options
Wire the spark box white wire to pin 36 on the Megasquirt mainboard connector.
Firing order
The outputs ALWAYS fire in sequence A,B,C.... so you must apply your firing order in the loom.
Firing order - coil on plug
e.g. on a 4 cyl engine with 1342 firing order SpkA = 1, SpkB = 3, SpkC = 4, SpkD = 2
on a V8 with 18436572 firing order. SpkA = 1, SpkB = 8, SpkC = 4, SpkD = 3, SpkE = 6, SpkF = 5, SpkG = 7, SpkH = 2
Firing order - wasted spark
Here, the cylinders are paired from one output and typically a double ended coilpack is used.
e.g. on a 4 cyl engine with 1342 firing order. SpkA = 1&4, SpkB = 3&2
on a V8 with 18436572 firing order. SpkA = 1&6, SpkB = 8&5, SpkC = 4&7, SpkD = 3&2
Plenty more examples and wiring diagrams here
Settings
The left hand side :
Spark mode - this sets the type of tach input pattern decoder to be used. For detail on the various modes see here
Trigger Angle/Offset - There are three different ways this setting is used:
The right hand side :
Fixed advance - When set to "Fixed Advance" the spark timing is locked to the value set below. This is used for confirming timing with a strobe timing light during setup. (See also Checking Timing.) For normal operation, this MUST be set to "Use table" so that the spark advance table is used.
Use Prediction - Normally set to "1st Deriv Prediction". Alters the way the internal spark timing calculation functions. With no prediction, spark retard may be observed during engine acceleration. With 1st Deriv, this is automatically compensated for.
Timing for Fixed Advance - only applies when "Fixed Timing" is set above. Timing is then locked to this specified value.
Cranking dwell - specifies the base coil dwell time during cranking before battery correction is applied.
Dwell type - Can be "Standard Dwell", "Fixed Duty", "Time after Spark", "Charge at Trigger"
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.