Like many other businesses, we have to deal with the global shortage of electronic components. For instance, the NXP LPC 17xx processors we used for our SAE J1939 gateways and the starter kit are not available at this time. Even worse, there is no reliable information if/when production resumes. This situation forced us to rethink our hardware design, and we chose the popular ESP32 processor, specifically the ESP32-WROOM-32D/U module.
There are several advantages to using the module: First, it is available in large quantities, and we ensured having sufficient inventory for future sales. Secondly, the module already provides a multitude of I/O functionality, including a USB port plus Bluetooth, BLE, and WiFi. The sum of all these peripherals would require significant effort and development costs when using the LPC 17xx series processors. Last but not least, the ESP32 processor is vastly more powerful regarding processor speed and memory resources. These features open the door to an extended range of applications, especially for the Internet of Things (IoT).
Furthermore, the topic of porting the firmware turned out to be much smoother than expected. We pride ourselves on writing straightforward code, which helped make the transition a breeze. We investigated the required hardware features (CAN port and timers) and their programming thoroughly, and, after extensive testing, we released a new and more powerful design for our SAE J1939 gateways. The gateway functionality is 100% identical to the previous version, i.e., it works in combination with our JCOM1939 Monitor software.
SAE J1939 ECU Simulator Board With USB Port
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). In addition, an extensive programming interface supports Windows and Linux/Ubuntu applications, including complete C/C++/C# source code for short time-to-market developments.
With all its features, the gateway 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 And Network Simulator
Our SAE J1939 Starter Kit And Network Simulator is designed to allow the experienced engineer and the beginner to experiment with SAE J1939 data communication without the need to connect to a real-world J1939 network, i.e., a diesel engine. It may sound obvious, but you need at least two nodes to establish a network. That fact applies especially to CAN and SAE J1939. The CAN Bus controller will shut down after transmitting data without receiving a response. For that reason, our JCOM.J1939 Starter Kit And Network Simulator consists of two J1939 nodes, namely our JCOM.J1939.USB gateway.
JCOM1939 Monitor Pro - SAE J1939 Data Monitor, Recorder, Simulator
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.
The 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.
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.
Our JCOM.J1939 Starter Kit And Network Simulator is designed to allow the experienced engineer as well as the beginner to experiment with SAE J1939 data communication without the need of connecting to a real-world SAE J1939 network, i.e. a diesel engine. It may sound obvious, but in order to establish a network, you need at least two [...]
The UDE (Universal Debugging Engine) by PLS (Germany) provides debugging and analysis functions for NXP’s S32S247 and i.MX RT MCUs with up to eight CAN FD (Flexible Data Rate) interfaces. The S32S247 multi-core controller combines four 800-MHz Cortex-R52 processors with 64-MiB integrated flash memory. Designed for safety-related real-time applications up to ASIL-D (automotive safety integrity level), the device is suitable [...]
Axiomatic has announced its AX130770, an ECU System converting CAN Bus data to two analog or digital isolated signals and one relay output for rugged engine applications.The relay output converter connects to a CAN Bus vehicle network (SAE J1939, high-speed SAE J1939m, or CANopen). It accommodates two analog/digital isolated signal outputs, which can be configured as 0 [...]
The OBDLink ScanTool ECUsim 2000 ECU CAN Simulator for OBD-II Development is a small diagnostic tool that is ideal for DIY testing and development of OBD services and software. The CAN Bus (ISO 15765) model supports a range of parameter IDs, diagnostic trouble codes (DTCs), freeze frames, and SAE J1979 modes: 1, 2, 3, 4, 7, 9, and [...]
This post is part of a series about SAE J1939 ECU Programming & Vehicle Bus Simulation with Arduino. For the purpose of a quick address claiming process, each control application should maintain a preferred address. SAE J1939/81 recommends that the preferred address (i.e. the address the ECU/CA attempts to claim on power-up) should be re-programmable to permit the proper configuration of [...]
SAE J1708 is a standard used for serial communications between ECUs on a heavy duty vehicle and also between a computer and the vehicle. With respect to Open System Interconnection model (OSI), J1708 defines the physical layer. Common higher layer protocols that operate on top of J1708 are SAE J1587 and SAE J1922. The protocol [...]