BO_ msgId msgName : dlc transmitterNode ; SG_ sigName : startBit|len@byteOrder sign (factor,offset) [min|max] "unit" receivers ;
BA_DEF_ BU_ “Vendor” STRING; BA_DEF_ BO_ “GenMsgCycleTime” INT 0 65535; BA_DEF_ SG_ “MySignalAttribute” ENUM “Low”,“Medium”,“High”; BA_DEF_DEF_ “AttrName” default_value; Example:
BS_: ;
BA_ “AttrName” OBJECT_TYPE object_id value; Examples:
BA_ “Vendor” BU_ ECU_EMS “Bosch”; BA_ “GenMsgCycleTime” BO_ 100 50; BA_ “MySignalAttribute” SG_ 100 EngineSpeed “High”; Maps numeric raw values to human‑readable strings for a signal. Syntax: dbc file format documentation
| 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 |
VAL_ MessageID SignalName Value1 "Text1" Value2 "Text2" ...; Example: BO_ msgId msgName : dlc transmitterNode ; SG_
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: