J1939 Trouble Codes

The J1939 system was designed for most heavy-duty trucks and buses. The system uses diagnosis trouble codes (DTCs) to alert you when a vehicle experiences a malfunction. DTCs help vehicle mechanics and owners with a rich expertise in vehicle maintenance understand problems with the vehicle and where the root of the vehicle’s problem or problems may lie. Different DTCs represent specific problems in your vehicle. The DTCs are standardized.

These codes were created by the Society of Automotive Engineers (SAE) to help vehicles comply with emission regulations. SAE is now called SAE International, and it is the professional organization that develops standards for automotive engineers.

Interpretation of J1939 Codes

The J1939 DTC contains four fields that relay information about the fault being reported by DTC. These fields are:

  • Suspect Parameter Number (SPN): Represents the SPN with error. Every defined SPN can be used in a DTC.
  • Failure Mode Identifier (FMI): Represents the nature and type of error that occurred, e.g., value range violation (high or low), sensor short-circuits, incorrect update rate, calibration error.
  • Occurrence Counter (OC): A counter that counts the occurrence of the error condition for each SPN and stores this even when the error is no longer active.
  • SPN Conversion Method (CM): Defines the byte alignment within the DTC. The value “0” represents the method shown in graphic “Structure of a DTC”. If CM has the value “1”, a distinction must be made between three previously valid methods; this must be known for the system.