Sharing | TSMaster DBC Editor Operation Guide: Functionality Details + Practical Examples

In the field of automotive electronics and CAN bus development, DBC file (Database Container) is the core file defining the CAN communication protocol. Correctly editing and optimizing the DBC file is crucial for the stability of vehicle network communication and the accuracy of data parsing. For engineers who are new to TSMaster, there is still a certain learning threshold on how to quickly master DBC editing skills and apply them to actual project development. In this article, we will systematically introduce the core operation of TSMaster DBC editor from the basic function analysis to the usage example demonstration.

Keywords:TSMaster, DBC, Database


Some of the styles and symbols used in this article can be found in the following table descriptions.

Style Sheet Description
Symbol Table Description

The DBC Editor can be used to create, modify, and save CAN DBC databases as detailed below:

  • Creating a CAN DBC database
  • Open the CAN DBC file to view the nodes, messages, signals, attributes, etc. in the database
  • Editing the contents of the CAN database
  • Export CAN database to DBC file
  • Checking database content for consistency

The DBC Editor contains the following five main functional areas:

  • Menu bar (1)
  • Database overview area (2)
  • Attribute configuration area (3)
  • Node overview and message layout area (4)
  • Log area (5)
DBC Editor Initial Screen
Figure 1: Initial interface of DBC editor

3.1 Menu bar

The menu bar includes seven buttons: New, Open, Save, Save As, Consistency Check, Undo, and Redo, with each icon described below.

Menu bar icon

3.2 Database overview area

The Database Overview area includes the Database Node Search area and the Database Node area.

3.2.1 Database node search area

Enter the node name in the search box to highlight it, as shown below:

Search node highlighting
Figure 2: Search node highlighting

The form icons are described below:

icon (computing)

3.2.2 Classification of database nodes

The database nodes include the following eight categories:

Nodal map of the database overview area
Fig. 3:Node diagram of database overview area
Area NameDescriptive
NetworksDisplays DBC database information, with the first child node being the name of the database.
ECUsDisplays all ECU nodes of the DBC database, and there may be Networks nodes and environment variables underneath the ECU nodes.
Environment VariablesDisplays the environment variables. Right-click the node or its children to create or delete environment variables.
Network NodesDisplays the network nodes with corresponding Tx Messages, Rx Messages, Mapped Tx signals and Mapped Rx signals under each node.Right-click on the node or the next level of child nodes under it to create or delete CAN nodes.
MessagesDisplays all messages with the node name Message_name [Message ID] and the child node of each message is the signal_name contained in the current message. right-click on the node or the child nodes under it to create, delete, or remove a message/signal.
▶ Delete: When right-clicking a node for a message under [Messages], selecting Delete deletes the message in the database and all signals under the message. When right-clicking the node is a signal of a message under [Messages], selecting Delete deletes the signal in the message and the signal under [Signals] is also deleted.

▶ Remove: when right-clicking the node for a message under [Messages], selecting Remove will delete the message in the database, and the signals under the message will be transferred to the [Signals] node. When the right-click node is the signal of the message under [Messages], selecting Remove will delete the signal in the message, and the signal will be transferred to the [Signals] node.

▶ New: When right clicking the node as [Messages], a new telegram will be created. When right-clicking the node as a message under [Messages], or a signal under a message, a new signal is created and the signal is bound to the message.
SignalsDisplays all signals, the node name is signal_name [Message_name] if the signal is bound to a message, otherwise it is the signal name. Signals can be created/deleted when right-clicking on the [Signals] node or the signals under that node.
Value TablesDisplays all packets. When right-clicking the [Value Tables] node or a child node under the node, you can create/delete a value table.
AttributesDisplays all the attributes. Characteristics can be created/deleted when right-clicking the [Attributes] node or a child node under the node.

3.2.3 Database node drag-and-drop functionality

Some of the nodes in the database overview area support the drag-and-drop function. The nodes that support the drag-and-drop function are as follows.

▲ Signal Drag and Drop to Message As shown in the following figure, when you drag and drop the signal New_Signal_0 to New_Message_0, it will add the signal New_Signal_0 under New_Message_0.

Signal Drag and Drop to Message
Figure 4: Signal Drag and Drop to Message (Scenario 1)

If the signal is already bound to a message, dragging and dropping the signal to a new message in this case copies a signal with the same name.

Signal Drag and Drop to Message
Figure 5: Signal Drag and Drop to Message (Scenario 2)

▲ The message is dragged and dropped to the node as shown in the figure below. when you drag and drop the signal New_Message_0 to New_Network_0 or [Tx Messages] under it.

Signal Drag and Drop to Message
Figure 6: Drag and drop of the message to the node

