# Tuning

A tune contains settings that are used by an ECU to control how an engine runs. Some examples of settings contained in a tune:

  • Fuel Ratio Targets
  • Ignition Advance
  • Rev Limiter

projectLAMBDA is able to edit tunes and load them onto an ECU to change how the engine runs. This can be to increase power, fuel economy, or enable the engine to work properly with modifications.

# Tune Files

Tunes are stored as XML text files with a .tune extension.

Using a text format has advantages over a binary format:

  • No chance to brick an ECU with a corrupted binary file
  • Smaller file size, easily compressed for even more space saving
  • Human readability
  • Adapts better to software and firmware updates
  • Allows use of other text-based tools such as Git source control

# Creating a Tune

Tunes can be created by:

# Stock Calibrations

projectLAMBDA contains a collection of stock firmware calibrations for your convenience. These can be used as a starting point for a new tune or as a reference for an ECU's original settings.

To create a new tune containing a stock calibration use the File → New command. This will display a selection window where you can choose the calibration by vehicle model.

Some vehicles have multiple calibrations available. This is because revisions were created to fix various issues after the vehicle was built. If you choose a calibration that has been superceded, it will automatically be updated to the latest available revision.

# Reading an ECU

You can read the current tune stored in your ECU's flash memory using the Tuning → Read command.


It is always a good idea to read the ECU the first time you tune it. This tells you if the current tune has been modified or not.

There is also a Tuning → Read RAM command. This reads the ECU's working (temporary) memory instead of its flash memory. Upon completion, you will be asked to save the read memory as a binary file. However, this command is not normally used and is only included for debugging purposes.

# Unsupported ECUS

If your ECU isn't supported by projectLAMBDA yet, the read command will do its best to read the entire firmware as a binary file. If you send us this file, we will do our best to add support for your ECU. Support Contact Form

# Editing

Once you have created, read, or opened a tune, you will have the ability to edit it. The sidebar will display a list of settings and maps in the tune available for editing.

Click on a setting or map to open it in the Main View. Now you can change its values.

You can change all values of a map at once by selecting the cells then typing in a new value. There are also some math functions available in the `Edit' command menu that will operate on one or more selected cells.

Some maps also allow you to change the index values. These can be edited the same way as normal map values. This can be useful if you need to extend the range of the map, for example for higher RPM or boost.

# Writing to an ECU license required

To actually change the tune on your ECU, you will need to write the tune to its flash memory. The following commands work with the ECU's flash memory:

  • Tuning → Verify - Checks if the tune you have open is the same as the tune on the ECU.
  • Tuning → Write - Writes the currently open tune to the ECU. This command requires your ECU to be licensed for it to work.


If the write gets interrupted or fails, do not turn off the ignition switch until it is fixed. Some ECUs cannot be recovered after the ignition is turned off while in a partially programmed state. If this happens, the ECU will need to be replaced.

  • Tuning → Test Write - Simulates Tuning → Write but does not actually change the ECU's flash memory.


The first time you write to an ECU, try Tuning → Test Write first to make sure everything is set up properly.

# Live Tuning license required

We have modified some ECU firmware versions to enable Live Tuning. This allows some tuning maps to be stored in the ECU's RAM instead of its flash memory. This means you can change the maps on the ECU while the engine is running.

This convenient feature greatly speeds up the tuning process when you need to edit and test lots of adjustments.

To enable Live Tuning, you will need to use Tuning → Write to update the ECU's firmware beforehand.

Since ECUs have a finite amount of RAM, there isn't enough space to Live Tune every map in a tune. Maps that work with Live Tuning will have a ⚡️ icon next to them in the Side Bar.

  • Tuning → Live Read - Reads live tuning maps from the ECU. This will overwrite maps in the currently open tune.
  • Tuning → Live Write - Writes live tuning maps to the ECU.

Live Tuning changes will revert back to the maps stored in flash memory if the ECU is reset by the Logging → Reset command or if the battery is disconnected long enough to trigger an ECU memory reset.


When you are finished making Live Tuning changes, remember to use Tuning → Write to also write those changes to the ECU's flash memory.

Last Updated: 11/9/2019, 12:19:42 AM