J1939 DBC File - PGN & SPN Data

SAE J1939 DBC File & Digital Annex

The SAE J1939 *.DBC file contains conversion rules for scaling raw J1939 data to human-readable form. DBC is the standard CAN database file format used in most CAN software tools & open source modules - incl. our CANvas software.

This bundle includes a J1939.DBC file and a legal license for the latest J1939 Digital Annex (stand-alone price: 143$) in Excel format. This bundle is a ‘beta release’ and priced accordingly.

Note: During check-out, select free shipping - we'll deliver by e-mail within 24 hours.

Buy now - or learn more below!

500 EUR



A *.DBC file is a standardized method for storing the “rules” on how to interpret raw CAN bus data. In particular, it contains details on what ‘signals’ (e.g. RPM, Vehicle Speed, …) are contained within which ‘messages’ (i.e. CAN IDs).

In the J1939 standard, messages are referred to as Parameter Group Numbers (PGNs) and signals as Suspect Parameter Numbers (SPNs).

Further, a DBC file includes the names, descriptions, positions and lengths of the signals - as well as how to offset & scale them. In short, the DBC file is key to converting your data.

J1939 PGN SPN Message
J1939 Digital Annex 2018 DBC Bundle

This J1939 DBC file bundle includes:

  1. An SAE J1939 DBC file with ~1060 PGNs and ~6400 SPNs
  2. A J1939 Digital Annex license (stand-alone price: 143$)
  3. A J1939 Digital Annex Excel file
At CSS Electronics, we're acting as re-sellers on behalf of SAE for the digital license of the J1939 Digital Annex. This also means that our terms include the SAE terms related to purchase - we recommend you read them here.


If you have access to the raw CAN IDs from a specific vehicle, you can easily paste them into our “CAN ID to J1939 PGN” converter below.

The converter returns the corresponding PGNs and checks if they’re included in the J1939 DBC file. This way, you get an idea of how much of your data is covered.

We strongly recommend reading our FAQ (see separate tab) for details on PGN vs. SPN coverage.

J1939 PGN Converter
CANvas Software Scaled Engineering Values


Below you’ll find a short sample of raw J1939 data logged from a truck using the CL3000 CAN bus data logger with WiFi. Further, we’ve included a demo version of the J1939 DBC file with only 1 PGN (Electronic Engine Controller 1) and 1 SPN (Engine Speed, i.e. RPM).

You can load both of these in our CANvas software and/or using our Wireshark plugin to test it:

Check out our Tech Specs and FAQ above - or head back to the top to buy

Standard(s) J1939 Digital Annex (2018 August) - corresponds mainly to J1939-71
#PGNs ~1060
#SPNS ~6400
Multipacket Multipacket syntax is used for the multipacket PGNs included in the DBC
Multiplex Some multiplexed messages are included, but with "regular" syntax (not multiplex)
Descriptions Partial SPN descriptions included in DBC (full included in Digital Annex)
Attributes SPN ID, VFrameFormat
Value Tables Not currently included


Why should I get a J1939 DBC file?
The SAE j1939 standard is used across most heavy duty vehicles (trucks, buses, tractors, excavators, …) regardless of manufacturer and brand. This means that a large set of standard data parameters will typically be available on any given heavy duty vehicle - and can be converted using the J1939 DBC file. With that said, each brand typically also includes a set of proprietary J1939 PGNs (which are not covered by the DBC).

If you need to log data from a heavy-duty vehicle, then the J1939 DBC file is relevant for you.


How was the J1939 DBC file constructed?
We’ve taken all the “standard PGNs” from the SAE J1939 Digital Annex Excel file and added them to the DBC file format. This involves extensive data cleaning and ensuring that the restructuring of the details is done correctly as per the proprietary DBC specification. The resulting DBC file has then been tested versus previous versions and via various CAN bus software tools.


Which J1939 PGNs are supported in the DBC file?
In the most recent version, the DBC file includes ~1060 PGNs and ~6400 SPNs. You can see a full list of the included/excluded PGNs in our “CAN ID to PGN” Google Sheet:

CAN ID to J1939 PGN Converter


What are examples of tools that support DBC files?
Examples include our own free CANvas & Wireshark plugin software (excl. Multipacket messages) and the software tools of e.g. Kvaser, Vector, PEAK. Further, many open source tools offer support incl. BUSMASTER, canmatrix and various open source MDF readers such as asammdf.


What J1939 PGNs & aspects are excluded - and why?
We’ve excluded some special case PGNs, primarily those that require detailed lookups in sub standards incl. J1939-12, J1939-21, J1939-31, J1939-73, J1939-76, J1939-81, ISO 11783 and NMEA 2000. In future launches we may add support for these depending on demand.

Note also that ‘value tables’ that include descriptions of various states (e.g. trouble codes) have not been included directly in the *.DBC file for now to keep it simple. Similarly, a number of attributes (e.g. SPN signal types) have been excluded for now. However, you can look up this information quickly in the J1939 Digital Annex Excel file, which is part of the bundle.


Will all my J1939 data be converted with the DBC file?
Most likely not. As mentioned above, some PGNs are excluded for now. But more importantly, most manufacturers utilize proprietary PGNs for some of their data. In practice this means that you’ll typically be able to convert a large set of standard parameters across most heavy duty vehicles - but not necessarily all the data. The coverage is application specific. However, if you are able to record/identify the raw CAN IDs from your application, you can use our above converter to identify which PGNs are supported in the latest DBC.


If my vehicle broadcasts a specific PGN, will all corresponding SPNs be supported?
Not necessarily. A PGN may include e.g. 4 SPNs in the SAE J1939 standard - and hence in our DBC file - yet, in your specific application it could be that e.g. only 1 of these SPNs is used.

When converting the data from such a case using the DBC file, some tools may still return converted data for all 4 SPNs. However, upon inspection you’ll find that the data of invalid SPNs is typically outside the valid min/max range and constant.


How have multiplex messages been handled?
Multiplexed messages utilize a multiplexer signal to switch the interpretation of subsequent data bytes. In the DBC file, multiplex messages can be integrated using a slightly different notation than regular PGN / SPN combinations. For more details, cf. this DBC Wiki page.

For now, we’ve decided to simplify the inclusion of multiplexed messages. This means that we’ve used the “standard format” for these, without the multiplexer notation. There are pros and cons to this: The DBC file is simplified and can be used in a wider array of CAN bus software tools as some do not support the multiplexed notation. The con is that you’ll have to “manually” identify and handle the multiplexed messages. I.e. using our J1939 DBC file, two entries of a multiplexed message may come out with a consistent signal name. You’ll then have to look at the value of the multiplexor and ex post adjust your interpretation/mapping of the signal names.

We may update this in the near future, depending on feedback.


Can I edit the J1939 DBC file?
Yes, but be aware that the format is proprietary with no open spec. Further, even small errors in spaces etc. will lead to the file not rendering properly. Various tools allow editing, e.g. Vector’s CANDB++ or Kvaser’s Database Editor. Be aware, however, that simply saving the DBC file via one of these tools may change the format and structure.

We do not recommend editing the DBC file unless you’re an advanced user. While we can offer some basic support on your DBC file, we can’t help with detailed editing of the file.


What’s with the “beta discount”?
We’ll offer the initial versions of the J1939 DBC file at a “beta discount” as we’re still finalizing tweaks and gathering user feedback on potential quirks across the many closed/open source tools utilizing DBC files. We expect updates to happen in the coming period and all buyers will be notified of these, as well as provided adjusted DBC files free of charge. In this period, we’re relying on your feedback to improve the DBC file and in return we offer the DBC at a discount.


Does my license include access to future standard revisions?
We’ll inform you if there is an update to a DBC file revision that you’ve purchased within the same J1939 Digital Annex license. For example, if you’ve bought a DBC file corresponding to the SAE J1939 Digital Annex 2018 August release, you’ll be able to get updates for this version.

However, the legal license for the underlying SAE J1939 details is linked to each publication. As such, you would need to make a separate purchase if you want to get updated to a more recent publication of the SAE J1939 Digital Annex, e.g. a 2019 August release.


The J1939 DBC file is great - but I’d love to see [...] added!
We are very open to requests for additions - if you’re looking for specific aspects of the J1939 standard to be added, let us know and we’ll get back to you asap. For any further questions, please contact us - we always aim to get back in < 24 hours.

At CSS Electronics we offer great products & service globally!


J1939 DBC Truck Data
“The CL2000 is very easy to setup, the software is intuitive and the *.DBC feature is nice - highly recommend it!"

   — Curtis Steele, Manager, Product Development at ProAll

Agricultural Equipment Data DBC File J1939
"Never used a tool like this before
- the support was exceptional!

   — Jason Le, Technical Specialist at SunSource

J1939 Engine Test Stand Proprietary Data
“The CLX000 worked perfectly for reverse engineering proprietary J1939 data”

   — Daan de Roos, owner of DDR Engineering & Marine Projects



We use cookies to improve our site (see our privacy policy)