Click on our menu buttons immediately below to find MegaSquirt® information quickly:


MegaSquirt-II adds the following enhancements to MegaSquirt:

1) Processor. When MegaSquirt® was started almost five years ago, the best bang for the money was the HC08 family (also Atmel and Microchip). In those five years, looking at the next step range of processors, the family that stands out is the HC12/HCS12. MegaSquirt-II uses the MC9S12C32MFA from this family of processors.

SpecificationMC68HC908
(MegaSquirt)
HC9S12C32
(MegaSquirt-II)
CPU core8 bit16 bit
Speed8 MHz24 MHz
Flash32 Kbytes64 Kbytes
User RAM512 bytes2K bytes

2) Existing software: The goal of choosing a processor is to try to keep the current established code operational. With the HC12 family, it is very easy to modify existing assembly code for this processor - it amounts to about a two hour effort, without taking advantage of the HC12 architecture. And, if people want to code in C, there is a good GNU port available, as well as Metrowerks Codewarrior.

3) 12×12 Tuning tables: For Volumetric Efficiency (VE) table (versus MegaSquirt® 8×8), 12×12 for Air Fuel Ratio (AFR) table, and 12×12 for Spark Advance table. There are separate AFR and VE tables for each injector bank (similar to the dual table code),

4) Stepper motor IAC 'fast idle' control: for common EFI idle control motors, as well as support for MegaSquirt's On/Off FIdle valve control and the Ford PWM idle valve.

5) Ignition: MegaSquirt-II code has the ability to control ignition modules, including those that require dwell control. Initial release supports 1 coil/distributor, Ford's EDIS, and GM's DIS.

6) 3 spare output lines for custom controls. (This is in addition to 2 lines for Idle stepper control if you don't need this, or the Fast idle solenoid then becomes a spare if you do use a stepper motor.)

7) 115200 baud serial communications rate (vrs. 9600 of MegaSquirt).

MegaSquirt-II will be completely compatible with PWM on the injector outputs even in dual table mode, and will work with the flyback board if:

are left off the board to make room. None of these are necessary to run the car.

We have tested the PWM on the bench and it works fine. That said, a user wanted to control PWM separately for each injector bank, that is not in the code at the present time. That is, if you specify a PWM duty cycle and time on, it applies to both injector banks. However, separate controls would be easy to add - just extra inputs and minor code changes.

There are obviously code modifications to the MegaSquirt® code for MegaSquirt-II, such as the change from assembly language to C. In addition, there are code changes needed to correct some issues. For instance, MS-II uses 16-bit variables. But, the SCI serial link handles bytes at a time.



MegaSquirt® and MicroSquirt® controllers are experimental devices intended for educational purposes.
MegaSquirt® and MicroSquirt® controllers are not for sale or use on pollution controlled vehicles. Check the laws that apply in your locality to determine if using a MegaSquirt® or MicroSquirt® controller is legal for your application.
©2004, 2005 Bruce Bowling and Al Grippo. All rights reserved. MegaSquirt® and MicroSquirt® are registered trademarks. This document is solely for the support of MegaSquirt® boards from Bowling and Grippo.