J1939 Fault Codes Explained: SPN & FMI Guide for Fleets

By Alex Rowan on October 3, 2026

j1939-fault-codes-spn-fmi-explained

A warning lamp on the dashboard tells a driver that something is wrong, but not what or how urgent. The answer sits in the J1939 fault code behind that lamp. Every modern truck, bus and machine on a J1939 network reports faults as an SPN, which names the part, and an FMI, which describes how it failed. Once your team can read those two numbers, a confusing lamp becomes a clear decision. This guide explains both in plain language and shows how fleets turn fault codes into work orders in HVI.

Plain-language guide for fleet managers and workshops

J1939 Fault Codes Explained: SPN and FMI Guide for Fleets

Learn to read any J1939 code in a few seconds, know which ones mean stop now and which can wait, and stop guessing from dashboard lamps.

One fault code, decoded
SA 0SourceEngine controller
SPN 110WhatEngine coolant temperature
FMI 0HowAbove normal, most severe
OC 3How oftenHappened 3 times
Plain meaning: the engine is overheating badly and it is not the first time. Stop safely and check coolant before the engine is damaged.

Read Any J1939 Code in Four Parts

A J1939 diagnostic trouble code always carries the same pieces. Learn them once and every code on every vehicle reads the same way.

SA

Source address

Which controller reported the fault. For example, 0 is usually the engine, 3 the transmission and 11 the brake system controller.

SPN

Suspect parameter number

Which part or value has the problem, such as oil pressure, coolant temperature or DEF tank level.

FMI

Failure mode identifier

How it failed, from 0 to 31. It separates a real high reading from a broken wire or a faulty sensor.

OC

Occurrence count

How many times the fault has happened. A rising count points to a repeat problem, not a one-off glitch.

SPNs from 520192 upwards are reserved for manufacturer-specific codes, so look those up in the OEM's own documentation.

FMI Meaning: The Complete Lookup Table

The same FMI means the same thing on every SPN. That is why reading the FMI first tells you whether to look at the part itself or at its wiring.

FMIMeaningTypeWhere to look first
0Data valid but above normal range, most severeReal readingThe system itself, act now
1Data valid but below normal range, most severeReal readingThe system itself, act now
2Data erratic, intermittent or incorrectSignalSensor, connector and wiring
3Voltage above normal or shorted to high sourceElectricalWiring short to battery voltage
4Voltage below normal or shorted to low sourceElectricalWiring short to ground
5Current below normal or open circuitElectricalBroken wire or loose connector
6Current above normal or grounded circuitElectricalShorted component or wiring
7Mechanical system not responding or out of adjustmentMechanicalActuator, valve or linkage
8Abnormal frequency, pulse width or periodSignalSpeed or position sensor
9Abnormal update rateSignalNetwork messages between controllers
10Abnormal rate of changeSignalSensor or sudden real change
11Root cause not knownOtherFull diagnosis with OEM tool
12Bad intelligent device or componentOtherThe controller or smart sensor
13Out of calibrationOtherCalibration or software
14Special instructionsOtherOEM service information
15Data valid but above normal range, least severeReal readingThe system, plan a check
16Data valid but above normal range, moderately severeReal readingThe system, check soon
17Data valid but below normal range, least severeReal readingThe system, plan a check
18Data valid but below normal range, moderately severeReal readingThe system, check soon
19Received network data in errorSignalThe controller sending the data
20Data drifted highSignalAgeing or contaminated sensor
21Data drifted lowSignalAgeing or contaminated sensor
31Condition existsOtherRead with the SPN description

Active, Inactive and the Lamp That Came On

Two vehicles can show the same code and need very different action. Whether the code is active and which lamp it lit decide the urgency.

DM1

Active codes

The fault is present right now. These need a decision today, starting with any that lit the red stop lamp.

DM2

Previously active codes

The fault happened and stopped. A high occurrence count here often warns of a loose connector or a failing part.

Red stop lampStop safely as soon as possible
Amber warning lampKeep working, fix soon
Malfunction indicatorEmission-related fault, may lead to derate
Protect lampA system is protecting itself, check soon

Stop Reading Fault Codes One Vehicle at a Time

HVI decodes SPN and FMI into plain language, ranks them by severity and puts the right ones in front of your workshop as work orders.

Common J1939 Codes on Indian BS-VI Trucks and Machines

These standard SPNs appear again and again in Indian fleets. The FMI shown is a typical example, and the action depends on which FMI your vehicle actually reports.

SPN 100 FMI 1Stop now

Engine oil pressure very low

Stop the engine. Check oil level and look for leaks before restarting.

SPN 110 FMI 0Stop now

Coolant temperature very high

Stop and let it cool. Check coolant level, radiator fins and fan drive.

SPN 97 FMI 15Same day

Water in fuel detected

Drain the water separator and check where the fuel was filled.

SPN 1761 FMI 18Same day

DEF tank level low

Top up with clean DEF before the engine moves into derate.

SPN 4364 FMI 18Same day

SCR conversion efficiency low

Check DEF quality, the doser and NOx sensors. A common BS-VI derate cause.

SPN 3226 FMI 2Next service

Outlet NOx sensor signal erratic

Inspect the sensor connector and wiring before replacing the sensor.

SPN 3719 FMI 16Same day

DPF soot load high

Allow or start a regeneration and review long idling on that vehicle.

SPN 168 FMI 4Next service

Battery voltage low

Test batteries, terminals and alternator charging.

From Fault Code to Fixed: How HVI Handles It

A fault code is only useful if someone acts on it. HVI connects the code to the people who fix it, and keeps the record when it is done.

J1939 Fault Code FAQs

What is the difference between SPN and FMI?

The SPN tells you which part or value has the problem, such as oil pressure or coolant temperature. The FMI tells you how it failed, for example a real high reading, an open circuit or an erratic signal. You need both together to understand the fault and decide where a mechanic should start.

Which J1939 fault codes need the vehicle stopped immediately?

Any code that lights the red stop lamp needs the vehicle stopped safely as soon as possible. Very low oil pressure, very high coolant temperature and serious brake system faults are typical examples. Teams that receive codes in HVI can alert the supervisor the moment one appears.

Why does the same code keep coming back after it is cleared?

Clearing a code only removes the record, not the cause. If the code returns, the fault is still there, often a loose connector, a chafed wire or a failing sensor. The occurrence count and the code history across days are the best clues to find a repeat problem.

Do Tata, Ashok Leyland, BharatBenz and Cummins use the same codes?

Standard SPNs and all FMIs follow SAE J1939, so a code like SPN 110 means the same on any make. Each manufacturer also adds its own codes in the proprietary SPN range, which need the OEM's documentation to read. A fleet tool should show both clearly so mixed fleets are not confused.

How can a fleet manage fault codes across many vehicles?

Checking each vehicle with a hand-held reader does not scale beyond a few trucks. A central system that collects codes, ranks them and turns the urgent ones into work orders keeps the workshop focused on what matters. Book a demo to see fault code work orders in HVI.

Turn Every Fault Code Into the Right Action

Decode SPN and FMI in plain language, see which vehicles need to stop and which can wait, and close each fault with a recorded repair. Your workshop spends less time guessing and more time fixing.


Share This Story, Choose Your Platform!