CAT 31 Fault Code: Vehicle Speed loss of signal
Also called Loss of vehicle speed signal
Vehicle Speed loss of signal · ai-assisted, editor-reviewed · Last updated 2026-07-13
TL;DR
CAT fault code 31, SPN 84 FMI 1, means the Engine Control Module (ECM) is not seeing a valid vehicle speed signal when it expects one, on C11, C13, C15, and C18 engines. This usually points to a wiring, sensor, calibration, or ECM issue in the vehicle speed circuit, though a few triggers involve fuel restriction affecting engine speed behavior.
Medium severity. This code does not by itself indicate an immediate mechanical failure, but it disables accurate vehicle speed limiting (VSL Protection) and related engine speed governing functions. Left unaddressed, it can allow the engine to run at speeds the VSL Protection feature is meant to prevent, which is a safety and compliance concern for road-going trucks. Diagnose during the current shift rather than ignoring it.
What does CAT error code 31 mean?
Fault code 31 is set by the ECM when it cannot detect a valid vehicle speed signal under conditions where vehicle speed should clearly be present, or when the ECM's calculated vehicle speed is 0 MPH while engine speed behavior suggests the vehicle is moving or being commanded to move.
Vehicle speed can reach the ECM three ways: a hard-wired electronic vehicle speed sensor connected to ECM connector J1/P1 terminal 32 (vehicle speed in positive), a J1939 message from an electronic transmission control unit reporting output shaft speed, or a J1939 message from the Anti-lock Brake System reporting rear wheel speed. Regardless of which source is configured, the ECM uses the resulting vehicle speed value the same way to control speed limiting and related functions.
When the ECM loses this signal, or receives an invalid value, it cannot properly enforce the 'VSL Protection' engine speed limit, so it logs code 31 to alert the operator or technician that the vehicle speed input needs attention.
What triggers a CAT 31 code?
Several distinct set-conditions are described. In one case, the code sets when 'VSL Protection' is not programmed to 'TEL', when the ECM does not detect vehicle speed while conditions indicate it should be present, or when desired engine speed is greater than the programmed VSL Protection value. In other cases, the code sets when the vehicle speed signal indicates 0 MPH, engine speed is greater than the programmed VSL Protection value minus 100 RPM for at least 0.06 seconds, desired engine speed is greater than the programmed VSL Protection value, the change in engine speed is less than 133 RPM per second for at least 0.06 seconds, and the VSL Protection parameter is programmed to a value less than 2120 rpm.
Common causes of 31
- ECM connection or harness fault at the vehicle speed input circuit
- Vehicle speed not calibrated properly in the ECM (including tire size or gear ratio changes that were not re-programmed)
- Faulty vehicle speed sensor
- Vehicle speed sensor connection or harness problem, including open or short circuits in the wiring from the electronic speed source to the ECM
- Failed ECM
- Fuel restriction (uncommon, but listed as possible)
- Debris in the fuel tank
- Speedometer failure or an inaccurate speedometer paired with incorrect ECM programming
How to troubleshoot CAT 31: first checks
- Inspect the wiring from the electronic vehicle speed source to the ECM for open circuits or short circuits, paying attention to ECM vehicle harness connector terminals J1/P1-32 and J1/P1-33
- Confirm nothing else is connected to the vehicle speed in positive line (terminal 32), such as a speedometer tapped into that wire, since this is not allowed and can cause signal problems
- Verify the vehicle speed calibration in the ECM matches the actual tire size and gear ratio, especially if tires or axle ratios were recently changed
- If the vehicle uses J1939 for vehicle speed, confirm the transmission control unit or Anti-lock Brake System is broadcasting the correct message (ETC1 for transmission output shaft speed, or the high resolution wheel speed message for ABS) and that the J1939 data link hardware is properly installed
- Check for fuel restriction or debris in the fuel tank if engine speed behavior around the VSL Protection threshold looks abnormal
- Inspect the vehicle speed sensor itself and its connector for damage, corrosion, or looseness
How the code clears
No separate clearing step is listed. Caterpillar directs technicians to the 'Vehicle Speed and Speedometer Circuit - Test' procedure and the 'Vehicle Speed Circuit - Calibrate' procedure to diagnose and correct the underlying cause, after which the code should stop being active once the fault condition is resolved.
Affected models and serial ranges
31 appears in our records across 4 CAT models. Match your machine by model and serial number.
| Model | Serial ranges |
|---|---|
| C11 | Serial range not listed in source records |
| C13 | Serial range not listed in source records |
| C15 | Serial range not listed in source records |
| C18 | Serial range not listed in source records |
Frequently asked questions
What does CAT fault code 31 mean?
It means the ECM on a C11, C13, C15, or C18 engine has lost the vehicle speed signal, or the signal it is receiving does not make sense given how the engine is running. It is tied to SPN 84 FMI 1 in the J1939 fault code system.
Is CAT code 31 safe to keep driving with?
It is not an emergency shutdown code, but it disables proper enforcement of the VSL Protection engine speed limit. Get it diagnosed within the same shift rather than running on it long term.
Can a tire size change cause this fault?
Yes. If tire size or gear ratio changes without updating the vehicle speed calibration in the ECM, the calculated vehicle speed can be wrong enough to trigger this code.
Where does the vehicle speed signal come from on these engines?
It can come from a hard-wired electronic vehicle speed sensor on ECM connector terminal J1/P1-32, from a transmission control unit over J1939, or from the Anti-lock Brake System over J1939, depending on how the vehicle is configured.
Can a fuel problem trigger a vehicle speed fault code?
Caterpillar lists fuel restriction and debris in the fuel tank as possible, though uncommon, causes when the fault relates to engine speed behavior near the VSL Protection threshold.
Does a bad speedometer cause fault code 31?
A speedometer failure or an inaccurate speedometer combined with incorrect ECM programming is listed among the probable causes, so yes, it can contribute.
What should a technician check first for code 31?
Start with the wiring between the vehicle speed source and the ECM, checking for opens or shorts, then confirm nothing extra is wired onto the vehicle speed in positive line and that the ECM's speed calibration matches the actual tires and gearing.