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 communication throughout the vehicle. With a different physical layer, it is used between the tractor and trailer. This is specified in ISO 11992.
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.
Originally, 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[clarification needed], and 16-bit addresses (PGN) have replaced 8-bit addresses.
J1939, ISO 11783 and NMEA 2000 all share the same high level protocol.
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.
SAE J1939 can be considered the replacement for the older SAE J1708 and SAE J1587 specifications.
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. Consequently, SAE J1939 can now be found in a range of diesel-powered applications: vehicles (on- and off-road), marine propulsion, power generation and industrial pumping.
Applications of J1939 now include off-highway, truck, bus, and even some passenger car applications