See also the calibration page to understand the concept of calibration parameters. The Calibration Editor window provides a means to examine, edit, compare and combine values stored in different calibration parameter files.
The Calibration Editor automatically refers to any parameter files that you already have listed for your ECU, and it is launched from the ECU Window by clicking the “Cal Editor…” button:
The Calibration Editor then appears listing the values for all parameters in the calibration area of memory:
The columns are as follows:
- Address: the base address for that parameter in memory. Click to open a live memory window at that address.
- Base: the base values typically loaded from a hex or S-record image file which originate from the original software build.
- Live: the current value as read from ECU memory, or PC file or scratchpad memory if the ECU is offline.
- bench_cal.c and vehicle_cal.c: in this example, the values currently defined by these parameter files, including any changes made in this window or externally in Lookup windows launched from it.
- Name: the parameter name with “expansion boxes” [+] to open up structures and arrays to access elements.
- Units and Description: if defined in an .a2l file.
Clicking on the header of a parameter file column resorts the table so that the parameters with values defined in that file are listed first.
Yellow highlighting shows values that differ between selected parameter files (see more below).
Note that OpenECU Calibrator parameter files generally contain the values only of the parameters that have been altered from the base values. Therefore many value cells will be blank, showing that the file has no entry for that parameter, and the base value will be used instead in operations like flash reprogramming.
Scalar parameters (including array and structure elements) can be edited directly. A dropdown box is automatically provided for enum values. Multiple cells can be selected before typing a value to set several parameters at once.
Parameter values can also be deleted, leaving empty cells. This means that the file will no longer define a value for that parameter and the base value will be used instead in any ECU operations with this file.
The Live column can also be edited, resulting in immediate download to the ECU if it is online. Values cannot be deleted in this column.
Right-click on the window for more options such as selecting whole columns and reverting values to the base file value (Ctrl-F).
Drag and Drop
Values can be selected from any of the value columns and dragged into the column for a parameter file. This copies the non-blank values in the target column, but does not overwrite any existing values if a blank cell is dragged (e.g. in a partially-populated array).
Dragging a top-level item such as an array or structure copies all of the values it contains, even if they are not currently visible in the window. By default, the axis breakpoint array values are also copied if a known lookup table is dragged (see option below).
The dropdown boxes for enums and the “Edit…” button which appears for lookup tables are superimposed with some space still visible in the value cell (if there is room). Click on the remaining space not covered by the superimposed control to drag an enum or lookup table.
Lookup Table Editing
Lookup table values can be edited directly in this window. However, it is usually more convenient to use a Lookup window which can be launched automatically. Moving the mouse pointer over the value cell for a known lookup table produces an “Edit…” button:
Clicking this opens a lookup window for that table:
All the tables for one parameter file are opened as tabs in the same Lookup window, but the values for a different parameter file (or live or base values) are opened in a different window, which can be arranged alongside for comparison.
These automatically-opened lookup windows are not saved as part of the workspace and are closed automatically if the Calibration Editor window is closed or if the ECU file list changes or symbols are reloaded.
The lower part of the window lists the parameter files with some additional buttons and information:
- Save: saves the parameters to disk, overwriting any existing file of this name.
- Load: reloads the values from disk, discarding any changes made sincce the last load.
- Prune: discards any unnecessary parameter values which match the base value for the ECU, which would not normally be saved anyway in an Upload and Save operation. If the file has the option set to save whole arrays and structs (not the usual default), then base values are copied to fill in any part-populated objects to allow the file to be saved cleanly.
- Filename: hover over this cell to see the full file path. You may drag from here to an external text editor to open the file. Also, selecting multiple files here (using Shift- or Ctrl-click) allows differences to be highlighted (see below).
- Status: displays any errors or warnings. Hover over this to see the complete text.
Options, Controls and Diffs
A number of options appear at the bottom of the window:
- Help: opens this page.
- Show Diffs: if this is checked and two or more parameter files are selected using Ctrl- or Shift-click, any values that differ between those files are higlighed in yellow (see example below).
- Copy Axes: if this is checked, then dragging and dropping the cell representing a whole known lookup table into a parameter file column will also copy the breakpoint axis array values from the same source.
- Names: start typing a name in this box to filter the parameter list to show only names which match. You may use * and ? wildcards.
- Regexps: for more advanced filtering, check this option to allow the use of regular expressions in the Names box.
- Tables: check this to list known lookup tables, or uncheck to hide them from the list.
- Others: check this to list non-table parameters (including arrays and structures), or uncheck to hide them from the list.
The yellow highlighting of differences is shown below: