Stream Real-Time DBC Decoded CAN Data (Wireshark, J1939)

Want to stream human-readable CAN bus data in real-time?

This intro shows how you can use the CLX000 CAN interface to stream 'physical values'. The real-time CAN data is decoded in Wireshark using CAN DBC files (e.g. a J1939 DBC).

Note: The CLX000 now also supports streaming via the popular SavvyCAN tool.


What is a CAN DBC file?

A CAN DBC file (CAN database) is a text file that contains information for decoding raw CAN data from an application to 'physical values' (human-readable form).

By default, a CAN logger records raw CAN data - see e.g. below CAN frame (HEX):

CAN ID    Data bytes
0CF00400  FF FF FF 68 13 FF FF FF

If you have a CAN DBC that contains decoding rules for this CAN ID, you can 'extract' parameters (signals) from the data - e.g. the info and physical value for EngineSpeed:

Message  Signal       Value  Unit
EEC1     EngineSpeed  621    rpm

J1939 PGN SPN Message DBC Truck Heavy Duty

For details, see our intro to CAN DBC files.






The CLX000 CAN bus logger & interface

In the next section, we show how the CLX000 can be used to stream raw CAN data, which you can decode in real-time.

The CLX000 is a low cost CAN bus data logger & interface, which can be used for real-time CAN streaming with Wireshark:

Simple To Use CAN Logger
PLUG & PLAY

Configure in 2 min. Power via CAN connector. Auto-detect bit-rate

Log CAN Data to SD Card (No PC)
STANDALONE

Log CAN data to 8-32GB SD card for months - no pc needed

Free CANvas Software CAN Logger
FREE SOFTWARE

Configure your CLX000, stream data & convert log files

Wireshark CAN Bus Data Streaming
LIVE STREAM

Easily stream raw & DBC converted CAN/OBD2 data in Wireshark

Ultra Small Data Logger
COMPACT

Fits the palm of your hand (6.6 x 4.3 x 2.4 CM) and weighs <50g

Cheap Low Cost Affordable CAN Logger
LOW COST

The value/cost of the CLX000 is unbeatable

CLX000 Low Cost CAN Logger & Interface learn more







Example: Decode J1939 in real-time via Wireshark

Our Wireshark plugin lets you load CAN DBC files in Wireshark to decode raw data streams. Below we show how it can be used.

For a general intro to streaming CAN bus data with the CLX000, see our CAN interface intro.


You can try out the below steps by installing Wireshark and our free plugin as outlined here. Once installed, you can load a CLX000 sample file with J1939 data and a J1939 DBC sample and follow the steps.


  • Start streaming raw CAN data in Wireshark as normally
  • Go to Edit/Preferences/Protocols/CAN DBC
  • Click Edit, then New and browse to your DBC file
  • Specify 'DBC type' to switch between regular and J1939 and click OK
  • Right-click a streamed CAN Message and click 'Decode As' and choose 'CAN DBC'


When you've connected the CLX000 to your CAN application and started the streaming in Wireshark, you can load your DBC file and decode your data.

Once you've done this, you will be streaming human-readable CAN bus data in real-time from your CAN application.

Stream J1939 Data Real-Time Graph Plot


CAN DBC J1939 SPN Signal Live Trace

The default view above is called 'Message View' and shows 1 row per CAN Message.

For some use cases, you may prefer the alternative 'Signal View' - which shows 1 row per CAN Signal:

To enable Signal View, check "Signal per row" in the preferences, re-start Wireshark and re-enable your decoding. You can also add new column fields by selecting a field from the details window and clicking "Apply as Column".





4 cool Wireshark DBC features

Streaming your CAN data via the CLX000 in Wireshark offers a range of powerful DBC-related features.


Data plots are easily done in Wireshark - also in real-time!

Simply go to Statistics/IO Graph. Here, you can start by setting the X-axis to show "Time of day" and the Y-axis unit to "Advanced...". Next, set the Calc field to "AVG(*)" and to the right enter "can-dbc." in the field. This brings up a drop-down to scroll through messages/signals of the DBC file. Select one and click the Graph button to plot it. You can adjust the interval frequency for resampling.

DBC Wireshark Stream CAN Bus Data Real-Time Scaled Engineering

Wireshark offers great filter options to simplify your views.

These are set up in the Expressions tab in the upper right corner. For example, you can add the filter, "!can-dbc.signal_max && !can-dbc.signal_min" and hit enter to filter out invalid Signals when in Signal View. You can also right-click any field in the details pane and add it as a filter.

Filter CAN Protocol Data Wireshark CAN DBC

You can easily export data to other formats in Wireshark. Simply go to File/Export Packet Dissections to select format (*.txt, *.ps, *.csv, *.psml, *pdml, *.c, *.json) and settings.

You can export all frames, a selected range or the displayed frames based on filters. Under "Packet Format", we recommend to include the Packet summary line, column headings and packet bytes, while excluding the rest. You can export either raw CAN data or the dissected version.

Export CAN Bus to Excel Matlab CSV Wireshark

You can load CLX000 log files into Wireshark. This lets you convert, plot and export the data via Wireshark. For large or multiple log files, we recommend using CANvas as it is more efficient for log file conversion. However, for smaller log files the Wireshark solution offers a quick way to get an overview of your logged data.

Load CAN Bus Data Logger File Wireshark




Ready to stream your DBC-decoded CAN data in real-time?

Get your CLX000 today!







Recommended for you