SAE J1939
J1939
SAE J1939 is the standard CAN-based communication protocol used by heavy-duty trucks, buses, and off-highway equipment to share engine, transmission, brake, and emissions data on a single wiring bus.
SAE J1939 is the standard communication protocol used by heavy-duty trucks, buses, and off-highway equipment to share data between electronic control units. It runs on top of CAN 2.0B (29-bit identifiers) at typical bit rates of 250 kbit/s or 500 kbit/s and is the protocol every modern Class 8 truck speaks at its 9-pin diagnostic connector.
Each J1939 message carries a Parameter Group Number (PGN) and a set of Suspect Parameter Numbers (SPNs). PGNs identify groups of related signals — engine speed, vehicle speed, transmission state — while SPNs identify the specific signal inside the group. Diagnostic Trouble Codes (DTCs) are also transmitted using SPN/FMI pairs, which is why fault codes from any J1939 truck look similar regardless of OEM.
J1939 replaced the older J1708/J1587 protocol on trucks built from roughly 2007 onward. Pre-2007 trucks usually still expose J1708 instead, which is why heavy-duty diagnostic tools (and ecuLink's gateway) support both. On the diagnostic side, J1939 is the bus that tools like JPRO, Cummins INSITE, and Detroit DDDL talk to, either through a USB VCI plugged into the dash connector or through a remote pass-through like ecuLink.
Related terms
RP1210
TMC RP1210
RP1210 is the Technology & Maintenance Council's Windows API for heavy-duty diagnostic adapters. It lets one diagnostic application talk to many vendors' VCIs through a common interface.
J1708
SAE J1708 / J1587
J1708 is the legacy serial bus used on heavy-duty trucks built before roughly 2007, with J1587 as the application-layer protocol carrying engine, transmission, and brake messages.
CAN Bus
Controller Area Network
CAN bus (Controller Area Network) is the differential, multi-master serial bus used by virtually every modern vehicle to let ECUs share short messages without a central host.
Looking for more?
Browse the full glossary, jump to the FAQ, or check what ecuLink supports today.