What is SAE J1939?

In the commercial vehicle sector standardized, serial protocols for communication between the individual electronic control units (ECUs) and components of the drive train are common since a while.


Actual physical interface

J1939 physical interface

The protocol SAE 1939 defined by the International Society of Automotive Engineers (SAE) replaces the SAE standards J1587 / J1708 and works on the physical layer with CAN-high-speed according to ISO 11898.

SAE J1939 is used in the range of heavy commercial vehicles both "On-Road" (Truck & Trailer) and "Off-Road" (Construction, cranes, etc.). In the field of agricultural and forestry machinery ISOBUS after ISO11784 is applied, in maritime environments, the protocol NMEA2000 is used and in the military field MilCAN is suitable - all of these protocols are based on J1939.

Due to the required compatibility with the existing J1708 / J1587 protocol the extension of the CAN message identifier from 11 to 29 bit, the development of CAN modules and respectively protocol implementations to support this message format was required for J1939.

Via J1939, it is possible to transfer both measurement values and control data as well as configure components. Moreover, there is the ability to read or delete diagnostic data of individual components and perform a calibration of individual controls.

In J1939 protocol not only the mode of transmission, the structure of messages and their segmenting, the flow control, and so on is specified, but also the content of the messages themselves is precisely defined.


SAE J1939 in the ISO/OSI reference model

SAE J1939 is divided into multiple documents according to the OSI reference model, in which the document number refers to the associated layer in the reference model. The layers 5 and 6 are not needed in SAE J1939 analogous to virtually any field bus protocols and are therefore not specified.

J1939 model

The core standards are as follows:

J1939 core standards


Address Claiming

Before a CA uses an address, it must claim it in the network; this procedure is called "address claiming" (ACL). 

Here, the unique device name is used to resolve conflicts in the address assignment: the smaller the numerical value, the higher the priority. On its startup the CA sends an “Address Claim PGN” (ACL, PGN 00EE00h) and waits a predetermined time for response. If no other CA claims the same address within this period, the CA can start with the normal communication.

J1939 address claiming 1

If another CA on the network already uses the same address, an address conflict occurs. The CA with the higher priority in its device name then obtains the address. It depends on the "address capability” of the CA how to proceed.

If the CA has the address capability "non self-configurable" it must send a "Cannot Claim Address" PGN with the “Source Address” zero (254). Otherwise, it may take a new address from the address pool of free addresses (128-247) for itself.

J1939 address claiming 2


Name: Engine temperature

- PG number: 65262 (FEEE Hex)

- PDU format: 254 (FE Hex)

- PDU specific: 238 (EE Hex)

- Default priority: 6

- Transmission rate: 1 s

- Data length: 8 Byte

Description of data

Byte 1: Engine coolant temperature

Byte 2: Fuel temperature

Byte 3,4: Engine oil temperature

Byte 5,6: Turbo oil temperature

Byte 7: Engine intercooler temperature

Byte 8: Not defined


The future of SAE J1939

Adopting high-reliability, high-speed, low-cost CAN bus communication is the mainstream of future automotive communications. The SAE J1939 protocol makes full use of CAN's excellent performance. In the future, SAE J1939 will play an important role in the Internet of Things.



Fujian, China
Los Angeles, USA

Thank you for contacting us, we have received your message.

Submit failed, please try again.


We use cookies on our website to improve your experience. By clicking “Accept All”, you consent to the use of all the cookies.