SAE J1939-73 defines the diagnostics and communication diagnostics (DM) messages and procedures used on the J1939 vehicle network (CAN-based) for heavy-duty and off-highway vehicles. If you work with commercial-vehicle electronic control units (ECUs), telematics, or fleet diagnostics, J1939-73 is essential for implementing health reporting, fault codes, and retrieval of diagnostic data over the vehicle network.
No. Passenger car OBD-II uses ISO 15765 or SAE J1979. Heavy-duty OBD is based on J1939-73 but adds extra emission-specific DMs (DM12, DM23). However, many heavy-duty scan tools provide both.
The most recognized aspect of J1939-73 is the standardized format for Diagnostic Trouble Codes. Unlike older protocols that used simple numeric codes, J1939 DTCs are 4-byte structures that provide highly specific information.
A J1939 DTC consists of three parts:
Note: The SPN is the evolution of the Parameter Number (PN) defined in J1939-71, specifically reserved for identifying fault sources.
SAE J1939-73 is the backbone of heavy-duty vehicle diagnostics. Without it, troubleshooting a modern truck would be a nightmare of proprietary connectors and undocumented blink codes. With it, a technician with a $200 J1939 adapter can instantly pinpoint a failing NOx sensor or a shorted wheel speed circuit.
Whether you are designing an ECU, programming a diagnostic tool, or simply maintaining a fleet, mastering the content of the SAE J1939-73 PDF is a non-negotiable skill. It transforms random warning lights into actionable, data-driven repair decisions.
Disclaimer: SAE J1939-73 is a copyrighted document published by SAE International. This write-up provides an educational overview; always refer to the official PDF for exact specifications and implementation details.
Understanding SAE J1939-73: The Diagnostic Layer of Heavy-Duty Vehicle Networks Introduction SAE J1939-73 standard is a critical subset of the broader
family, which serves as the backbone for communication and diagnostics in heavy-duty vehicles, including trucks, buses, and construction equipment. While other parts of J1939 handle the transmission of real-time data like engine speed or oil pressure, specifically defines the Application Layer for Diagnostics
. It provides the necessary framework for vehicle service tools to communicate with electronic control units (ECUs) to identify, troubleshoot, and clear system faults. SAE International The Role of J1939-73 in Vehicle Health
Diagnostics in the J1939 ecosystem are centered around the concept of Diagnostic Messages (DMs)
. These messages are the primary "language" used when a vehicle is being repaired or monitored for health. J1939-73 identifies: SAE International Message Formats:
How diagnostic data is packaged and sent over the CAN (Controller Area Network) bus. Service Tool Interface: Sae J1939-73 Pdf
The physical and logical requirements for connecting external diagnostic equipment to the vehicle. Fault Reporting:
The standardized way of reporting "Trouble Codes" that tell a technician exactly which component is failing and why. SAE International Key Components: DM1 to DM52
J1939-73 categorizes diagnostic information into various "DM" numbers. The most frequently used include: DM1 (Active Diagnostic Trouble Codes):
This is a broadcast message that continuously informs the network of any currently active faults. If a dashboard light comes on, it is likely triggered by a DM1 message. DM2 (Previously Active Faults):
These are "stored" or "historic" codes that help technicians see intermittent issues that occurred in the past but are not currently active. DM3 (Diagnostic Data Clear):
A request sent by a service tool to wipe the history of inactive faults once a repair is complete. DM11 (Diagnostic Data Clear/Reset for Active DTCs): Used to clear active fault codes. Understanding Fault Codes: SPN and FMI
Within these Diagnostic Messages, the standard uses two primary identifiers to describe a problem: Suspect Parameter Number (SPN):
Identifies the specific component or parameter that is failing (e.g., "Engine Oil Pressure"). Failure Mode Identifier (FMI): Describes the
of failure occurring with that component (e.g., "Voltage Above Normal" or "Data Erratic").
By combining an SPN and an FMI, a diagnostic tool can precisely tell a mechanic, for example, that the "Turbocharger Inlet Pressure Sensor (SPN)" has a "Short Circuit to Ground (FMI)." Data Transport and Message Length Because J1939 is based on the
protocol, it inherits a 29-bit identifier system. However, standard CAN frames are limited to only 8 bytes of data. Many diagnostic reports—such as a long list of active faults—exceed this limit. Transport Protocol (TP):
J1939-73 relies on the J1939 transport protocol to "fragment" large diagnostic messages into multiple 8-byte frames and reassemble them at the destination. Maximum Length: This allows for diagnostic messages up to 1785 bytes in length. Typhoon HIL Conclusion SAE J1939-73
standard is what makes modern heavy-duty vehicle maintenance possible. By standardizing how ECUs report their internal states and failures, it ensures that a single diagnostic tool can work across different manufacturers, from a Freightliner truck to a Caterpillar excavator. For those seeking the full technical specifications, the official document is maintained and updated by SAE International or an explanation of how to read a J1939 data packet SAE J1939-73: Practical Guide for Vehicle Network Engineers
J1939/73_202208 : Application Layer - Diagnostics - SAE International
SAE J1939-73 standard is a critical protocol within the J1939 family, specifically governing Application Layer — Diagnostics
. It defines the diagnostic services and messages (Diagnostic Messages, or DMs) used for communicating between electronic control units (ECUs) in heavy-duty vehicles.
Below is a structured overview of the standard, designed to serve as a foundational "paper" or technical summary of its contents. 1. Scope and Purpose
SAE J1939-73 establishes the mechanisms for diagnosing vehicle systems and components. Its primary purpose is to provide a standardized method for:
Reporting active and previously active faults (Diagnostic Trouble Codes).
Performing diagnostic tests (e.g., sensor overrides, self-tests). Accessing memory and calibration data. Communicating with off-board diagnostic tools (scanners). 2. Diagnostic Messages (DMs)
The core of the standard consists of defined messages identified by "DM" numbers. Each serves a specific diagnostic function: DM1 (Active Diagnostic Trouble Codes):
Periodically broadcasts fault codes that are currently active. DM2 (Previously Active Faults):
Provides a history of faults that have occurred but are no longer active. DM3 (Diagnostic Data Clear): Used to reset or clear previously active fault history. DM11 (Diagnostic Data Clear/Reset for Active DTCs): Used to clear active faults from the ECU memory. DM12 (Emission-Related Active DTCs):
Specifically for faults affecting vehicle emissions, used for regulatory compliance (OBD). 3. Anatomy of a J1939 DTC
A Diagnostic Trouble Code (DTC) under J1939-73 is a 4-byte value composed of four distinct elements: Suspect Parameter Number (SPN):
Identifies the specific component or system (e.g., Engine Oil Pressure). Failure Mode Identifier (FMI): Direct price (as of 2025): ~$98 (member) or
Describes the type of failure (e.g., voltage too high, data erratic). Occurrence Count (OC):
Tracks how many times the fault has gone from inactive to active. SPN Conversion Method (CM): Defines the byte alignment for the SPN. 4. Diagnostic Services and Memory Access
Beyond simple fault reporting, J1939-73 defines complex interactions: Memory Access (DM14, DM15, DM16):
A "handshake" protocol (Query, Response, Data) that allows a tool to read or write specific memory addresses within an ECU. Binary Data Transfer:
Facilitates the movement of large data blocks, such as software updates or calibration files. Stop Start Broadcast:
Controls the flow of diagnostic information to prevent bus congestion. 5. Connectivity: On-Board vs. Off-Board
ECUs monitor each other. For example, a transmission ECU might monitor the engine ECU's DM1 message to determine if it should enter "Limp Home" mode. Off-Board:
A technician connects a service tool to the vehicle’s diagnostic port. The tool uses J1939-73 messages to request extended data, run tests, or flash new firmware. Conclusion
SAE J1939-73 is the "language" of heavy-duty vehicle repair. By standardizing how faults are reported and how data is accessed, it ensures that a single diagnostic tool can communicate effectively with engines, transmissions, and braking systems from various manufacturers.
SAE J1939-73 is the standard document that defines the Application Layer for Diagnostics within the broader SAE J1939 protocol suite. It establishes the specific message structures, behavior, and procedures used to communicate diagnostic information between Electronic Control Units (ECUs) in heavy-duty vehicles such as trucks, buses, and agricultural equipment. Overview of SAE J1939-73
The J1939-73 standard provides the utility needed for both vehicle repair and real-time operational monitoring. By standardizing how diagnostic data is reported, it ensures interoperability across different manufacturers, allowing a single service tool to communicate with various vehicle components.
Primary Purpose: Defines over 60 Diagnostic Messages (DMs) used for reporting active faults, clearing history, and performing emissions-related checks.
Hardware Interface: Dictates the use of the J1939 connector (often a 9-pin Deutsch connector) for connecting service tools to the vehicle network.
Compliance: Supports regulatory On-Board Diagnostics (OBD) requirements set by authorities like the EPA and EU. Core Diagnostic Messages (DMs)
While there are dozens of DMs defined in the J1939-73 PDF, a few are fundamental to vehicle diagnostics: J1939-73 Diagnostics Explained - A Simple Intro [DM1, DTCs]