Custom RAM Logging

Authorized tuners and beta testers can log custom RAM addresses through the MG Flasher app.

How does it work

When calculating data to be used for calibration maps/tables, ECUs/DMEs store intermediate calculations in RAM. If a tuner knows the address, size, and conversion factor of these parameters, they can be very beneficial to the tuning process. This information can be found in ASAP2 documents (A2Ls/DAMOS files) which are rare and expensive. MG Flasher’s logger can parse data from an uploaded excel document which contains the required RAM information and append it to the output logs.

Excel Document

The uploaded excel document must be formatted a specific way in order for the Logger to correctly parse the data. There are four spreadsheets that may be extended: “Definitions”, “Display”, “Locators” and “Unit Conversions”. Information about each sheet can be found below. Here is an attached example excel document that can be modified and used with the MG Flasher Logger:

Definitions Spreadsheet

This sheet contains information about how the given parameters should be used.

  • Code - (Required) Must contain unique parameter names that the app will use to distinguish different logging parameters (Linked with “Display” and “Locator” entries).

  • Group - (Required) Linked to the “Unit Conversions” entries to select what kind of conversion factor should be used. When unsure, or irrelevant, select “StaticUnits”.

  • Name - (Required) The displayed name on the MG Flasher parameter selection page.

  • A2L Measurement - (Optional) Contains original parameter names from the ASAP2 document.

  • Unit - (Optional) Designated physical unit of measurement to be used with the given logging parameter.

  • Initially Selected - (Required) Should the parameter be added to logging immediately after uploading, or should it be selected manually after upload. Valid entries: “Y” or “N”.

  • Slave Initially Selected - (Required) Same as “Initially Selected” but applied to Slave ECUs/DMEs (on cars with two control units). Valid entries: “Y” or “N”.

  • Engine Filter - (Optional) Can be applied for specific engines only. Format: “StartsWith([x], 'B58')” where B58 can be replaced with other engines.

  • ECU Filter - (Optional) Used to apply logging parameters only for specific architectures. Format: “StartsWith([x], 'AURIX')” where AURIX can be replaced with PPC. PPC is for generation 1 B-Series engines, AURIX is for generation 2 series engines.

  • Developer Mode - (Optional) Set visibility for developers (MG Flasher team only). Valid entries: “Y” or “N”.

Display Spreadsheet

Entries here manage how the display gauges will present the data in real-time.

  • Code - (Required) Must contain unique parameter names that the app will use to distinguish different logging parameters (Linked with “Definitions” and “Locator” entries).

  • Precision - (Required) How many decimal points should be displayed for this parameter.

  • Min - (Required) Minimum value presented on gauge.

  • Max - (Required) Maximum value presented on gauge.

  • Initially Visible - (Required) Should the parameter be added to the display immediately after uploading, or should it be selected manually after upload. Valid entries: “Y” or “N”.

  • Order - (Optional) When using the automatic organization of display gauges, this value dictates which item should be displayed at the top left corner first.

Locators Spreadsheet

  • Code - (Required) Must contain unique parameter names that the app will use to distinguish different logging parameters (Linked with “Definitions” and “Display” entries).

  • A2L - (Optional if “ECU Param ID” is defined, Required otherwise) This value is used to distinguish which ECU software version will work with this parameter. To have the same logging parameter used on different software version, created duplicate entries with different A2L values. Generally, the address changes when the A2L changes. Cannot be defined at the same time as “ECU Param Id”.

  • Custom Code Version - (Optional) Limit the usage of this logging parameter to a specific custom code version.

  • ECU Param Id - (Optional if “A2L” and “ECU Param Address” is defined, Required otherwise) A global id used by multiple different software versions (A2Ls). Cannot be defined at the same time as “A2L” and “ECU Param Address”.

  • Precision - (Required) How many decimal points should be used for this parameter (in the log file).

  • Factor - (Required) Multiplication factor to convert from the ECU value to a physical value.

  • Offset - (Required) Summation component to convert from the ECU value to a physical value.

  • Data Length - (Required) How many bytes does this parameter require to formulate a physical value.

  • Data Type - (Required) Dictates if the value is stored as a signed or unsigned value and its data length in bits. Valid entries: “byte”, “ubyte”, “sbyte”, “int16”, “uint16”, “int32”, “uint32”

  • ECU Param Address - (Optional if “ECU Param ID” is defined, Required otherwise) Specifies where in the ECU’s RAM the logging parameter located. Cannot be defined at the same time as “ECU Param Id”.

Unit Conversions Spreadsheet

All unit conversions are defined here. The entries in the example excel are being actively used in the MG Flasher app. you can also define your own.

  • Group - (Required) Linked to the “Definitions” entries to select what kind of conversion factor should be used.

  • Source Unit - (Required) The unit we are converting “from”.

  • Destination Unit - (Required) The unit we are converting “to”.

  • Destination Precision - (Required) How many decimal places should be used for the final result.

  • Conversion Expression - (Required) How should the values be converted.

How to upload new parameters

From the Logger’s main page, go to the “parameter settings” page via context menu in the top right corner. You’ll be presented with a list of parameters that can be marked for logging. Near the bottom of the page, select “Preferences” which will bring you to the page shown on the right. Select “Upload” next to Upload custom log params and select the appropriate excel document. There will be a confirmation message if the upload was successful. Press “Save” to ensure your changes are stored. The app should now have access to your custom RAM parameters that were in the uploaded excel document.

Logging Custom Parameters

Once the new excel has been uploaded to the Logger, you should see the newly added parameters on the list of selectable parameters under the “Master” and “Slave” (if used on a dual ECU vehicle) tabs. Select the newly added parameters that you wish to log and press “Save” to store your selection.

If the logger is frozen after starting to log, recheck your excel document for valid data. The ECU may reject certain RAM address ranges due to internal security concerns

MG Flasher @ 2021