General Automotive Wiring Guidelines
There are a number of tools and techniques you will need to wire MicroSquirt® to your vehicle. You will also need some specialized knowledge. We will try to present an overview of everything you need here (if you have questions, ask them on the forums at www.microsquirt.com):
Tools:
Supplies:
Of course you will also need a PC computer to run the tuning software. Any computer that can run Windows 98 or higher (i.e., WinMe, WinXP, WinVista) will work. Ideally the computer will have a serial port (9-pin male connector), but many USB/Serial adapters have been used successfully. A laptop computer is easiest to use in the vehicle, of course, and cheap older laptops with Win98+ and a serial port are commonly available at low cost.
NOTE: The wire labeled "Vref" is the +5V voltage source for the MAP sensor and the TPS sensor. This wire only connects to these components (and possibly the LEDs, if used), so be very careful to not connect this directly to ground or (worse) +12V battery. Bad things will occur if you mis-wire this one - double check your work.
When wiring up a vehicle, we recommend performing this in discrete and deliberate stages - this is how to approach this:
For each circuit, you will need to:
Wiring MicroSquirt® to the external harness is much the same as with MegaSquirt-II, and you can read much more about that here: www.megamanual.com/v22manual/mwire.htm. You use the same sensors, etc.
However, because of the change to the AMPSEAL connector (from the DB37), and the absence of the DB9 connector, the external connections are somewhat different. The AMPSEAL connections are:
To wire MicroSquirt® EFI controller, you need to make the following connections:
Pin | Name | Function | Harness Wire Color(s) (main/stripe) |
Pin1 | 12 Volt Supply | This connects to a switched 12 Volt supply. Use the ignition switch to control a relay that provides 12 volts to both the MicroSquirt® and the injectors. | Red |
Pin2 | CAN High | This is one of two Controller Area Network (CAN) communications lines, used to communicate with MegaSquirt peripherals. | Blue/Yellow |
Pin3 | CAN Low | This is one of two Controller Area Network (CAN) communications lines, used to communicate with MegaSquirt peripherals. | Blue/Red |
Pin4 | VRIN2+ | Second ignition input signal (Input 2) for a cam position sensor or second crank sensor with the Dual Spark option. | Brown/White |
Pin5 | Spare Input | This is a second spare ADC(ADC7). It is used for alternate MAF pin or knock sensing, but it can be used to record whatever 0-5 Volt signal is put on it if neither the MAF option nor the knock option uses it. In this case it is stored in outpc.knock. | n/a |
Pin6 | Flex Fuel | For input from a ethanol Flex Fuel sensor. | Purple/White |
Pin7 | FIDLE | This is the output for controlling an ON/OFF style FIdle or a PWM style IAC (usually found on Fords). You cannot use a stepper type IAC (with 4 pins), only FIdle (on/off) or PWM style idle valves (2 pins) are supported. | Green |
Pin8 | FUEL PUMP | This output controls a fuel pump relay by providing a ground when the fuel pump should be running. It cannot control a fuel pump directly. | Purple |
Pin9 | INJECTOR 1 | This pin connects to the injectors. You connect half the injectors on one bank (INJECTOR 1) and half on the other (INJECTOR 2). These connect to one pin on each connector. The other pin on each connector is supplied with 12 Volts through the main relay (see diagram) and the INJECTOR pins ground the injectors to 'fire' them and squirt fuel. | Green |
Pin10 | INJECTOR 2 | This pin connects to the injectors. You connect half the injectors on one bank (INJECTOR 1) and half on the other (INJECTOR 2). These connect to one pin on each connector. The other pin on each connector is supplied with 12 Volts through the main relay (see diagram) and the INJECTOR pins ground the injectors to 'fire' them and squirt fuel. | Blue |
Pin11 | IGNITION OUTPUT #2 | Second ignition output signal. Note that this wire can be used to directly control one coil, and it can carry up to 7.5 Amps of current (be sure to read MicroSquirt® Direct Coil Control).
The coil's primary current can generate a lot of noise inside the MicroSquirt. The whole MicroSquirt® setup is very compact and noise coupling in the wires can be of concern. Running this wire (and the IGNITION OUTPUT #1 where appropriate) in their own shielded "conduit", along with the injector outputs, can substantially reduce noise injection back into the tach circuit. You can buy shielded wire for this, or wrap 2 to 3 layers of aluminum foil (have a look into your kitchen) around the wires and connect the shield to ground. | White/Red |
Pin12 | IGNITION OUTPUT #1 | Ignition output signal. Note that this wire can be used to directly control one coil, and it can carry up to 7.5 Amps of current (be sure to read MicroSquirt® Direct Coil Control).
The coil's primary current can generate a lot of noise inside the MicroSquirt. The whole MicroSquirt® setup is very compact and noise coupling in the wires can be of concern. Running this wire (and the IGNITION OUTPUT #2 where appropriate) in their own shielded "conduit", along with the injector outputs, can substantially reduce noise injection back into the tach circuit. You can buy shielded wire for this, or wrap 2 to 3 layers of aluminum foil (have a look into your kitchen) around the wires and connect the shield to ground. | White |
Pin13 | SERIAL Rx | This pin is used to receive data from the laptop computer serial port (usually a DB9 or DB25). It is connected to Pin3 on a DB9 connector (Pin2 on a DB25) to plug into your laptop/notebook computer. | Red (pre-wired to jack) |
Pin14 | SERIAL Tx | This pin is used to receive data from the laptop computer serial port (usually a DB9 or DB25). It is connected to Pin2 on a DB9 connector (Pin3 on a DB25) to plug into your laptop/notebook computer. | Orange (pre-wired to jack) |
Pin15 | BOOTLOADER | This pin is grounded to enter bootloader mode, which allows you to update the embedded code in MicroSquirt. You can connect this lead to a switch, with the other side of the switch connected to ground. When you close the switch and reboot MicroSquirt® EFI controller, you will be in bootloader mode. | Purple/Black |
Pin16 | ACCEL LED | This is the supply for an 'acceleration indicator LED'. You connect the cathode (short lead) of and LED (light emitting diode) to this wire. The longer lead of the LED you connect to a 330 Ohm resistor, then connect the other side of the resistor to the Vref wire (5 Volts). Be certain that Vref will not be grounded or connected to 12 Volts. Or you could use some other voltage source beside Vref. For example, you could use the battery supply voltage (nominally 12 Volts) as long as you increase the current limiting resistor value to 1K Ohms (to keep the current within limits). The LED will then light whenever accel enrichment is in effect.
When used as a spare port, this output can drive up to 5 Amps absolute maximum (4 Amps is a safer limit) | Yellow/Black |
Pin17 | WARM-UP LED | This is the supply for an 'warm-up indicator LED'. You connect the cathode (short lead) of and LED (light emitting diode) to this wire. The longer lead of the LED you connect to a 330 Ohm resistor, then connect the other side of the resistor to the Vref wire (5 Volts). Be certain that Vref will not be grounded or connected to 12 Volts. Or you could use some other voltage source beside Vref. For example, you could use the battery supply voltage (nominally 12 Volts) as long as you increase the current limiting resistor value to 1K Ohms (to keep the current within limits). The LED will then light whenever warm-up enrichment is in effect.
When used as a spare port, this output can drive up to 5 Amps absolute maximum (4 Amps is a safer limit) | Yellow/White |
Pin18 | N/C (ground) | Not Used | n/a |
Pin19 | SERIAL GROUND | Serial communications dedicated ground. | Green (pre-wired to jack) |
Pin20 | SENSOR GROUND | This is a dedicated sensor ground wire. All of the sensor grounds can be connected to this wire to reduce then possibility of electrical noise. | White/Black |
Pin21 | GROUND | This is one of several ground wire pins (18 through 23). All of the ground wires should be run to the same spot on the engine (to avoid ground loops). Make sure you have a good ground connection from the batteries negative terminal to the engine, and from the engine to the frame as well. | Black |
Pin22 | GROUND | This is one of several ground wire pins (18 through 23). All of the ground wires should be run to the same spot on the engine (to avoid ground loops). Make sure you have a good ground connection from the batteries negative terminal to the engine, and from the engine to the frame as well. | Black |
Pin23 | GROUND | This is one of several ground wire pins (18 through 23). All of the ground wires should be run to the same spot on the engine (to avoid ground loops). Make sure you have a good ground connection from the batteries negative terminal to the engine, and from the engine to the frame as well. | Black |
Pin24 | MAP | This pin is connected to the output from a MAP sensor that puts out a 0 to 5 Volt signal (roughly) proportional to absolute pressure. General Motors MAP sensors are suitable (Pin24 connects to pin B on the sensor, pin A is grounded, pin C gets 5 Volts from Vref (Pin28 on MicroSquirt)). You can also use the original MPX4250 MAP sensor used with MegaSquirt, you connect the pion #24 to the sensor's Pin1, Pin2 is grounded, and 5 Volts (Vref) is connected to pin#3. | Green/Red |
Pin25 | CLT | MicroSquirt® uses the coolant temperature to determine the warm-up enrichments. The sensor must be a negative temperature coefficient (meaning the resistance decreases as the temperature increases). Most automotive temperature sensor are this type, however the default sensors are General Motors sensors. | Yellow |
Pin26 | IAT | MicroSquirt® uses the intake air temperature (aka. manifold air temperature = MAT) to determine the air density for fuel calculations. The sensor must be a negative temperature coefficient (meaning the resistance decreases as the temperature increases). Most automotive temperature sensor are this type, however the default sensors are General Motors sensors. | Orange |
Pin27 | TPS | This is a pin for the 'sense' connection on a throttle position sensor.
To hook up your throttle position sensor (TPS), disconnect the TPS, and use a digital multi-meter. Switch it to measure resistance. The resistance between two of the connections will stay the same when the throttle is moved. Find those two - one will be the +5 Vref and the other a ground. The third is the sense wire to MegaSquirt. To figure out which wire is the +5 Vref and which is the ground, connect your meter to one of those two connections and the other to the TPS sense connection. If you read a high resistance which gets lower as you open the throttle, then disconnected wire is the one which goes to ground, the other one which had the continuous resistance goes to the +5 Vref from the MegaSquirt, and the remaining wire is the TPS sense wire. | Blue |
Pin28 | Vref | This is a 5 volt supply for the throttle position sensor and the MAP sensor. DO NOT connect it to 12 Volts! The wire labeled "Vref" is the +5V voltage reference for the MAP sensor and the TPS sensor. This wire only connects to these components, so be very careful to not connect this directly to ground or (worse) +12V battery. Bad things will occur if you miswire this one - double check your work.
If your MicroSquirt has processor resets once installed, hooking up an external capacitor to Vref helps. Anything from 47µFarads up to 1000µF on the Vref to sensor ground return will help. | Gray |
Pin29 | SPARE ADC | Can be used for external baro MAP sensor. | Orange/Green |
Pin30 | OPTOIN+ | Square wave ignition signal input positive connection for Input 1. Note that you can use only one of OPTIN+/- or VRIN+/-, because they connect to the same processor pin. For the second ignition input (Input 2), use VR2IN+ (Ampseal pin 4).
If you are triggering directly off the coil (instead of something like a missing tooth wheel or another relatively low-voltage signal), connect OPTOIN+ (Ampseal pin #30) to the coil's negative terminal as usual, but connect the OPTOIN- (Ampseal pin #31) to a 12V source rather than grounding it. This then uses the flyback spike off the coil as a trigger (rather than the 12 Volt signal). Doing this reduces the energy dissipated in the circuit, prevent a thermal 'melt-down' of the components inside MicroSquirt®. | Gray/Red |
Pin31 | OPTOIN- | Square wave ignition signal input negative for Input 1. Note that you can use only one of OPTIN+/- or VRIN+/-, because they connect to the same processor pin. For the second ignition input (Input 2), use VR2IN+ (Ampseal pin 4).
If you are triggering directly off the coil (instead of something like a missing tooth wheel or another relatively low-voltage signal), connect OPTOIN+ (Ampseal pin #30) to the coil's negative terminal as usual, but connect the OPTOIN- (Ampseal pin #31) to a 12V source rather than grounding it. This then uses the flyback spike off the coil as a trigger (rather than the 12 Volt signal). Doing this reduces the energy dissipated in the circuit, prevent a thermal 'melt-down' of the components inside MicroSquirt®. | Gray/Black |
Pin32 | VRIN1+ | Variable reluctor A/C signal input for Input 1. Note that you can use only one of OPTIN+/- or VRIN+/-, because they connect to the same processor pin. For the second ignition input (Input 2), use VR2IN+ (Ampseal pin 4) | Silver (coax center wire) |
Pin33 | VRIN- | Variable reluctor A/C signal input (ground) for Input 1 & Input 2 (if used). Note that you can use only one of OPTIN+/- or VRIN+/-, because they connect to the same processor pin. For the second igntion input (Input 2), use VR2IN+ (Ampseal pin 4) | Silver (coax shield) |
Pin34 | O2 | This is connected to the oxygen sensor output wire. This may be a 0 to 1 Volt signal directly from a narrow band sensor, or a 0 to 5 Volt signal from a wide band sensor controller. | Pink |
Pin35 | TACH OUTPUT | This connection can be used to drive a standard tach (OEM or aftermarket). For details on how to hook it to your tach, see your tach installation manual or OEM service manual. | Green/Yellow |
The AMPseal connector has 35 pins, numbered in rows from 1-2, 13-23, and 24 to 35. They are numbers from left to right as viewed looking in to the connector on MicroSquirt. These numbers are also imprinted in the connector itself, if you look carefully.
Note that MicroSquirt® and the injectors MUST be powered off the same relay (the 'main relay'). If the injectors are powered while MicroSquirt® controller is not, the injectors might be grounded and flood the engine with fuel.
Make sure the grounds are correct. When running the grounds on MicroSquirt® EFI controller, it is important to remember that there are different "types" of grounds. These are:
With the small size of MicroSquirt® EFI controller, keeping the grounds straight is important. It is not hard, just keep things in logical groups - high power stuff goes to engine block, sensors on their own ground loop, and the VR sensor is also separate. The ignition coil current path is from the battery to the ignition coil to the MicroSquirt® driver and back. The same goes on for the injector and general purpose outputs. Lots of juice flowing on this path, it needs to stay away from the sensors. It also needs a low resistance/inductance loop. The Vref is the reference voltage generated by MicroSquirt® EFI controller, it passes thru the sensors and the return ground path comes back to the MicroSquirt. Only one return path is required for the sensors because it is comparatively low current, and we all know that voltage drop across a wire is driven by Ohm's law (V=I*R).
In general, MicroSquirt® can be wired the same as MegaSquirt-II for ignition input (tach) signals. However, there are a few of things to note for those installs that are direct-driving ignition coils with MicroSquirt® (i.e. not using an ignition driver module but the internal VB921 drivers in the MicroSquirt):
The dwell number is driven by the primary inductance and resistance. Chances are you do not know the inductance or resistance. If you do not then you can do one of two things:
Follow the instructions included with the application and you will quickly determine the ignition coil dwell time. One item to note is that the IGBT driver used in MicroSquirt® saturates at 7.5 amps, so use this number as the charge current in the application.
One thing that you can do to significantly reduce noise is to use a 'snubber' capacitor. Remember in the old days with points (Kettering) ignition? With the points was the condenser. And everyone knows that the condenser was there to keep the points from arcing and burning out.
Here is why the condenser (a.k.a. capacitor) reduced the sparking. A capacitor blocks direct current (DC) but will pass AC current. When the points open there is a fast transient in voltage and current. What the condenser would do is to briefly shunt the current around the points and complete the path. But it would only do this for a brief moment, but enough to reduce the arcing.
The same thing can be done with solid state ignition drivers - in fact systems like the Ford EDIS and GM HEI use capacitors located at the ignition coil. These capacitors will briefly shunt the flyback current, bypassing the driver, for a brief moment. What this does is reduce the stress on the driver AND reduce the radiated noise emission (EMI). Its a significant benefit. The capacitor does change the discharge pattern a bit (it sets up a L-R-C circuit) but not enough to notice.
You can easily do the same thing. On the IGN signal from the MicroSquirt® going to the ignition coil, connect a 0.01 microFarad (µF) capacitor rated at 630 Volts or so, connect the other terminal to ground. Connect this up right at the ignition coil (EDIS does this) such that the shunt path is contained right at the ignition coil. You need to use a Polypropylene (PP) capacitor rated for pulse discharge operation. A good choice is the Wima MKP-10 series:
You can also use an equivalent, like Epcos B32621A6103J (you can get this at www.digi-key.com).
IMPORTANT! You can directly drive a maximum of one coil per ignition driver with MicroSquirt! This is because the coil driver (the VB921) can only sink enough current for one coil. That one coil can be a double ended 'wasted spark' type coil for two cylinders/coil, and it will be fine. But you CANNOT 'direct drive' two separate coils in wasted spark configuration driven directly off of one ignition driver (see below).
If you want to drive more than 2 coils, you might look at the 4-coil Bosch 211 igniter or the LSx series of coils with their built in igniters (and logic level signals on the ignition outputs).
There are possible three ignition input circuits (to two input pins on the processor) for the MicroSquirt® controller:
Note that you connect either VRin OR OPTin, not both. They connect to the same processor input port (PT0, aka. "Input 1"), so both CANNOT be used simultaneously for different sensors.
The OptIn circuit would be used for a square wave input (from a distributor or sometimes a crank wheel, or a module like the EDIS), while the VRin circuit would be used for a VR sensor (either in a distributor or a crank wheel).
Typically, where both crank and camshaft wheels are used with a MicroSquirt® controller, the crank wheel will have a VR sensor, and the camshaft wheel will be a Hall sensor. This is because the VR sensor is especially good at providing a clean signal at reasonable engine speeds (the voltage rises with tooth speed, and the crank wheel can be made quite large, generating a good signal at modest engine speeds), while the cam wheel must work with the much smaller camshaft (or distributor wheel) diameter which is only spinning at ½ crank speed, making the VR sensor a less reliable trigger.
Where you have a VR sensor on the crank and a Hall sensor of the cam, you would wire the crank sensor to VRin (aka. Input 1), and the camshaft sensor to VR2in (aka. Input 2). You do not wire it to OptIn, since this cannot be used simultaneously with VRin.
The Hall sensor *will* trigger the VR2in circuit without issues (it has been designed with a voltage offset especially suited for Hall sensors and other square wave signals). A Hall sensor is normally a open-collector setup, and since there is a 1 mega Ohm pull-up on the VR2IN+ input (second channel) all the user needs to do is hook the sensor's collector to the VR2IN+ input (pin 4 on the Ampseal), and the emitter to the VRIN- input (pin 33, this ground is shared with the VRin return signal). Also, the VR2IN channel is biased to transition but at 1.8 volts (not at zero like the first channel), as this is perfect for a Hall sensor setup. See the dual spark page for more information.
If you are triggering directly off the coil (instead of something like a missing tooth wheel or another relatively low-voltage signal), connect OPTOIN+ (Ampseal pin #30) to the coil's negative terminal as usual, but connect the OPTOIN- (Ampseal pin #31) to a 12V source rather than grounding it. This then uses the flyback spike off the coil as a trigger (rather than the 12 Volt signal). Doing this reduces the energy dissipated in the circuit, prevent a thermal 'melt-down' of the components inside MicroSquirt®.
Manifold Absolute Pressure (MAP) Sensor Wiring
This sensor is critical to how MicroSquirt® functions. the MAP sensor tells MicroSquirt® the intake vacuum (or boost) the engine has, and use this to scale the fuel injected. These generally have three electrical connections: 5 Volts, ground, and a signal. In addition to the electrical connections, the MAP sensor also has a vacuum connection the intake manifold - this must be downstream of the throttle(s), in the plenum area.
A separate baro sensor (for full-time barometric pressure sensing, rather than just using the startup value) is connected the same way, but the signal wire is connected to AMP pin 29 via the orange wire with the green stripe. Vref and ground can be shared.
For the popular GM MAP sensors (which come in 1, 2 and 3 bar versions) the wiring is:
and has:
(Note that ABC are swapped from the previous diagram!)
Coolant Temperature Sensor Wiring
The temperature sensors that are default sensors for MicroSquirt® controllers are General Motors two-pin sensors. A lot of temperature sensors (aka. "senders") designed for gauge use have one end grounded to the threads for contact in the engine block. This is fine for gauge work, but for EFI you will notice that the majority of the sensors have two terminals (and insulated from the case/thread) such that a separate ground to the ECU can be implemented. This to eliminate the possibility of an erroneous ground path introducing errors in the readings.
One of the pins is ground, and the other goes to MicroSquirt. It doesn't matter which pin you use for which function. You can use other temperature sensors by inputting appropriate values into MegaTune (see: www.megamanual.com/megatune.htm#oh). If you have substituted a one pin connector, the body of the sensor is grounded to the engine, and the pin is connected to MicroSquirt.
Intake Air Temperature Sensor Wiring
The temperature sensors that are default sensors for MicroSquirt® controllers are General Motors two-pin sensors. One of the pins is ground, and the other goes to MicroSquirt. It doesn't matter which pin you use for which function. You can use other temperature sensors by inputting appropriate values into MegaTune (see: www.megamanual.com/megatune.htm#oh). If you have substituted a one pin connector, the body of the sensor is grounded to the engine, and the pin is connected to MicroSquirt.
The IAT sensor must be placed to measure the temperature of the air entering the manifold. In a normally aspirated engine, this can be almost anywhere in the intake tract (air cleaner, throttle body, etc.) since air temperature does not change a lot. For a boosted application (blower of turbocharger), the intake air temperature should be measured in a boosted part of the tract (since compressing the air raises its temperature), and you should use an 'open element' IAT sensor: www.megamanual.com/v22manual/mwire.htm#clt
MegaSquirt controls the fuel pump operation. This is to shut the fuel pump down if the engine stalls, preventing the pump from running unnecessarily (or in the case of a crash).
Exhaust Gas Oxygen Sensor Wiring
An exhaust gas oxygen sensor (EGO) is optional but useful for tuning with MegaSquirt. You can use either a narrow-band sensor, or the more useful wide-band sensor (with a controller).
The fast idle valve is used to increase engine speed when the engine is cold, preventing it from stalling. MicroSquirt® can use either a 'solenoid'-style ON/OFF valve, and a variable pulse width modulation valve. See: www.megamanual.com/ms2/IAC.htm#fidle
Throttle Position Sensor Wiring
To hook up your throttle position sensor (TPS), disconnect the TPS, and use a digital multi-meter. Switch it to measure resistance. The resistance between two of the connections will stay the same when the throttle is moved. Find those two - one will be the +5 Vref and the other a ground. The third is the sense wire to MegaSquirt. To figure out which wire is the +5 Vref and which is the ground, connect your meter to one of those two connections and the other to the TPS sense connection.
If you read a high resistance which gets lower as you open the throttle, then disconnected wire is the one which goes to ground, the other one which had the continuous resistance goes to the +5 Vref from the MegaSquirt, and the remaining wire is the TPS sense wire.
These circuits ground the LED to light them. You can use the Vref 5 volt supply on Pin 28 to power the LEDs, or you could use some other source. For example, you could use the battery supply voltage (nominally 12 Volts) as long as you increase the current limiting resistor value to 1K Ohms (to keep the current within limits).
Using the Relay Board with MicroSquirt
Check the MicroSquirt® access board, which may be a better choice than the relay board for some installations.
You can use MicroSquirt® with a relay board, if you like. You will need to solder many of the leads from the suppled harness (extending them as necessary) to a female DB37 solder cup connector (like Digi-Key 2237F-ND, and a suitable hood (937GME-ND), if desired and if temperatures permit). The connecting cable should be wired like this:
Note: