Quickly convert J1939 data with broad DBC software support
The DBC contains ~1060 PGNs and ~6400 SPNs
Benefit from free corrections based on large user base
Avoid manually constructing a J1939 DBC from scratch
The DBC includes a legal license, matching that of the J1939 Digital Annex (price: 250$)
ABOUT THE J1939 DBC FILE
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.
This J1939 DBC file bundle includes:
At CSS Electronics, we're acting as re-sellers on behalf of the Society of Automotive Engineers (SAE) for the J1939 DBC file. This also means that our terms include the SAE terms related to purchase - see our terms for more details
- An SAE J1939 DBC file with ~1060 PGNs and ~6400 SPNs
- One legal license (1 user, 1 PC) matching the J1939 Digital Annex license (stand-alone price: 250$)
ARE YOUR PGNS IN THE J1939 DBC?
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.
TRY SAMPLE J1939 DATA & DBC
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
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 SAE J1939 DBC file is relevant for you. Various CAN bus software lets you decode J1939 data - incl. our free CANvas and Wireshark plugin software tools. But the software can only act as a J1939 decoder if a valid J1939.DBC database file is provided - and here the .DBC file format is the standard within CAN bus.
Of course, you can create your own J1939.DBC file, though based on our experience this will be many times more expensive in terms of staff hours vs. purchasing this J1939 DBC file as your basis. Instead, we recommend that you spend the time to expand and edit this DBC file to implement e.g. specific proprietary J1939 PGNs and J1939 SPNs relevant to your application.
We’ve taken the full J1939 PGN list and corresponding J1939 SPN list 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.
In the most recent version, the DBC file includes ~1060 PGNs and ~6400 SPNs.
You can see a full list of the included/excluded J1939 PGNs in our “CAN ID to PGN” Google Sheet:
CAN ID to J1939 PGN Converter
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.
We’ve excluded some special case J1939 PGNs and J1939 SPNs, 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 you can buy from SAE. Depending on demand for these added data, we may include them in future updates - let us know your thoughts.
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.
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.
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.
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 DBC editor 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.
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.
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.
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 are truly passionate about delivering great products - and fast, quality service!
BUSINESSES USE THE CLX000
“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
"Never used a tool like this before
- the support was exceptional!”
Jason Le, Technical Specialist at SunSource
“The CLX000 worked perfectly for reverse engineering proprietary J1939 data”
Daan de Roos, owner of DDR Engineering & Marine Projects