|Click on our menu buttons immediately below to find MegaSquirt® information quickly:|
There are two hardware versions of MegaSquirt-II™, and two corresponding code versions. ALL MS-II™ controllers sold since August 2005 are V2 (the vast majority of MS-II™s) have a blue solder mask and use the code and INI from the blue box (or red box with hardware and firmware modifications) below, as do all Microsquirt® controllers.
Older MS-II™s with the green solder mask use the code and INI from the green box further down the page.
Optional Code ():
For those with crankshaft toothed wheels with a cam input or more than one ignition coil, version 3.830a MicroSquirt® code can potentially be used (it is intended for a MicroSquirt® controller, but can be used on a MS-II™ controller with significant hardware and firmware modifications*): The most recent .s19 file and INI file for uploading to a MegaSquirt-II™ controller ( with the installed and hardware mods) is here:
(Right click and 'Save As')
Below is the INI file you will need for your tuning software. Do NOT rely on the INI that comes with your tuning software, even if it has the correct version number it may be out of date and not have the latest updates and corrections.
(Right click and 'Save As')
This code version requires the to upload properly. Any bug fixes are common to both 3.8xx and 2.9xx codes, so the only differences between the codes involve dual spark option changes which are not applicable for unmodified MS-II™ controllers that have only one ignition output and one engine position sensor input. Once you have modified your MS-II™ controller to be compatible with the MicroSquirt® dual spark inputs and outputs, you will need to change the bootloader on your processor to be able to load this 3.830a code. Burning the MicroSquirt® bootloader to an MS-II™'s processor can be done, but requires specialized and expensive equipment. Your vendor may be able to do this for you, or a developer might be able to help you from one of the forums. Otherwise you should use the latest 2.9xx code above.
To load a 'ready to load' .S19 file to your MegaSquirt-II™ over the serial port, you need to use Eric Fahlgren's MegaSquirt-II downloader program (click the link to download), which works from either a window or from the command line.
To use install new code using the downloader.exe:
You will find all recent the INI files here: http://www.megamanual.com/files/ini/ and the recent code S19 loadable files here: http://www.megamanual.com/files/code/ See the readme file in the package for more details.
To use the v1.31 or v2.X code, see the configuration instructions here: www.megamanual.com/ms2/configure.htm
For a full description of how the MS-II Serial Interface works see this link: www.megamanual.com/com/serial.htm
The reason for two different codes is simple: to install CAN networking on the new MS-II™ we had to move the fuel and idle pins, since they were using the CAN pins as I/O. This does NOT mean any changes in wiring, because the new fuel and idle go to the same place on the motherboard. We are also using the C64 version of the processor, which has 4K of RAM vs. the 2K on the C32 (the C32 is the one populated on the V1 version of MS-II™). This has been the holdup for MS-II™, we have been waiting all this time for the automotive-temp version of the C64 to arrive, and this is what we have populated on the V2 version of MS-II™. The V2.0 code uses more than the 2K of RAM that the C32 had in order to get all of the CAN variables incorporated in the version 2 embedded code, so the C32 part used on the V1 version cannot handle this (without some condensing of variables, etc). This means you MUST install only v2.x software on the CAN MS2 and only v1.x software on non-CAN MS-II™.
The real issue between the first released boards (the first 170 that were shipped in April 2005) and the ones from August 2005 and later is that the old boards did not have the CAN transceiver, the new version (V2) has CAN. But to use CAN, we had to move the signal lines on the processor for the fuel pump and fast idle - these happen to be the ones used for the CAN signals (CANH and CANL). So, to be able to use CAN (on V2 version), we had to move the fuel pump and fast idle to other spare I/O pins. This also affected the bootloader - this code has to make sure the fuel pump, injectors, ignition, etc, are off during a bootloader operation. Since the pins moved, we also had to move these as well in the bootloader. In fact, we are hand-programming each and every MegaSquirt-II® with the bootloader through the BDM, just to verify this operation and processor/board health. Users still need to put in the version 2 embedded code into the MS-II™ once they receive it (we do spot check boards with the full code).
The best way to determine the MS-II™ version of any board is that the original boards had green LPI solder mask, where as the new V2 boards are now blue solder mask. So MegaSquirt-II version V1 is green, and the latest V2 (with CAN and the extra memory) is blue. The boards also have the "V2.0" or "V2.1" silkscreened onto the V1 boards and "V3.0" silk screened onto the V2 boards.
The MegaSquirt-II™ current release code for the V1 MS-II (with the green solder mask) is here:|
As well, a 'ready to load' .s19 file for uploading to V1 MegaSquirt-II™ is here:
(Right click and 'Save As')
The INI file for 1.34 code is numbered 1.31, and is found here: megasquirt-II.ini.1.31
The complete Codewarrior project file is here: MSII_V1_Proj.zip