CM_ "BU_ ECU_EMS" "Engine control module"; CM_ "BO_ 100" "Main engine data"; CM_ "SG_ 100 EngineSpeed" "Engine rotational speed"; Attributes allow extending the database with user‑defined metadata. BA_DEF_ – Define an attribute Syntax:

BA_ “AttrName” OBJECT_TYPE object_id value; Examples:

BO_ 100 EngineData: 8 ECU_EMS Inside a BO_ block, each signal is defined with the SG_ keyword. Syntax (all on one line):

| Field | Description | Example | |-------|-------------|---------| | SignalName | Unique within the message. | EngineSpeed | | StartBit | Bit index where the signal begins. CAN bit numbering can be or Motorola (big‑endian) – see below. | 24 | | Length | Number of bits (1–64). | 16 | | ByteOrder | 0 = Intel (little‑endian, LSB first), 1 = Motorola (big‑endian, MSB first). | 0 | | ValueType | + = unsigned, - = signed (two’s complement). | + | | Factor | Scaling factor (float). Physical = (Raw * Factor) + Offset. | 0.125 | | Offset | Offset (float). | 0 | | Min | Minimum physical value (optional, but brackets required). | 0 | | Max | Maximum physical value (optional). | 8000 | | Unit | String, may be empty "" . | "rpm" | | Receivers | One or more node names from BU_: . If none, use Vector__XXX . | TCU_EMS,BCM |

BO_ msgId msgName : dlc transmitterNode ; SG_ sigName : startBit|len@byteOrder sign (factor,offset) [min|max] "unit" receivers ;

BS_: ;

BU_: ECU_Powertrain ECU_Body Gateway DiagnosticTool