Dbc File Format: Documentation
NS_ : NS_DESC_ CM_ BA_DEF_ BA_ VAL_ ... Most tools ignore the exact list, but it should be present. The typical list is:
VERSION "1.2" If no version, use:
BO_ 100 EngineData: 8 ECU_EMS Inside a BO_ block, each signal is defined with the SG_ keyword. Syntax (all on one line): dbc file format documentation
SG_ SignalName : StartBit | Length @ ByteOrder ValueType (Factor,Offset) [Min|Max] "Unit" Receiver1,Receiver2,...,ReceiverN Let’s break down each field:
BU_: NODE_NAME_1 NODE_NAME_2 ... NODE_NAME_N Example: NS_ : NS_DESC_ CM_ BA_DEF_ BA_ VAL_
| 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 |
BA_ “AttrName” OBJECT_TYPE object_id value; Examples: Syntax (all on one line): SG_ SignalName :
BS_: