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
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:
- Opening a Stock Calibration
- Reading it from the ECU
- Using our online Base Map Generator (Coming Soon...)
# 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
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 → Writebut 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
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.