SAE J1939

Society of Automotive Engineers standard SAE J1939 is the vehicle bus recommended practice used for communication and diagnostics among vehicle components. Originating in the car and heavy-duty truck industry in the United States, it is now widely used in other parts of the world.

SAE J1939 is used in the commercial vehicle area for connection and communication throughout the vehicle, with the physical layer defined in ISO 11898. A different physical layer is used between the tractor and trailer, specified in ISO 11992.

History
Originally, Controller Area Network (CAN) was not mentioned in J1939, which covered cars and tractor-trailer rigs, and with some dual and triple use 8-bit addresses assigned by the SAE J1939 board. CAN was not originally free, but its instruction set did fit in the custom instruction format of J1939. This was true as of 2000. Since then, CAN has been included, the chipset for J1939 has been clocked faster, and 16-bit addresses (PGN) have replaced 8-bit addresses.

J1939, ISO 11783 and NMEA 2000 all share the same high level protocol. SAE J1939 can be considered the replacement for the older SAE J1708 and SAE J1587 specifications.

Definition
SAE J1939 defines five layers in the seven-layer OSI network model, and this includes the Controller Area Network (CAN) ISO 11898 specification (using only the 29-bit/"extended" identifier) for the physical and data-link layers. Under J1939/11 and J1939/15, the data rate is specified as 250 kbit/s, with J1939/14 specifying 500 kbit/s. The session and presentation layers are not part of the specification. The later use of CAN FD is currently discussed.

All J1939 packets, except for the request packet, contain eight bytes of data and a standard header which contains an index called Parameter Group Number (PGN), which is embedded in the message's 29-bit identifier. A PGN identifies a message's function and associated data. J1939 attempts to define standard PGNs to encompass a wide range of automotive, agricultural, marine and off-road vehicle purposes. A range of PGNs (00FF0016 through 00FFFF16, inclusive) is reserved for proprietary use. PGNs define the data which is made up of a variable number of Suspect Parameter Number (SPN) elements defined for unique data. For example, there exists a predefined SPN for engine RPM.

Applications
SAE J1939 has been adopted widely by diesel engine manufacturers. One driving force behind this is the increasing adoption of the engine Electronic Control Unit (ECU), which provides one method of controlling exhaust gas emissions within US and European standards. The telematics data is used (via Fleet Telematics Systems) by Fleet Management Systems to let fleet operators keep track of vehicle and driver performance, such as fuel consumption, safety events, and repair time.

Because of the demanding standards, engine development is expensive, and truck-based engines are reused in many fields. Consequently, SAE J1939 can now be found in a range of diesel-powered applications: vehicles (on- and off-road and rail), marine propulsion, power generation and industrial pumping.