The SAE J1939 protocol was developed in 1998 by the Society of Automotive Engineering (SAE) and works on the physical layer with CAN high speed in accordance with ISO 11898. It is used in ECU communication in commercial vehicles.
In addition, SAE J1939 is used to describe international standards such as NMES 2000 (marine) and ISO 11783 (ISOBUS for agricultural machinery). SAE J1939 is divided into several layers that correspond to the OSI layer model. Only layers 5 and 6 are not required.
A SAE J1939 network connects the ECUs inside a commercial vehicle. SAE has extended the CAN message identifier from 11 to 29 bit for J1939 to guarantee the compatibility with other, earlier developed commercial vehicle protocols like J1705 and J1587. For that SAE has also developed CAN components and protocol implementations. Additionally CAN in Automation develops some CANopen interface profiles for networks based on J1939 (CiA DSP 413). SAE J1939 is a multi-master system providing a decentralized network management without channel based communication. It supports up to 254 logical net nodes and 30 physical ECUs per system.
The information is described as parameter and is summed up on four memory pages (Data Page) in parameter groups (PGs). SAE J1939 enables the transmission of measured values and control data as well as the configuration of components. Data of individual components can be read out and deleted for diagnostic purposes. Single controls can be calibrated. The J1939 protocol specifies the transmission type, the structure of messages and their segmentation and the content of the message. Communication is usually cyclical and can be received by all controllers. The transport protocols BAM and CMDT are used for the transmission of larger data volumes.