▲ Signal Drag and drop the signal to the node, as shown in the following figure, when you drag and drop the signal New_Signal_0 under the signal New_Messages_0 to New_Network_0 or [Mapped Rx Signals] under it, it will add the signal New_Signal_0 under the [Mapped Rx Signals], and the signal New_ Messages_0 is added under [Rx Messages].

Signal Drag and Drop to Message
Figure 7: Signal drag and drop to node

▲Environment variables are dragged and dropped to ECUs as shown in the figure below. When the environment variable New_Envar_0 is dragged and dropped to New_Network_0 under ECUs or [Environment Variables] under it, it will be added to [Environment Variables].

Signal Drag and Drop to Message
Figure 8: Environment variable drag and drop to ECU

3.3 Attribute Configuration Area

The attribute configuration area consists of two parts: the database file information display area and the attribute configuration area.

3.3.1 Database file information display area

When a DBC database is not imported, this area prompts for information about importing or creating a DBC database. When a DBC database is created or imported, this area displays the path to the DBC file. When modifications are made to the DBC database, an additional "*" is added to the DBC file path. The "*" disappears when the modifications are completely withdrawn, or when the file is saved as.

Show file path after importing DBC database
Figure 9:Showing file path after importing DBC database

3.3.2 Database properties

You can configure the name of the database, select the database type, and configure the values of the properties.

causalityDescriptive
Database typeCAN/CAN FD can be selected.
marginal notesExplanatory text for the database.
Database Properties Page
Figure 10: Database Properties Page

3.3.3 Node Properties

You can configure the name of the node, its address, and the values of the configuration attributes.

causalityDescriptive
addressCurrently displayed only, the address needs to be modified in the NmStationAddress property.
marginal notesExplanatory text for the node.
Node Properties Page
Figure 11: Node properties page

3.3.4 Message properties

Configure the attributes of the message, the specific attribute fields and their descriptions are as follows.

causalityDescriptive
name (of a thing)The name of the message; renamed message names are not allowed.
IDMessage ID, in hexadecimal, duplicate IDs are not allowed.
DLCThe number of bytes in the message, the number of bytes for the J1939 protocol is entered manually and the others are selected.
cyclicalityThe message sending cycle, which is changed by the GenMsgCycleTime property, cannot be modified if this property is not defined.
typologyThe CAN protocols are available as CAN Standard and CAN Extended.
The CAN FD protocol is available as CAN FD Standard and CAN FD Extended.
The J1939 protocol is available in CAN Standard, CAN Extended and J1939.
marginal notesMessage annotations.
sender nodeSelects the node that sends the message.
property tableThe value of the configuration property.
Additional InformationWhen the protocol is J1939, the information of PGN, Priority, Source, Destination is displayed.
Message attribute page (not J1939)
Figure 12: Message attribute page (not J1939)
Message attribute page (J1939)
Figure 13: Message attribute page (J1939)

3.3.5 Signal Properties

Configure the attributes of the signal, the specific attribute fields and their descriptions are listed below.

Properties/ButtonsDescriptive
name (of a thing)Signal name, [Signals] / Signals with the same name are not allowed under the same message.
UnitSignal unit, as a string.
magnifying factorSignal scaling factor, used to calculate physical values.
Physical Value = Amplification Factor * Original Signal Value + Offset
offsetSignal offset for calculating physical values.
lengthsSignal length, not greater than the number of bytes in the message * 8.
starting positionThe start bit of the signal in the message, not greater than the number of bytes in the message * 8.
numeric type (math.)Unsigned, signed, floating-point, double-precision floating-point can be selected.
marginal notesSignal Annotation Description.
Minimum ValueSignal Min.
Maximum ValueSignal Max.
Calculate Maximum and Minimum ButtonsCalculates the maximum and minimum values of the signal.
Maximum = amplification factor * (2^length-1) - offset
Minimum = Offset
numeric tableSelect the table of values used to encode the signal.
byte sequenceIntel or Motorola, the start bit and length are automatically calculated and changed when switching.
Multiplexing typeSelects the multiplexing type of the signal.
▶ Signal: Non-multiplexed
▶ Multiplexer: The signal acts as a multiplexer switch at this time
▶ Multiplexed signals: The value or range corresponding to the multiplexer switch of the signal is displayed in this case.
multiplexed valueThe value or range corresponding to the multiplexer switch of the signal.
property tableAttribute display and editing.
receiver nodeEdit the ECU node that receives this signal, and when it is selected, a tree node for the current signal will be added under [Mapped Rx signals] for the corresponding ECU node. If the message of this signal has not been added before, the corresponding message node will also be added under [Rx Messages].
Signal Properties page (non-signal multiplexing)
Fig. 14: Signal attribute page (non-signal multiplexing)
Signal Properties Page (Signal Multiplexing)
Fig. 15: Signal properties page (signal multiplexing)

3.3.6 Numeric Table Properties

Numeric tables are used to encode signals or environment variables. The properties of the value table and their descriptions are listed below.

causalityDescriptive
name (of a thing)Numeric table names that are unique. Two numeric table names with the same name are not allowed in the same DBC database.
marginal notesRemarks The signal and its corresponding message name using the current value table cannot be modified.
numeric code tableSignal coding, right-click to add and delete coded items, click the corresponding cell to modify the content.
Numeric Table Property Pages
Figure 16: Numeric Table Property Page

3.3.7 Characteristic properties

Features are used to bind additional properties to signals, messages, nodes, databases, and environment variables, etc. The editable property fields and descriptions are listed below.

causalityDescriptive
name (of a thing)Feature name. Renamed feature names are not allowed.
Target type- Database: for database, selecting this item will bind the property to a database.
- Node: for ECU nodes, selecting this item will bind this property to the node.
- Message: Used for messages. Selecting this item will bind the attribute to the message.
- Signal: Used for signals, selecting this item binds the property to a signal.
- Environment Variables: used for environment variables, selecting this item will bind the property to environment variables.
- ECU-Environmental Variables: environment variables for the ECU nodes that are bound.
- Node-Send Message: the message used to bind the sending node.
- Node-Receive Signal: used to bind the signal of the receiving node.
numeric type (math.)Selecting Integer, Floating Point, or Hex activates the Minimum and Maximum edit boxes, and selecting Enumeration activates the Enumeration Table edit box.
Minimum ValueThe minimum value of the attribute.
Maximum ValueThe maximum value of the attribute.
default valueThe default value of the attribute, select box when enumeration is selected, input box otherwise.
enumeration tableUsed to display and edit enumeration items.
Characteristics property page (Maximum and minimum value edit boxes not activated)
Figure 17: Characteristic property page (Maximum and minimum value edit boxes not activated)
Characteristic property page (activates the Maximum and Minimum edit boxes)
Fig. 18: Characteristic property page (activation of the Maximum and Minimum values edit box)
technical articles 20250707 21 DBC Editor
Figure 19: Characterization properties page (activation enumeration table)

3.3.8 Environment variable properties

Configure the properties of the environment variable with the following configurable property fields and descriptions.

causalityDescriptive
name (of a thing)environment variable names, no renamed environment variable names are allowed.
numeric type (math.)Optional integer, floating-point, and string data types.
Type of accessRead and write permissions for environment variables:
▪ Unlimited
▪ Read-only
▪ Write only
reading and writing
UnitEnvironment variable units.
numeric tableand signal sharing.
marginal notesDescription of environment variables.
Minimum ValueEnvironment variable min.
Maximum ValueMaximum value of the environment variable.
starting valueThe initial value of the environment variable.
property tableAttribute display and editing.
Environment Variable Properties Page
Figure 20: Environment Variable Properties Page

3.4 Node overview and message layout area

3.4.1 Node Overview

Clicking on a different node displays the preview content under the current node in the overview area.

technical articles 20250707 23 DBC Editor
Figure 21: Message Overview Page

3.4.2 Message layout

The Message Layout area can show the positional arrangement and length of signals in the message. The layout can only be selected when the selected node is a message, at which time the Layout button is in the active state, otherwise it is in the inactive state.

technical articles 20250707 24 DBC Editor
Figure 22: Message Layout Page

▲ Multiplexer: Select the multiplexer name for the message, is unused/no multiplexer.

▲ Multiplexed Value: Select the multiplexed value under Multiplexer, is unused/no multiplexed value.

By selecting different multiplexers and multiplexing values, the corresponding signal arrangement is displayed in the layout.

3.5 Log area

Displays information about the status of the current operation and the completeness of the database information, including the following 3 types.

▲ General Information: Information used to indicate the current operation status.

▲ Warning message: a message indicating that the current operation or database has an exception but constitutes a serious error.

▲ Error Message: A message indicating that there is a serious error in the current operation or database.

technical articles 20250707 25 DBC Editor
Figure 23: Log Area Page

For consistency-checked log messages, when you tap the corresponding row, you will jump to the database node corresponding to that row of information.


4.1 Creating a DBC database

The examples in this section demonstrate the creation of a CAN database, including the creation of CAN nodes, messages, signals, and environment variables, binding signals to messages, adding transmit nodes to messages, adding access nodes to environment variables, and more.

Step 1:To create a CAN DBC database, click the [New] button on the menu bar.

Step 2:Select the database template. In the DBC template selection box that pops up, select the type of DBC data to be created to support CAN, CANFD, J1939, and then click [Confirm].

technical articles 20250707 26 DBC Editor
Figure 24: DBC Template Selection Page

