Every J1939 fault code is two numbers: the SPN (Suspect Parameter Number) points at the failing component, the FMI (Failure Mode Identifier) describes the failure. Decode those two numbers and you can triage any truck before you open a manual.
The full FMI table (memorize the top six)
| FMI | Meaning | Typical cause |
|---|---|---|
| 0 | Data valid but above normal range | Overboost, high temp, high pressure |
| 1 | Data valid but below normal range | Low pressure, low voltage supply |
| 2 | Data erratic or incorrect | Wiring chafe, intermittent sensor |
| 3 | Voltage above normal / short high | Short to battery, open ground |
| 4 | Voltage below normal / short low | Short to ground, failed sensor |
| 5 | Current below normal / open circuit | Broken wire, unplugged connector |
| 7 | Mechanical system not responding | Stuck valve, failed actuator |
| 9 | Abnormal update rate | CAN communication problems |
| 13 | Out of calibration | Needs calibration or coding |
| 31 | Condition exists | Catch-all for proprietary faults |
How to look up any code
- Step 1: note SPN and FMI exactly (e.g., SPN 3216 FMI 4).
- Step 2: check our per-engine pages — the most-searched codes have full diagnostic pages.
- Step 3: SPN alone tells you the system: 3216 = NOx sensor, 3226 = aftertreatment NOx, 5246 = SCR derate sequence.
- Step 4: FMI tells you the direction: 3/4 = electrical, 0/1 = out of range, 7 = mechanical.
Common SPN ranges by system
| SPN range | System |
|---|---|
| 27, 84, 91, 102 | Engine position/speed, fuel, boost |
| 641, 651–679 | Injector control (cyl 1–6) |
| 3216, 3226, 3227 | NOx sensors (upstream/downstream) |
| 3364, 4334, 4339 | DEF/SCR dosing and quality |
| 3241–3246, 5246 | DPF soot, temperatures, derate sequence |
| 51, 521–563 | Brake/ABS wheel speed & pressure |
Frequently Asked Questions
Is SPN/FMI the same as an OBD-II P-code?
No. P-codes are the light-duty OBD-II format; SPN/FMI is the J1939 heavy-duty format. Medium-duty trucks straddle both worlds — a truck scanner shows SPN/FMI, a car scanner shows P-codes for the same fault.
What does 'active' vs 'inactive' fault mean?
Active faults are present now and usually lit the MIL. Inactive (stored) faults occurred previously — they tell the history but may not be current. Diagnose actives first; inactives guide pattern-spotting.
Where do I find the FMI list officially?
SAE J1939-73 defines the application-layer diagnostics. Our table above covers the FMIs you'll actually meet; the per-engine pages map them to real components.