This topic provides an overview of the J1939 application protocol.
J1939 is set of SAE standards commonly used in diesel-powered applications for communication and diagnostics between application components. The J1939 standard enables a high-level protocol that allows for communication across large, complex networks used by manufacturers of large, industrial ECUs such as heavy duty vehicles, and mining, construction, or agricultural machinery.
The J1939 standard is defined in multiple documents corresponding to five of the seven OSI layers. J1939-11 defines the physical layer, J1939-21 defines the data link and transport layer, J1939-31 defines the network layer, and J1939-71/73 defines the application layer. J1939-81 describes network management.
J1939 application protocol uses a 29-bit extended frame identifier. The ID is divided into several parts, including the PGN, which identifies the frame and defines which signals it contains. You can send a frame to a global address (all nodes) or a specific address (node with this address). This information is coded inside the PGN, which comprise 18 of the 29-bit identifier.
For destination-specific messages, PS defines the destination address, so PF defines only 240 destination-specific PGNs (0-239).
If your application requires the J9139 application protocol, refer to Applying J1939 Application Protocol.