Additional Information

Site Information

 Loading... Please wait...

Blog

A New Generation of SAE J1939 Gateway, ECU Simulator, and Starter Kit

Posted by Wilfried Voss on

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

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

JCOM1939 Monitor Pro - SAE J1939 Data Monitor, Recorder, 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

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

A Comprehensible Guide to SAE 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.

Read More...

CAN Bus Development with ESP32-WROOM32 Development Board

This post will demonstrate how to add a CAN Bus port to the ESP32-WROOM32 development board, i.e., regarding hardware and software. Download this post as PDF... As a matter of fact, we already offer a hardware utilizing the ESP32 processor and an onboard CAN Bus transceiver as shown in the image to the left. The ESP32 WiFi, Bluetooth [...]

Read More »


Embedded CAN Bus, SAE J1939, NMEA 2000 Development With ESP32

Like many businesses in the CAN Bus marketplace, we have struggled with the global shortage of electronic components. For instance, our SAE J1939 gateways are equipped with NXP processors, mainly the LPC1754 and LPC1768. Unfortunately, both processors are currently unavailable, and they come with remarkably long delivery times that go well into next year. We [...]

Read More »


DIN Rail Ethernet to CAN/CAN FD Interface Supports SAE J1939, NMEA 2000, CANopen

Kvaser introduced their DIN Rail SE410S-X10 Ethernet-to-CAN(FD) multi-channel interface with additional I/O support through add-on modules.Kvaser supplies advanced CAN Bus solutions to engineers designing and deploying systems in areas as wide-ranging as trucks and buses, petrol-driven and electric cars, industrial automation, avionics, construction equipment, building automation, domestic appliances, marine, medical, military, railway, telecoms, textiles and more.The [...]

Read More »


Testing NMEA 0183 For The PICAN-M - NMEA 0183 & NMEA 2000 HAT For Raspberry Pi

PICAN-M - NMEA 0183 & NMEA 2000 HAT For Raspberry Pi Our PICAN-M (M = Marine) is a  Raspberry Pi HAT with NMEA 0183 and NMEA 2000 connection. The NMEA 0183 (RS422) port is accessible via a 5-way screw terminal. The NMEA 2000 port is accessible via a Micro-C connector. The board comes with a 3A SMPS (Switch [...]

Read More »


ESP32 Project: CAN Bus, SAE J1939, NMEA2000 Converter With IoT Functionality

It was just a few weeks ago that I received some bad news. Due to the worldwide shortage of electronic components, the NXP LPC1754 processor we use for our SAE J1939 ECU Simulator with USB Port will not be available for several months, maybe even well into 2022. Consequently, it was time to rethink the design, and [...]

Read More »


CAN Bus, SAE J1939, NMEA 2000 Programming With ESP32, Supporting USB, Bluetooth, BLE, And WiFi

The  ESP32 Series of modules by Espressif supports the integration of WiFi, Bluetooth, and Bluetooth LE for a wide range of applications, most prominently for IoT (Internet of Things). For instance, using WiFi ensures connectivity within a large radius. Using Bluetooth allows the user to easily detect (with low-energy beacons) a module and connect it to [...]

Read More »


Programmable Maritime Application System Based on Raspberry Pi Supports NMEA 2000 Functionality

NMEA 2000 is a marine networking standard created and administered by the National Marine Electronics Association (NMEA). The NMEA is an association of marine electronics manufacturers, dealers, and technicians. The NMEA 2000 standard describes a low-cost, moderate capacity, bi-directional, multi-transmitter, multi-receiver instrument network. Typical data on a network using this standard include: Position latitude and longitude. GPS status. Steering [...]

Read More »


NMEA Online & Virtual Installer Trainings July 13-15, 2021

NMEA (National Marine Electronics Association) offers their installer certification classes to the marine electronics world this July 13-15. These are 6-8 hour online instructor-led installer certification training sessions. The delivery method for the training is GoToWebinar, where students view and listen to the live instructor and presentation, along with being able to ask questions to [...]

Read More »


Controller Area Network (CAN Bus) Tutorial - Higher Layer Protocols

The following is an excerpt from  A Comprehensible Controller Area Network by Wilfried Voss. Even though highly influential in automobiles and small applications, the CAN Bus technology alone is not suitable for machine automation since its communication between devices is limited to only 8 bytes.Consequently, higher layer protocols such as CANopen for machine control, DeviceNet for factory [...]

Read More »