Two technicians can stare at the exact same scan tool screen — "SPN 3251 FMI 16" and walk away with two different repairs, because one of them actually knows how to read it and the other is guessing off memory. J1939 isn't a mystery code system; it's four plain numbers that name exactly what failed, how it failed, and how many times. Learn to read them once and every Class 8 engine, from Cummins to Detroit to PACCAR, speaks the same language. Start free and turn every J1939 code into a decoded, routed work order automatically.

SAE J1939 · SPN + FMI → Decoded Work Order

A Fault Code You Have to Look Up Is a Repair That's Already Behind

"SPN 3251 FMI 16" tells a computer everything and a technician nothing until someone translates it. Truck Inspection & Maintenance Management Software reads the J1939 stream straight off the CAN bus and decodes every SPN and FMI into plain language the moment it fires — component, failure type, and occurrence count — then drops it into a work order so the technician starts diagnosing, not looking up numbers.

DecodedSPN + FMI translated to plain English
Rankedoccurrence count shown, not just a raw code
Routedwork order opens with the fault already explained

Every J1939 Code Is Four Numbers in Disguise

Unlike OBD2's five-character code, a J1939 fault code is built from separate data fields broadcast over the CAN bus, and reading it means reading all four together — not just the SPN by itself. Once a technician can parse this string on sight, "the code" stops being a mystery and starts being a diagnosis.

SPN 100  ·  FMI 3
Source AddressWhich controller reported it — 0 for the engine ECM, 3 for transmission, 11 for the brake controller
SPN 100Suspect Parameter Number — identifies the exact signal: engine oil pressure
FMI 3Failure Mode Identifier — how it failed: voltage above normal, or shorted high
Occurrence CountHow many times it's fired — a rising count means it's not a one-off glitch
Reads as: Engine oil pressure sensor circuit reading voltage above normal — check wiring and connector before replacing the sensor

FMI — The Part That Tells You How It Failed

The SPN tells you what component is involved; the FMI tells you what's actually wrong with it, and this number is what separates "loose connector" from "replace the sensor." There are 32 defined failure modes, but a handful account for most of what shows up on a working fleet.

0 / 1Data valid but above/below normal range — most severe level
3Voltage above normal, or shorted to a high source
4Voltage below normal, or shorted low
5Current below normal, or an open circuit
7Mechanical system not responding or out of adjustment
12Bad intelligent device or component — the module itself
Don't clear it first Clearing an active code to "start fresh" erases the occurrence count and the history that tells you whether this is a one-time glitch or a pattern worth real diagnostic time. Read the full code — SPN, FMI, and count — before touching the clear button, not after. Our software preserves this history automatically on every code it ingests, so nothing is lost even if a technician clears the code on the scan tool itself.

Common SPNs You'll See Across Modern Emissions-Equipped Trucks

The same handful of subsystems generate most of the fault traffic on a modern diesel — particularly the aftertreatment system, which throws far more codes than the engine itself on late-model trucks.

SPNComponentCommon System
100Engine Oil PressureLubrication
110Engine Coolant TemperatureCooling
102Boost PressureTurbocharger
190Engine SpeedEngine / RPM signal
3226Aftertreatment SCR CatalystDEF / SCR emissions
3251Aftertreatment DEF Tank LevelDEF / SCR emissions
520Alternator VoltageCharging system

From Raw CAN Data to a Work Order a Technician Can Act On

Code fires on the CAN busThe ECM broadcasts the fault the instant a signal crosses its threshold
Telematics device reads the streamSPN, FMI, source address, and occurrence count are captured in real time
Software decodes it to plain languageThe raw string becomes a sentence a technician can act on immediately
Work order opens with context attachedComponent, likely cause, and code history are already on the job before the truck's in the bay

Stop Looking Up Codes. Start Reading Diagnoses.

Our Truck Inspection & Maintenance Management Software reads the J1939 stream directly, decodes every SPN and FMI against the standard reference tables, and hands the technician a plain-language work order instead of a string of numbers. The occurrence count travels with it, so a repeat fault is never mistaken for a one-off glitch.

Frequently Asked Questions

Is J1939 the same across every engine manufacturer?
The core SPN and FMI structure is standardized by SAE, so a given SPN generally means the same component whether the engine is a Cummins, Detroit Diesel, or PACCAR — but manufacturers do add their own extended SPNs for proprietary systems, so a full decode still needs to check for OEM-specific definitions alongside the standard table.
What's the difference between an active and an inactive J1939 code?
An active code means the fault condition is currently present on the truck right now. An inactive code means the condition was detected at some point but isn't happening at this exact moment — it's still valuable diagnostic history and shouldn't be ignored just because the light isn't on anymore.
Do I need a heavy-duty scan tool, or does a standard OBD2 reader work?
A standard consumer OBD2 reader typically won't fully decode J1939 traffic on a Class 7-8 tractor — you need a tool or telematics device built to read the 9-pin J1939 connector and interpret SPN/FMI data specifically. Start free and see if your current telematics hardware already supports it.
Why do aftertreatment codes seem to dominate the fault list on newer trucks?
Modern emissions systems carry far more sensors than the engine itself — NOx sensors, DEF quality and level sensors, DPF pressure sensors — and each one is capable of throwing its own SPN. It's less a sign the engine is unreliable and more a reflection of how many monitored points a modern aftertreatment system actually has.
SPN · FMI · PGN — Decoded, Not Guessed

Turn Raw J1939 Data Into Repairs Your Techs Can Start Immediately

Our Truck Inspection & Maintenance Management Software pulls J1939 fault data straight from your existing telematics hardware, decodes SPN and FMI values against the standard reference tables, and opens a work order with the diagnosis already attached — occurrence count included.

No credit card required. Free for up to 3 trucks. Works with your existing telematics hardware.