Home » J1939 development » Page 2
When I published Comprehensible Guide to J1939 several years ago, I honestly didn’t know what to expect. Today, it continues to sell well, and I still receive emails from engineers telling me it helped them finally understand SAE J1939 after struggling with the official documentation. That feedback has always meant…
If you spend enough time working with heavy-duty vehicles, agricultural equipment, construction machinery, or industrial engines, you will eventually encounter proprietary J1939 messages. At that point, many engineers ask the same question: Can I reverse engineer a J1939 network? The short answer is yes—but only to a certain extent. Before…
If you’ve worked with SAE J1939 long enough, you’ve probably experienced the frustration of connecting two devices to a CAN bus and seeing… absolutely nothing happen. No engine data. No diagnostic messages. No responses to requests. Just silence. The good news is that most J1939 communication problems are caused by…
In previous quick demos, we focused on SAE J1939 parameters that are transmitted periodically, such as engine speed, vehicle speed, fuel level, and engine temperatures. These messages are broadcast automatically at predefined intervals, allowing any node on the network to receive the data without explicitly asking for it. The Vehicle…
Engine speed is one of the most frequently monitored parameters in any SAE J1939 network. Whether you are developing a dashboard, testing an engine ECU, validating telematics software, or learning how J1939 communication works, engine speed is often the first parameter engineers look at. In this post, we will explain…
If you are new to SAE J1939 development, you may believe that access to a truck, engine, generator, or agricultural machine is required before you can write any meaningful software. While eventually you will want to test your application on real equipment, the majority of J1939 software development can be…
SAE J1939 development has evolved far beyond traditional automotive Electronic Control Units (ECUs). Today, engineers can build J1939-enabled systems using low-cost embedded platforms such as the ESP32 and the Raspberry Pi. While both platforms can successfully communicate on a J1939 network, they serve very different purposes. The question is not…
One question that appears regularly in SAE J1939 discussions is whether multiple Electronic Control Units (ECUs) can transmit the same Parameter Group Number (PGN). At first glance, the answer seems straightforward: if the J1939 standard defines a message, why shouldn’t multiple devices be allowed to transmit it? In reality, the…
One of the most common misconceptions in the heavy-duty vehicle and industrial control markets is the assumption that a device using CAN 2.0B with a 29-bit identifier is automatically SAE J1939 compatible. Unfortunately, that assumption has caused countless integration headaches, wasted engineering hours, and unnecessary investments in development tools and…
If you have recently started working with SAE J1939, chances are your search history looks something like this: How do I monitor J1939 traffic? What hardware do I need for J1939 development? How do I simulate a J1939 ECU? How can I test my software without connecting to a real…