Step 3:Select/enter the DBC file path. A new DBC file will not be created until the DBC database is saved, or the original DBC file is overwritten.

Step 4:Right-click [Network Nodes] to create the node New_Network_0.

technical articles 20250707 27 DBC Editor
Fig. 25: New CAN network nodes

Step 5:Right-click [Messages] to create the message New_Message_0.

technical articles 20250707 28 DBC Editor
Figure 26:New CAN message

Step 6:Right-click [Signals] to create New_Signal_0.

technical articles 20250707 29 DBC Editor
Figure 27: New CAN signal

Step 7:Right-click [Environment Variables] and create New_Envar_0

technical articles 20250707 30 DBC Editor
Figure 28: New environment variable signaling

Step 8:In the tree structure on the left, drag and drop New_Signal_0 to New_Message_0, and then drag and drop New_Message_0 to New_Network_0. Add an access node for the environment variable New_Envar_0 by dragging and dropping New_Envar_0 to either the New_Network_0 node under ECUs or to New_Network_0's [ Environment Variables] node to add an access node for the environment variable New_Envar_0.

technical articles 20250707 31 DBC Editor
Figure 29: Binding a signal to a message, adding a send node to a message and adding an access node to an environment variable

Step 9:Click the [Save] button.

4.2 Editing the DBC database

The examples in this section demonstrate importing and editing a CAN database and how to create tables of values and characteristics.

Step 1:Import DBC file. Click the [Open] button on the menu bar to import the DBC file saved in chapter 4.1.

Step 2:Modify CAN nodes, messages, signals, and environment variable names.

▲ Modify the CAN node name. Click New_Network_0 under [ECUs]/[Network Nodes], find the [Name] edit box in the attribute editing area on the right side, enter ecu0 and press the Enter key. For other attribute fields in this interface, you can modify them in a similar way.

technical articles 20250707 32 DBC Editor
Figure 30:Modifying the CAN network node name

▲ Modify the CAN message name. Click the message node under [Messages], find the [Name] input box in the attribute editing area, input msg0 and enter. For other attribute fields in this interface, you can modify them in a similar way.

technical articles 20250707 33 DBC Editor
Figure 31: Modifying the CAN message name

▲ Modify the CAN signal name. Click the signal node under [Signals] / signal node in the message under [Messages], find the [Name] input box in the attribute editing area, input sig0 and enter. For other attribute fields in this interface, you can modify them in a similar way.

technical articles 20250707 34 DBC Editor
Figure 32: Modifying the CAN signal name

▲ Modify the name of the environment variable. Click on the Environment Variables node under [Environment Variables], find the [Name] input box in the property edit area, type env0 and enter. You can also modify the other attribute fields in this interface in a similar way.

technical articles 20250707 35 DBC Editor
Figure 33: Changing the name of an environment variable

Step 3:Create a value table. Right-click [Value Table] and click [New], then click New in the Value-Description table in the property editing interface to create 2 pairs of Value-Description fields.

technical articles 20250707 36 DBC Editor
Figure 34: Creating a table of values

Step 4:Add a value table for the signal/environment variable. Click on the Signal or Environment Variables node, find the [Table of Values] drop-down box in the Properties edit area, and select New_Vt_0.

technical articles 20250707 37 DBC Editor
Figure 35: Adding a table of values for environment variables and signals

Step 5:Create message characteristics. Right-click [Attributes] and click [New] to create the attribute. In the attribute edit area, change the name to msgAttr0, the target type to message, and other fields to default.

technical articles 20250707 38 DBC Editor
Figure 36:Creating Message Characteristics

At this time, click on the msg0 node under [Messages], you can view the value of msgAttr0 in the attribute editing area, and you can also edit msgAttr0 in this area.

technical articles 20250707 39 DBC Editor
Figure 37:Message Characteristics Viewing and Editing Interface

Other targets such as signals, environment variables, and signals, messages, and environment variables of bound nodes can be bound by selecting the [Target Type] drop-down box. Characteristics also support different value types, which are selected via the [Value Type] drop-down box.

Step 6:When editing is complete, save this DBC database to a DBC file.

Which feature of TSMaster are you most interested in? Or what problems have you encountered in practical applications?

Welcome to share your experience or questions in the comment section, any ideas or suggestions can also be comment section message interaction, will have the opportunity to win the TOSUN mystery gift bag Oh ~!

Tip:
1. Software download:
Click on the software download link below to download and install directly, beta version is recommended:

2. Software upgrades:
You can check for upgrades to the latest version within the software, provided that your computer has an Internet connection.

Note: TOSUN Technical Support Email:support@tosunai.cnWe welcome inquiries! (Company and contact information must be indicated)

发表回复

en_USEnglish
×
×

产品入口: 产品添加到购物车

XML 地图