SAE J1939 To USB Gateway
This module represents a "copy" of the JCOM.J1939.USB-B. While circumstances out of our control (global shortage of electronic circuits) forced us to create a new version, we are glad to present a vastly improved SAE J1939 gateway. The gateway is 100% identical regarding functionality, but it comes with tremendously higher performance, specifically processor speed.
The JCOM.J1939.USB board is not a "hardware" gateway, i.e., it does not directly translate every PGN into a USB data stream and vice versa. The board is controlled per USB port in order to receive or transmit PGNs into the network. The controlling of the board can be accomplished by using our free-of-charge Windows software (see description below). You can also use your own code; we provide programming samples in C and C#.
All in all, you can transmit or receive any PGN, and the board supports the full SAE J1939 protocol, including node address claim, Transport Protocol (TP) for data frames longer than eight bytes, and more. Please take your time to read through the extensive documentation as it will answer any questions you may have.
Please be aware that the current documentation refers to the original JCOM.J1939.USB-B device. However, the gateway functionality of both boards is identical. We are working on updating the information but these things take time. Thank you for your understanding.
- Serial connection per USB-C connector
- Onboard CAN Bus transceiver
- External power supply (7 VDC to 12 VDC) with reverse polarity protection
- Extended operating temperature range of -40C to +85C
- Size: 62 mm x 42 mm (2.5" x 1.6"). Add 12 mm (0.5") for the terminal block.
SAE J1939 Features
- Fully SAE J1939 compliant hardware with on-chip SAE J1939 protocol, including Transport Protocol (TP)
- Free-of-charge Windows analyzer software
- Monitor, record, and analyze SAE J1939 data traffic
- Simulate SAE J1939 data traffic
- Respond to message requests
- Define message filters
- Automatic node address negotiation
- Fully programmable per USB port
- Virtually OS independent
- Programming sample for Windows, Linux, and embedded systems
The jCOM.J1939.USB gateway board is a high-performance, low-latency vehicle network adapter for SAE J1939 applications. It allows any host device with a USB COM port to monitor SAE J1939 data traffic and communicate with the SAE J1939 vehicle network.
The board supports the full SAE J1939 protocol according to J1939/81 Network Management (Address Claiming) and J1939/21 Transport Protocol (TP). It is also supported by an extensive programming interface for Windows and Linux/Ubuntu applications, including full C/C++/C# source code for short time-to-market developments.
The strength of the board lies in the fact that the entire SAE J1939 protocol, including all timing requirements, is stored on-chip, thus taking the burden off the main system. The board uses a USB COM port to communicate with the main system, i.e. all data transfer is handled through a standard COM port access. The communication protocol between the board and the main system is well documented and thus allows a porting to any computer system with a USB connection. Working source code libraries exist for Windows (C# under Visual Studio 2102/2013), Linux and its derivatives (C++ using Code::Blocks), and Raspberry Pi (C using the standard gcc compiler).
With all its features, the jCOM.J1939.USB allows the simulation of an SAE J1939 ECU (Electronic Control Unit) using embedded solutions such as the Raspberry Pi, BeagleBone, Arduino, Teensy, and others but also PCs running Windows or Linux (incl. Ubuntu, Fedora, etc.).
SAE J1939 Starter Kit
If you are a beginner to the J1939 technology and/or you do not have a second J1939 node available, please consider our SAE J1939 Starter Kit and Network Simulator. The Starter Kit is a helpful tool for creating and analyzing J1939 data traffic.
Testing A Device With "Silent Mode" Or Automatic CAN Baudrate Detection?
If you need to communicate with an SAE J1939 node that starts up in "Silent Mode" or supports automatic baudrate detection, please be aware that our USB device will not be able to recognize it. You will be better off using our SAE J1939 Starter Kit as described above,
For more information, see How CAN Bus Automatic Baudrate Detection Works And What To Consider When Connecting To A Network.
Free-Of-Charge Windows Software
The communication protocol between the gateway and the host system (PC, Embedded System, Android System, etc.) is well documented, and we provide C/C# source code to read and write CAN data frames.
In addition, the gateway is supported by our free-of-charge jCOM1939 Monitor, an SAE J1939 Monitoring, Analyzer and ECU Simulation software under Windows.
Our JCOM1939 Monitor Software for Windows is a complete tool to monitor, analyze, record, and simulate SAE J1939 data traffic. It works in combination with our SAE J1939-USB gateways. The monitor software represents a comprehensive and easy-to-use, easy-to-understand tool that displays not only SAE J1939 data traffic; it also allows scanning the network, simulating an ECU (incl. full node address negotiation features), and responding to data request messages.
jCOM.J1939.USB Technical Features:
- Full SAE J1939 Protocol on chip
- Virtually OS independent
- Easily adaptable; just access the COM port
- Works with PCs, Raspberry Pi, BeagleBone, Teensy, Arduino
- Protocol is well documented
- C source code available
- Windows tool: jCOM1939 Monitor
- Power applied through USB port
- Power consumption 0.486 W - 0.097A @ 5VDC
(Average; changes with CAN bus load)
- Operating Range: -40...+85 C
- Board dimensions (W x L ): 52 x 78 ; 2.05" x 3.07"
Supported SAE J1939 Features Include:
- Hardware is fully SAE J1939/1x compliant
- Switchable termination resistor
- SAE J1939/21 - Data Link Layer
- SAE J1939/81 - Network Management
- Setup of Preferred Node Address
- Adjustable Node Address Negotiation Range
- Message Filters
- Full Network Communication incl. Transport Protocol
- Design Tx Messages Incl. Transmission Rate
- Configuration of Request Responses
- Configuration of Request Messages
- Network Scanner (Creates a list of all nodes in the network)
Programming Under Windows, Raspberry Pi, And Linux
- Programming the SAE J1939 ECU Simulator Board Using Visual Studio C#...
- SAE J1939 ECU Simulation And Data Monitoring Under Linux...
- SAE J1939 ECU Simulator And Data Monitor for Raspberry Pi...
- Connecting the jCOM.j1939.USB Board Hardware...
- jCOM.J1939.USB Serial Communication Protocol...
- FREE Add-On: jCOM1939 Monitor, SAE J1939 Monitoring, Analyzer and ECU Simulation software for Windows...
- Simulating SAE J1939 PGNs Used By Truck & Bus FMS (Fleet Management System) Standard...
- SAE J1939 Address Claim Procedure - SAE J1939/81 Network Management...
- SAE J1939 Monitor Software - Setting Up PGN Simulation Such As Engine Coolant Temperature...,
- SAE J1939 Simulator Generates Frequently Used SAE J1939 Signals (PGNs) For Diesel Engines...
SAE J1939 Insights
- SAE J1939 Message Format And Interpretation Of PGNs...
- SAE J1939 Utilizes CAN Bus Message Collision During Bus Arbitration...
A Comprehensible Guide to J1939
SAE J1939 has become the accepted industry standard and the vehicle network technology of choice for off-highway machines in applications such as construction, material handling, and forestry machines. J1939 is a higher-layer protocol based on Controller Area Network (CAN Bus).
It provides serial data communications between microprocessor systems (also called Electronic Control Units - ECU) in any kind of heavy duty vehicles. The messages exchanged between these units can be data such as vehicle road speed, torque control message from the transmission to the engine, oil temperature, and many more.
The information in this book is based on two documents of the SAE J1939 Standards Collection: J1939/21 - Data Link Layer J1939/81 - Network Management A Comprehensible Guide to J1939 is the first work on J1939 besides the SAE J1939 standards collection.
It provides profound information on the J1939 message format and network management combined with a high level of readability.