MS2/Extra - Loading firmware and Upgrade Notes

Home

This page has now been superceded, please click here

Introduction - Megasquirt 1 (base) - Megasquirt 1 (MS1/Extra) - Megasquirt 2 (B&G) - Megasquirt 2 (earlier MS2/Extra) - Megasquirt 2 (3.2.x) - Downloading and installing - Alpha/Beta/Release versions

** If you are new to Megasquirt and this is your first install, skip to downloading and installing. **

Introduction

This page is intended to help those already familiar with earlier Megasquirt products to upgrade their settings to MS2/Extra or be aware of what settings have changed. If you are new to Megasquirt and this is your first install, then everything is new so skip to downloading and installing.

For all installations, ensure that the jumper from S12C to JS9 (+12V) is installed. This is required for the stepper outputs to work. See the build manual step ~25 for details.

Megasquirt 1 (base)

Do not try to load your old Megasquirt-1 settings into Megasquirt-2.

If your fuel VE table is well tuned, then retain it. Otherwise start from scratch (online) as it a new user.

To transfer you VE table
  • Open up your tuning software and load your Megasquirt-1 tune.
  • Open the VE table. Export as VEX.
  • Close tuning software.
  • If you are swapping the Megasquirt-2 card in place of the Megasquirt-1 processor you may well want to add the 12V feed to the chip. (Notes to be added.)
  • Setup Tunerstudio and create a new project for the Megasquirt 2.
  • Power up your Megasquirt 2 and open the tuning software.
  • Ensure that you see the default settings i.e. it isn't all blanks or zeros.
  • Open the Fuel VE table.
  • Import the VEX you previously saved.

    Whether you imported a VE table or not, you now must go through all settings to configure for your engine. e.g. number of cylinders, ReqFuel, ignition triggering, spark and fuel hardware in use.

    Megasquirt 1 (MS1/Extra)

    Do not try to load your old MS1/Extra (also referred to as Megasquirt'n'spark or MSnEDIS) settings into Megasquirt-2.

    If your fuel and spark table are well tuned, then retain them. Otherwise start from scratch as it a new user.
    Follow the steps above in Megasquirt-1 to export and import your tables.

    Key differences
  • Almost all other settings are somewhat different between MS1/Extra and Megasquirt-2.
  • The wheel decoder now requires a single "Tooth #1 angle" and automatically calculates the triggers itself and enables the required number of spark outputs depending on how many cylinders you have and your selection of single coil, wasted spark, coil-on-plug or dual-dizzy.
  • Spark A,B,C are available on the LEDs (not FIDLE)
  • Sparks D,E,F have moved
  • Launch pins are different
  • Nitrous pins are different and the wiring method has changed
  • Water injection is not supported
  • 3 stage shift lights not supported
  • Spare ADCs the same.
  • 12V power feed to the chip to enable the stepper driver (Caution! Do not refit the Megasquirt-1 CPU with the 12V feed in place.)

    Whether you imported a VE table or not, you now must go through all settings to configure for your engine. e.g. number of cylinders, ReqFuel, ignition triggering, spark and fuel hardware in use.

    Megasquirt 2 (B&G)

    Do not try to load your old Megasquirt-2 settings into Megasquirt-2.

    If your fuel and spark table are well tuned, then retain them. Otherwise start from scratch as it a new user.
    Follow the steps above in Megasquirt-1 to export and import your tables.
    Although the MS2/Extra code evolved from an early Megasquirt-2 code, many settings are somewhat different and many new features exist.

    Key differences
  • Ignition mode selection is direct, chose you tach input source.
  • Check your spark output! JS10 is standard on MS2/BG, D14 is standard on MS2/Extra
  • The regular wheel decoder requires a single "Tooth #1 angle" instead of skip teeth etc. It automatically calculates the triggers itself and enables the required number of spark outputs depending on how many cylinders you have and your selection of single coil, wasted spark, coil-on-plug or dual-dizzy.
  • PWM idle valve duties work so that 0% means fully closed.
  • Stepper idle valves work so that 0 steps is fully closed.
  • An alternate wall-wetting transient method "EAE" is available.
  • Rev limiting is changed
  • Larger fuel and spark tables.
  • Many new features.
    Note that if your Megasquirt is already wired up and working with MS2/BG code then you should not need to change any of that wiring when moving to MS2/Extra - carefully review your settings for input capture and spark output polarity and bring them across.

    Megasquirt 2 (MS2/Extra) non-sequential

    You can mostly load your MS2/Extra 2.1.0 tune into MS2/Extra 3.x.y

    Key differences
  • Sequential fuel supported (with hardware mods.)
  • Accel enrichment TPSdot values 10x larger.
    Be sure to alter these values in the Acceleration Wizard. Open up the values table for the TPS based AE curve and multiply all values in the rate% column by 10. Find TPSdot threshold and multiply that by 10.
    These are the default settings:
    default AE values
    The PW adder values will need to be tuned to suit your injector size and engine behaviour.
    See also the notes in the next section.

    Megasquirt 2 (3.2.x)

    You can mostly load your MS2/Extra 3.2.x tune into MS2/Extra 3.3.x

    1. MAF There is an exposed MAF calibration implementation like MS3. The old method may still be used if desired.

    2. Barometric correction
    The recommended settings for baro correction in 3.3.x have changed. 100% means un-altered fuelling.
    If you are upgrading from a previous firmware version, to change you settings to the current method:
    a. Basic/Load Settings -> barometric correction is typically all 100% with small adjustments up or down as required.
    b. Tools -> Calibrate MAP/baro
    "At total vacuum" = 0
    "Rate" = 0.
    You must perform steps a AND b. See also the tooltips [?] on those pages.

    3. Air-density
    In previous versions, there was an internal calculation for air density with a tweak curve on top. The new method exclusively uses the adjustment curve. 100% means un-altered fuelling.
    Note: MAT does change air density and the speed-density equation relies on this to estimate intake charge.

    4. Spark output polarity
    The name has been simplified
    "Going High" - was called "Going High (Inverted)"
    "Going Low" - was called "Going Low (Normal)"
    DOUBLE CHECK YOUR SETTING BEFORE CONNECTING COILS.

    5. Boost Control
    To make things more intuitive we have now changed the firmware so that
    - "Normal" is the most typical output polarity setting
    - larger boost duty% numbers mean more boost.

    If you are upgrading from a previous firmware version, then the Boost Output polarity setting will be the opposite. For most users it will now be "Normal".
    This is true whether using open- or closed-loop boost control.

    If you are using closed-loop, you will need to retune your PID settings and alter the sensitivity slider as required.

    Open loop boost users most likely need to set their table so that:
    new_cell_value = 100 - old_cell_value

    Remembering that more duty = more boost.

    6. Serial protocol
    The firmware now uses the "newserial" protocol shared with MS3. This requires compatible tuning software and firmware loaders.
    (Note, it you want to revert to an older firmware version you will need to use the new firmware loader, or use the boot jumper.)

    7. Microsquirt WLED spark output:
    When used as a single coil, the polarity of the output now behaves the same as MS3 such that 'going high' means the output is high during the dwell period.
    DOUBLE CHECK YOUR SETTING BEFORE CONNECTING COILS.

    8. Idle control options.
    If you are upgrading from a previous firmware version, you need to verify:
    -valve type
    -open/closed loop
    -output port

    If you are using closed-loop, you will need to retune your PID settings and alter the sensitivity slider as required.

    9. Rev limiter settings.
    The configuration and behaviour of the rev limiters has changed.
    Verify limiter types and rev limits

    10. CAN expansion:
    Upgrade users will need to verify:
    -all settings
    -remote port settings for flex, knock, nitrous, idle, table-switching

    11. Rotary ignition:
    Upgrade users will need to verify:
    -all settings

    12. Idle Advance:
    Upgrade users will need to verify:
    -all settings

    13. Injector deadtime/PWM:
    Upgrade users will need to verify:
    -PWM on/off setting

    14. Unused settings now removed will give harmless warnings:
    Port injection
    AMCoption
    feature4_0maxdwl, mindwl, vanos
    Old test mode settings


    Download and installation

    The 3.3.2 release code is recommended for all users, it is the current release.
    It available for download as a self extracting file here
    Then follow the next steps to load the firmware onto your Megasquirt. (These notes were written earlier, so the filenames are slightly different.)

    The following is a stepwise approach to downloading and installing firmware.

    1. Install TunerStudioMS if you do not already have it (setup page)
    Version 2.04 or later is required.

    2. Create a folder/directory for MS2. e.g. C:\MS2
    (Use "My Computer" or "Windows Explorer", open Local Disk C: and Create New Folder, name it MS2 ).

    3. Download the firmware zipfile
    Right click and Save Target As into the C:\MS2 folder.

    4. Use My Computer / Windows Explorer and browse to C:\MS2

    5. Right click on the file you saved and choose Extract All

    6. The defaults are ok, and just click next. (Note that Windows needlessly adds a second level of directory.)

    7. You should now find the files have been extracted. Open up the folders until you see this:

    (Note that the exact files might vary by release.)

    8. Ensure you have saved your settings in your existing firmware (if any.)

    9. Exit your tuning software and ensure nothing is using the serial port.

    10. Double click on ms2loader_win32.exe (If you get a security warning, click Run)
    Answer all of the questions by pressing the required key on your keyboard.

    Be careful on the MS2/Microsquirt choice:

  • MS2 = ECUs with an MS2 daughtercard
  • Microsquirt = black plastic cased ECU
  • Microsquirt module = DIYPNP or other ECUs that use the Microsquirt module.
  • MSPNP2 = DIYautotune MSPNP2 only

    Example:

    MegaSquirt-2 Firmware Loader 3.22 2012-07-02
    .
    Remove the fuse powering your ignition coils.
    (Spark outputs may be undefined until you re-load your settings.)
    Press enter to continue...
    .
    Ensure that your Megasquirt/Microsquirt/ECU is
    -connected to your computer
    -has fused 12V power connected.
    Press enter to continue...
    .
    Ensure that no tuning software is running.
    Be sure to Quit the software, not just minimise it..
    Press enter to continue...
    .
    Debug message Level:
    1: Normal
    2: More detail
    3: + serial comms
    4: + the s19 file as parsed
    Selection (default: 1):
    .
    Do you want to scan your serial ports automatically? (y/n default y)
    .
    COM1 MS2/Extra detected
    .
    Do you want to use COM1 (y/n default = y)
    .
    .
    .
    Found firmware files : ms2_extra_us.s19 : ms2_extra.s19
    .
    1: Megasquirt 2.
    2: Microsquirt, Microsquirt module, DIYPNP, MSPNP2.
    .
    .
    File to upload (1, 2, filename, default= ms2_extra.s19): 1
    .
    Preserve sensor calibrations (only for MS2/Extra) (y/n, default: y)?
    .
    ========================================================
    Settings selected:
    Serial port: COM1
    S19 File: ms2_extra.s19
    Debug level: 1
    Jumperless reflash enabled
    Preserving sensors calibrations
    ========================================================
    Press enter to continue...
    Sending jumperless flash command
    Attempting Wakeup...
    Fetching : sensor calibrations
    Erasing main flash!
    Erased.
    Sending firmware to controller...
    [========================================================>]100.0%
    Sending : sensor calibrations
    Wrote 105052 bytes
    *** Settings not preserved. Please re-load your MSQ / tuning settings ***
    Press enter to continue...
    .

    The first time you install firmware on an MS2 it might be necessary to use the boot jumper.
    MS2 without jumperMS2 in normal condition without boot jumper
    Installing jumperInstalling the boot jumper
    MS2 with jumper in placeMS2 with boot jumper in place

    If this takes long than ~45 seconds then you likely need to adjust the port settings of your USB-serial adapter to reduce the latency setting.

    11. Open TunerStudio. If you have an existing project, then you will likely get a message like this:

    In the example shown, the project is configured for signature 2.1.0p, but the Megasquirt has signature 3.0.3r loaded. Here it is best to Work Offline and create a new Project. If you were upgrading from say 3.0.3r to 3.0.3s then it would be better to "Update Project ini"

    12. If you create a new project. You will likely need to use the latest ini file that got extracted into C:\MS2\......

    During creation or via File->Project->ProjectProperties, you can get to the Project Properties menu.
    Tick other, click on the three dots and then browse to the ini file you saved.

    13. Or if you decided to "Update Project ini" then browse to the ini file that got extracted into C:\MS2\......

    14. You should now have TunerStudio running and connected to your Megasquirt / Microsquirt.

    15. Calibrate your TPS, AFR, CLT, MAT, MAP, BARO tables.

    16. Check your project properties / settings are correct.

    17. If applicable reload your settings (MSQ) or create new settings. Note that when starting a tune, you MUST initially work online.
    NEVER start from blank offline or many settings will be scrambled and you will have major troubles getting your engine to run.


    Alpha, beta, release code? What's the difference?

    During code development there are a number of key phase as the firmware evolves. The naming is intended to identify which stage the firmware is at.

    Release - the firmware is considered suitable for general release, features are complete and believed to work as described. New users should be using release code.

    Beta - the firmware is considered suitable for moderate release, features have been completed, but extended testing is required to ensure everything works as described.

    Alpha - anything goes. New features, incomplete code, test code. The latest features will be made available as an alpha release, but it is up to the tester to determine if it works correctly. New users are advised to avoid alpha releases.

    MS2/Extra firmwares
    CodeStatusComment
    1.0.xObsoleteOld release code
    2.0.xObsoleteOld release code
    2.1.xSupercededOld release code
    3.0.xObsoleteOld development code
    3.1.xSupercededOld release code
    3.2.xSupercededOld release code
    3.3.xCurrentThe current release code is 3.3.2


    If you have a question, comment, or suggestion for this FAQ please post it on the forum.

    (C)2009,2010,2011,2012,2013 James Murray