J1939 FMI Codes — Failure Mode Identifier Reference
Modern electronic engines and machines report faults as an SPN (which component or parameter) plus an FMI (how it failed). The FMI definitions below are the SAE J1939 standard set, used by Caterpillar (CDL), Cummins and most other electronic engines. FMI values 20–30 are reserved by SAE; 31 means “condition exists”.
| FMI | Meaning (SAE J1939) |
|---|---|
| 0 | Data valid but above normal operational range (most severe) |
| 1 | Data valid but below normal operational range (most severe) |
| 2 | Data erratic, intermittent or incorrect |
| 3 | Voltage above normal, or shorted to high source |
| 4 | Voltage below normal, or shorted to low source |
| 5 | Current below normal or open circuit |
| 6 | Current above normal or grounded circuit |
| 7 | Mechanical system not responding or out of adjustment |
| 8 | Abnormal frequency or pulse width or period |
| 9 | Abnormal update rate |
| 10 | Abnormal rate of change |
| 11 | Root cause not known |
| 12 | Bad intelligent device or component |
| 13 | Out of calibration |
| 14 | Special instructions |
| 15 | Data valid but above normal operational range (least severe) |
| 16 | Data valid but above normal operational range (moderately severe) |
| 17 | Data valid but below normal operational range (least severe) |
| 18 | Data valid but below normal operational range (moderately severe) |
| 19 | Received network data in error |
| 31 | Condition exists |
How to use this
Read the SPN first — it tells you what failed. Then use the FMI to decide your first test: voltage codes (3/4) point at the wiring and sensor supply; current codes (5/6) at the circuit and coil; data-range codes (0/1) at the real measured value. Brand pages on this site — Caterpillar — apply the same FMI meanings.
Source: SAE J1939-71 FMI definitions, as published in multiple public references (spnfmi.com; WholeFleet CAT code guide; LOFA CANplus 600 manual). Compiled 2026-10-29.