SAE J1939: The Standard for Heavy-Duty Vehicle Communication
The Society of Automotive Engineers (SAE) Truck and Bus Control and Communications Subcommittee has developed a family of standards for transmitting electronic signals and control information among vehicle components. SAE J1939 and its companion documents have become the industry standard for off-highway machines, including construction, material handling, and forestry equipment.
Understanding J1939 and Its Benefits
J1939 is a higher-layer protocol built on the Controller Area Network (CAN), enabling serial data communication between Electronic Control Units (ECUs) in heavy-duty vehicles. These ECUs exchange critical data such as vehicle speed, torque control, and oil temperature, improving vehicle performance and diagnostics.
Key Benefits of CAN-based J1939:
- Reduced Wiring: Uses just two wires between nodes.
- High Reliability: Resistant to message collisions.
- Simplified Implementation: Standardized messaging makes integration easier.
- Improved Maintenance & Serviceability: Enhances troubleshooting and diagnostics.
- Cost Reduction: Lowers production and operational costs.
Common Applications of J1939-Based Protocols
J1939 is widely used in various industries, including:
- Diesel Powertrain Control
- Truck & Bus In-Vehicle Networks
- Agriculture & Forestry Equipment (ISO 11783)
- Truck-Trailer Communication
- Military Vehicles (MiLCAN)
- Fleet Management Systems
- Recreational Vehicles
- Marine Navigation (NMEA2000)
Evolution from J1708 & J1587
J1939 builds on two older SAE specifications:
-
SAE J1708
- Defines the physical layer (RS485, 9600 baud).
- Uses a message identification system and checksum for reliability.
-
SAE J1587
- Defines standardized data exchange between ECUs on J1708 networks.
- Regulates electronic data communication in heavy-duty vehicles.
SAE J1939 Standards Collection
The J1939 specification consists of multiple SAE documents covering various aspects:
| Document | Description |
|---|---|
| J1939 | General Standard for Serial Control & Communication |
| J1939/01 | On-Highway Equipment Control & Communication |
| J1939/02 | Agricultural & Forestry Off-Road Network |
| J1939/11 | Physical Layer (250kbit/s, Twisted Shielded Pair) |
| J1939/13 | Off-Board Diagnostics Connector |
| J1939/15 | Reduced Physical Layer (250kbit/s, Unshielded Twisted Pair) |
| J1939/21 | Data Link Layer |
| J1939/31 | Network Layer |
| J1939/71 | Vehicle Application Layer |
| J1939/73 | Diagnostics Application Layer |
| J1939/74 | Configurable Messaging |
| J1939/75 | Generator Sets & Industrial Applications |
| J1939/81 | Network Management |
The Efficiency of SAE J1939
SAE J1939 is a well-structured and efficient protocol, leveraging the CAN 29-bit message identifier for streamlined communication. Unlike traditional Master/Slave or Client/Server architectures, J1939 follows a Multi-Master principle, where the node winning the bus arbitration becomes the master while others act as slaves. This approach enhances flexibility and efficiency while maintaining simplicity.
By following the KISS (Keep It Simple, Stupid!) principle, J1939 remains comprehensive yet easy to implement, making it one of the most effective and widely adopted CAN-based protocols in the heavy-duty vehicle industry.
A Note from the Author:
When you read the following chapters, you may notice my frustration with the SAE J1939 Standard. Technical standards are often written in a dry, academic tone meant to emphasize their importance and authority. Unfortunately, this approach tends to sacrifice readability and educational value—qualities that are essential for truly understanding and promoting a standard.
In the case of the SAE J1939 Standards Collection, the problem is compounded by what appears to be too many contributors working without sufficient coordination. The result is a set of documents with inconsistent formats, overlapping information, and even contradictory notations. To me, it feels like explaining the workings of a car by beginning with the carburetor—a backward approach that obscures rather than clarifies.
That said, I want to be clear: I deeply respect the engineers who created the standard. The SAE J1939 protocol itself is a brilliant piece of engineering that deserves admiration. My criticism lies not with the ingenuity of the system but with the way it was documented. The lack of clarity and structure in the official materials made it necessary for me to rewrite the standard in a form that is more accessible and instructive.
Table of Contents
- Fundamentals of SEA J1939: The Industry Standard for Heavy-Duty Vehicle Communication…
- CAN Overview and SAE J1939 Integration…
- SAE J1939: A Higher-Layer Protocol for Heavy-Duty Vehicles…
- Enhancing CAN: Higher-Layer Protocols for Advanced Networking…
- The SAE J1939 Standards Collection…
- The SAE J1939 Message Format…
Additional Information
- SAE J1939-22: Features and Improvements of CAN-FD-Based J1939…
- An Overview of SAE J1939-17 and SAE J1939-22 Standards…
- SAE J1939 Baud Rate Options: A Technical Comparison of 250k and 500k…
SAE J1939 Starter Kit and Network Simulator
The SAE J1939 starter kit is a powerful and versatile tool designed for monitoring, simulating, and recording any Parameter Group Number (PGN) specified in the SAE J1939-71 standard, including diagnostic messages as defined in SAE J1939-73.
Users frequently ask whether the kit can process specific parameters such as fuel consumption, vehicle speed, and position. The answer is always yes; however, the starter kit is not preconfigured for specific engine parameters. To access the desired data, you must identify the corresponding PGN.
Additionally, while the starter kit is not designed to simulate a particular diesel engine, it allows full customization. By inputting the necessary PGNs, you can create and simulate any diesel engine configuration. More Information…
