Skip to main content

Create/Edit Record Layouts

Record Layouts specify data structures in the ECU memory.

To create or edit Record Layouts in an A2L file use the Create or Edit tools from the Edit group in the main toolbar while the Record Layouts tab is active in the A2L file area. A dialog will open similar to that shown in Figure 1.

EditRecordLayout

Figure 1: The dialog for creating or editing A2L file Record Layouts.

Refer to Table 1 below for a brief description of each property. Use the OK button to close the dialog and save any changes. Use the Cancel button to close the dialog without saving any changes.

Table 1: Record Layout Properties

PropertyDescription
NameUnique identifier of the Record Layout.

Here are the main requirements for this field:

  • Max overall length = 1024 characters.
  • Max partial string length = 128 characters.
  • Allowed characters: A - Z, a - z, 0 - 9, underscores, periods, and brackets [ ].
  • Must NOT contain spaces.
  • First character must be a letter or an underscore.
  • Any brackets must occur in pairs at the end of a partial string.
  • Any bracket pairs must surround a number or string.
  • Name is case sensitive. (i.e. "b" and "B" are considered unique)

If in doubt about valid names, please refer to the ASAM specifications.
DescriptionComment or description.
FNC_VALUESIf enabled, the Record Layout uses enabled properties to define how values are deposited in ECU memory.
PositionStart position of values in the record. If the Index Mode uses one of the Alternate options the position determines the ordering of values and axis points.
Data TypeNumber of bytes dedicated to each value and how those bytes are interpreted.

  • UBYTE - 1 byte unsigned integer
  • SBYTE - 1 byte signed integer
  • UWORD - 2 byte unsigned integer
  • SWORD - 2 byte signed integer
  • ULONG - 4 byte unsigned integer
  • SLONG - 4 byte signed integer
  • FLOAT32_IEEE - 4 byte (32 bit) floating point IEEE format
  • FLOAT64_IEEE - 8 byte (64 bit) floating point IEEE format
Index ModeDetermines how the values of curves (arrays) or maps (tables) are stored in ECU memory. For example consider these 2 curves, a map, and an X-Axis:

a1 a2 a3 == Example of curve a.
b1 b2 b3 == Example of curve b with common X-axis.

Y1 a11 a12 a13 == Example of map a with Y-Axis points.
Y2 a21 a22 a23

X1 X2 X3 == X-Axis points common to examples above.

  • COLUMN_DIR - store values by column. Applying this mode gives:
    Curve 'a' (a1, a2, a3)
    Map 'a' (a11, a21, a12, a22, a13, a23)


  • ROW_DIR - store values by row. Applying this mode gives:
    Curve 'a' (a1, a2, a3)
    Map 'a' (a11, a12, a13, a21, a22, a23)


  • ALTERNATE_WITH_X - store by alternating between column values and X-axis point. Applying this mode gives:
    Curve 'a' (a1, X1, a2, X2, a3, X3)
    Map 'a' (a11, a21, X1, a12, a22, X2, a13, a23, X3)


  • ALTERNATE_WITH_Y - store by alternating between row values and Y-axis point. Applying this mode gives:
    Curve 'a' (not applicable)
    Map 'a' (a11, a12, a13, Y1, a21, a22, a23, Y2)


  • ALTERNATE_CURVES - used for multiple curves with a common axis. Store by alternating between column values from each curve and the common X-axis point. Applying this mode gives:
    Curves 'a' and 'b' (a1, b1, X1, a2, b2, X2, a3, b3, X3)

Map (not allowed)
Address TypeThere are 4 types of memory addressing:
  • PBYTE - memory location has a 1 byte pointer to the value.
  • PWORD - memory location has a 2 byte pointer to the value.
  • PLONG - memory location has a 4 byte pointer to the value.
  • DIRECT - memory location has the first value and remaining values follow with incrementing address.
AXIS_PTS_XIf enabled, the Record Layout defines how X-axis points are deposited in ECU memory.
PositionSame description as above for the FNC_VALUES Position.
Data TypeSame description as above for the FNC_VALUES Data Type.
Index OrderDetermines the axis point sequence in the memory.
  • INDEX_INCR - increasing index with increasing address.
  • INDEX_DECR - decreasing index with increasing address.
Address TypeSame description as above for the FNC_VALUES Address Type.