Skid Steer Error Codes: Decode Display Messages (Bobcat, Cat, John Deere, Kubota)
Skid Steer Codes Are Brand-Specific, Not OBD-II
Unlike cars which all share the generic OBD-II code format (P0301, P0420, etc), skid steers use proprietary numbering inherited from their engine and controller manufacturers. You cannot plug a $50 OBD-II scanner into a skid steer and get a meaningful code. Bobcat uses M-codes on the in-cab display. Cat uses a CID/FMI format where CID is the component ID and FMI is the failure mode. John Deere 300-series uses 4-digit numeric codes displayed on the Standard or Deluxe monitor. Kubota SVL and SSV skid steers use fault codes that map to SPN/FMI over the J1939 CAN bus. This guide translates what each family means and which codes usually require a scan tool versus which ones you can clear yourself.
Bobcat M-Codes: The M03xx Series You See Most
Bobcat S-series, T-series, and newer R-series skid steers display M-codes when a fault is active. M-codes cover categories including seat/interlock faults, system voltage faults (M0309 is System Voltage Too Low, M0311 is System/Battery Voltage Extremely High on many models), engine coolant temperature (in the M08xx range on many models), DPF soot load, DEF quality, and hydraulic pressure -- but exact numbering varies by model and model year, so always verify the specific code against your machine's operator manual or the Bobcat Service Analyzer tool rather than assuming a number from a generic list. An M-code on the dash blocks travel or lift functions until you acknowledge it; a flashing M-code with a derate limits engine RPM or travel speed. Bobcat service manuals translate M-codes to the underlying J1939 SPN/FMI for technicians using the Bobcat Service Analyzer tool.
Caterpillar Skid Steer Codes: CID/FMI Format
Cat 226D3, 236D3, 242D3, 246D3, 262D3, 272D3 skid steers and Cat compact track loaders use the standard CID/FMI format that Cat has used on big iron for decades. A code like CID 681 FMI 04 points to CID (component ID) 681 which is the park brake solenoid, and FMI (failure mode indicator) 04 which means voltage below normal (short to ground) -- always confirm the exact CID against your specific model's fault-code table since CID assignments are model-dependent. Common CIDs on skid steers: 247 (engine speed sensor), 100 (engine oil pressure), 110 (coolant temp), 320 (throttle position), 3134 (engine control module bus fault), 4077 (DPF differential pressure), 5629 (DEF level). The Cat operator display shows the CID/FMI, a brief description, and sometimes a severity level. Cat ET (Electronic Technician) is the dealer tool that reads and clears these codes; Noregon JPRO and Diesel Laptops CF-54 read them aftermarket.
John Deere 300 Series Skid Steer Codes
John Deere 317G, 318G, 320G, 324G, 328G, 330G, 332G skid steers and their compact track loader cousins use a 4-digit fault code on the Deluxe or Premium monitor. The format is typically SPN.FMI expressed as a combined number. Common codes: 100.01 (engine oil pressure low), 105.03 (intake air temp high), 190.00 (engine overspeed), 629.12 (ECU fault), 630.12 (transmission ECU fault), 639.12 (J1939 CAN fault), 3251.00 (DPF differential pressure very high), 3719.00 (DPF soot load very high). A warning triangle with the code number appears when a fault sets. Pressing the select button shows a text description. The Service ADVISOR EDL v2 or v3 interface with Service ADVISOR software on a laptop reads and clears these. The monitor itself does not clear hard-set codes.
Kubota SVL and SSV Skid Steer Codes
Kubota SVL75, SVL90, SVL95, SSV65, SSV75 track and wheel skid steers use a combined alphanumeric code displayed on the operator monitor. Format is typically Exxxx or Pxxxx followed by a description. Common fault families: E:2300 series are engine ECU codes (E:2306 is throttle position sensor, E:2320 is rail pressure sensor). E:3000 series cover aftertreatment. P:0200 series cover hydraulic system. Under the hood the codes map to J1939 SPN/FMI. Kubota Diagmaster is the dealer scan tool. A generic J1939 reader like Noregon JPRO will see the underlying codes but not always the Kubota-specific text. Common issues on these machines: DPF differential pressure sensor, hydrostatic charge pressure, and the travel lock solenoid.
Hydrostatic Drive Faults (The Most Common Shop Visit)
Skid steers use a hydrostatic pump per side (or a single tandem pump feeding two motors). When the drive ECU sees a mismatch between commanded travel and actual wheel speed, it sets a fault and may limit travel. Common causes: failed charge pressure sensor (easy to replace), low hydraulic fluid level (check dipstick or sight gauge), worn pump drive coupling, burnt drive motor windings (expensive), or a stuck displacement control solenoid. A travel fault typically shows as a symbol with a red X or a CID/SPN pointing at the drive pump or motor. Before jumping to pump replacement, verify hydraulic oil level, check filter condition, and scan for specific codes.
DPF and Aftertreatment Faults
Every skid steer over 25 hp sold in North America since 2013 has a DPF. Skid steers work at wildly variable duty cycles and often idle a lot, which means their DPFs clog fast. Common codes: SPN 3251 FMI 0 (DPF diff pressure high), SPN 3719 FMI 0 (soot load very high), SPN 3609 FMI 4 (DPF inlet pressure low circuit), SPN 4364 FMI 18 (SCR efficiency low). If an operator ignores the initial DPF warning, the machine derates then locks out. A parked regen usually clears light to moderate soot; heavy ash loading requires dealer service regen or physical DPF cleaning. DEF quality faults set when cheap or contaminated DEF is used, or when the DEF heater fails in cold climates.
Safety Interlock Codes and the Temptation to Jumper Them
Seat switch, seat bar, door switch, and parking brake interlocks all set fault codes when triggered. Operators frustrated with a machine that will not move sometimes bypass the seat switch with a jumper wire. DO NOT do this. Skid steers cause a disproportionate share of construction-industry fatalities, and the seat interlock is the reason modern skid steers are not even more dangerous. A bad seat switch is a $30 part and 20 minutes of work. A bypassed seat switch that lets the machine drive off with no operator aboard is a wrongful death lawsuit waiting to happen. The same goes for seat bar and door switches. Fix the switch, do not jumper it.
Frequently Asked Questions
Can I read skid steer codes with a generic OBD-II scanner?
No. Skid steers use SAE J1939 CAN at 250k baud, not OBD-II at 500k. A cheap OBD-II reader plugged into a skid steer will report no communication. You need a J1939-capable tool such as Noregon JPRO, Diesel Laptops CF-54, Cojali JDC, Autel MaxiSys CV, or the brand-specific dealer tool (Bobcat Service Analyzer, Cat ET, John Deere Service ADVISOR, Kubota Diagmaster). Some aftermarket tools read J1939 codes but miss the proprietary brand codes layered on top.
What is the difference between a yellow warning and a red warning on the skid steer display?
Yellow is informational or pending -- the machine can still operate but the operator should respond soon. Red is active and the machine will derate or lock out. Most brands use this two-tier scheme. A flashing red symbol with a fault code usually means imminent lockout. Pay attention to yellow warnings -- ignoring them is what leads to red derate and expensive repairs.
My skid steer will not move but the engine runs fine. What codes should I look for?
Look for drive-related SPN or CID codes. SPN 628 or 629 are ECU faults. SPN 636-642 are speed and position sensors. Machine-specific drive fault codes indicate charge pressure, displacement control, or travel interlock issues. Verify hydraulic oil level, check for a stuck parking brake solenoid, and confirm the seat and seat bar switches are functioning before assuming a hydraulic pump failure.
Is it safe to operate a skid steer with a fault code active?
Depends on the code. A minor sensor fault (pending, yellow) usually does not affect operation and you can finish the task. An active fault with derate or lockout should be investigated before continuing -- ignoring it can damage components. Never operate a skid steer with an active seat, seat bar, or brake interlock fault; these are safety-critical.
How much does a dealer charge to diagnose and clear a skid steer code?
Diagnostic fee is typically $125-$200 for the first hour, plus any travel or trip charge. Clearing a simple code once the underlying fault is fixed usually takes 15-30 minutes. If the dealer has to do a forced parked regen plus a soot counter reset, plan on 1-2 hours. Field service is more expensive than shop service. Investing in a Noregon JPRO or similar scan tool pays for itself after 3-4 calls for a fleet.