What do SPN and FMI mean on a truck?
SPN is the Suspect Parameter Number: it names the component or signal the truck is complaining about, like oil pressure or DEF quality. FMI is the Failure Mode Identifier, a number from 0 to 31 that says how it failed: too high, too low, open circuit, erratic. Together they form the heavy-duty fault code defined in SAE J1939, the network every Class 8 built since the mid-2000s runs on.
SPN: what is wrong
J1939 defines many thousands of SPNs. Low numbers are engine signals: SPN 100 is oil pressure, SPN 110 coolant temperature, SPN 102 boost pressure. The 3000s are aftertreatment: SPN 3251 is DPF differential pressure, SPN 3364 DEF quality, SPN 3719 soot load. SPN 639 is the J1939 datalink itself. Numbers from 520192 up are proprietary to the truck or engine maker.
Seeing a light on the dash? Snap it with DERATE and know if you can keep driving
FMI: how it is wrong
The FMI list is the same for every SPN, and it says whether SPN 100 means oil pressure too low, a shorted sensor or a dead signal. The ones you will actually see:
- 0 Data valid but above normal, most severe.
- 1 Data valid but below normal, most severe.
- 2 Data erratic, intermittent or incorrect.
- 3 Voltage above normal or shorted high. Usually wiring or sensor.
- 4 Voltage below normal or shorted to ground.
- 5 Current below normal or open circuit. Broken wire or unplugged connector.
- 6 Current above normal or grounded circuit.
- 7 Mechanical system not responding or out of adjustment. The electronics are fine; the part is not moving.
- 9 Abnormal update rate. A module stopped sending on time, usually a datalink problem.
- 11 Root cause not known.
- 12 Bad intelligent device or component. The module failed.
- 13 Out of calibration.
- 14 Special instructions. Look it up in the OEM manual.
- 15 Above normal, least severe. 16 Above normal, moderately severe.
- 17 Below normal, least severe. 18 Below normal, moderately severe.
- 19 Network data received in error.
- 31 Condition exists. Not a reading, a state: a derate is active, the DEF tank is empty.
The pattern: 0 and 1 are critical readings, 15 to 18 the same readings at warning level, 3 to 6 wiring or sensor, 7 mechanical, 31 a state the truck already decided.
Occurrence count, active or inactive, and source address
Every fault carries an occurrence count (OC): how many times it has gone from inactive to active, capped at 126 on most systems. OC 1 is new. OC 40 on an inactive code is a fault that comes and goes.
Active faults are what a module reports right now, broadcast once a second as a DM1 message. Inactive faults are history stored as DM2. The check engine lamp follows active faults; an inactive code with no lamp rarely needs a shop today.
The same SPN can come from different modules, so each fault also carries a source address (SA): 0 is the engine ECM, 3 transmission, 11 brake controller (ABS), 33 body or cab controller, 49 or 61 aftertreatment depending on platform. Dashes often show a label instead, like EEC61 or CAB33 on a Freightliner.
How OEM codes map to SPN/FMI
Cummins, Detroit and PACCAR keep their own code numbers on top of J1939, so one fault can have two names.
- Cummins uses three- and four-digit fault codes. Code 415 is SPN 100 FMI 1, oil pressure dangerously low. Code 1922 is SPN 3251 FMI 0, DPF pressure critically high; 1921 is the same SPN with FMI 16. Code 3714 is SPN 1569 FMI 31, torque derate active.
- Detroit shows SPN and FMI directly in DDDL and on the Cascadia dash; older Series 60 engines used two-digit flash codes.
- PACCAR MX shows P-style codes in DAVIE alongside the SPN/FMI; the dash shows the SPN/FMI.
The SPN/FMI pair is the common language. Write both down.
Three worked examples
- SPN 3251 FMI 0: DPF differential pressure, above normal, most severe. Plugged DPF, cracked sensor tube or bad sensor. A regen request comes first, a derate if ignored. See the DPF regeneration guide.
- SPN 3364 FMI 18: DEF quality, below normal, moderately severe. Urea off spec from water or diesel in the tank, or a sensor fault. Starts an inducement timer on 2013+ trucks. See DEF fault codes explained.
- SPN 100 FMI 1: oil pressure, below normal, most severe. Red stop lamp; shut down within a minute. Low oil, failed pump, plugged pickup or, if the gauge reads normal, a sensor.
What to do when you see one
- Note the lamp colour: amber means plan, red means stop.
- Write down SA, SPN, FMI and OC for every fault, not just the first.
- Photograph the dash lamps or the scanner screen with DERATE; the iPhone app gives a free keep-driving, caution or stop verdict, and the causes, steps and cost range come with a plan.
- Budget: a wiring or sensor fix typically runs about $150 to $600; a DPF cleaning about $300 to $700; DPF or DEF component replacement can reach thousands. Prices vary by shop and region.
FAQ
Is a higher FMI number worse?
No. FMI 0 and 1 are the most severe; 15 to 18 are the same conditions at a milder level. The number is a category, not a ranking.
Why does my dash show a four-digit code but the shop talks about an SPN?
Cummins and some other makers use their own numbers that map to an SPN/FMI pair. Cummins 3714 and SPN 1569 FMI 31 are the same fault. Ask for both.
Do inactive codes matter?
They are history, not an emergency. A high occurrence count on an inactive code points to an intermittent fault worth fixing before it strands you.