Skip to content
Bobber Brothers

Harley Davidson Diagnostic Codes: Full DTC List & Fixes

Harley Davidson Diagnostic Codes: Full DTC List & Fixes

When your Harley throws a check engine light, you need answers fast. This is the complete reference for every Harley Davidson diagnostic trouble code (DTC) we could track down - organized by system so you can find what you need without scrolling through a wall of text.

We built this list from factory service manuals, dealer documentation, and years of wrenching on our own bikes. Bookmark it. You will be back.

How Harley Diagnostic Codes Work

Harley Davidson uses the standard OBD (On-Board Diagnostics) code format across all EFI-equipped models. Each code starts with a letter that tells you which system is affected:

  • P = Powertrain - Engine, transmission, fuel, ignition
  • B = Body - Security system, turn signals, switches, lighting
  • C = Chassis - ABS, brakes, suspension
  • U = Network - Communication between modules (ECM, speedometer, ABS, security)

The number after the letter tells you more. If the second digit is 0, it is a generic/standard code. If it is 1, it is a Harley-specific (manufacturer) code.

Older carbureted and Evolution models used simpler two-digit codes before Harley adopted the OBD format.


How to Enter Diagnostic Mode on Your Harley

The method depends on your model and year. Here is how to pull codes on the most common setups.

Sportster, Dyna, Softail (2004-2017 with Speedometer/Tach)

  1. Turn the ignition switch to OFF.
  2. Push and hold the odometer reset button.
  3. While holding the button, turn the ignition to ON (do not start the engine).
  4. Release the button when the background lighting comes on.
  5. Push the odometer reset button once to cycle through each module and its stored codes.
  6. The display shows the module abbreviation first, then any stored codes.

Touring Models (2004-2013 with 4-Button Gauges)

  1. Turn the ignition switch to ON (do not start the engine).
  2. Simultaneously press and hold both trip reset buttons until the word “diag” appears.
  3. Use the buttons to scroll through each module and its DTCs.

All Models with Screamin’ Eagle Pro Tuner or Dealer Tools

  1. Plug the diagnostic cable into the 4-pin or 6-pin data link connector under the left side cover.
  2. Use Digital Technician II (dealer tool), TTS Mastertune, or Screamin’ Eagle Pro Street Tuner software.
  3. Navigate to “Read DTCs” to view current and historic codes.

Carbureted Models (Pre-EFI)

Older carbureted Harleys flash codes through the check engine light. Turn the ignition on without starting the engine and count the flashes. A pause separates the tens digit from the ones digit.

For more on sensor-related issues, read our guide on symptoms of a bad crank position sensor on a Harley.


Early EFI Models (1995-2001) - Two-Digit Codes

These apply to Harley-Davidson models equipped with the Magneti Marelli EFI system, used on select touring models from 1995 through 2001.

Engine Management

CodeDescription
21Engine Temperature Sensor Circuit Low
22Engine Temperature Sensor Circuit High
23Throttle Position Sensor Low Voltage
24Throttle Position Sensor High Voltage
25MAP Sensor Circuit Low
26MAP Sensor Circuit High
27Injector Circuit Malfunction - Front Cylinder
28Injector Circuit Malfunction - Rear Cylinder
31Front Cylinder No Combustion
32Rear Cylinder No Combustion
33System Voltage Low
34System Voltage High
35Idle Speed Control Error
41Front Oxygen Sensor Circuit Low
42Front Oxygen Sensor Circuit High
43Rear Oxygen Sensor Circuit Low
44Rear Oxygen Sensor Circuit High

System Codes

CodeDescription
51EEPROM Error
52ROM Error
53RAM Error
54System Relay Malfunction
55Serial Data Link Error
56Password Error / Security
61CKP (Crank Position) Sensor Error
62VSS (Vehicle Speed Sensor) Error
63Tach Output Error
64Cam Position Error

Evolution Models (1984-1994) - Two-Digit Codes

Basic Diagnostic Codes

CodeDescription
11No Engine RPM Signal
12No VSS Signal
13MAP Sensor Error
14Battery Voltage Low
15Engine Temperature Circuit
16Throttle Position Error
17Bank Angle Sensor
18System Relay
19Security System

Evolution-Specific Codes

CodeDescription
71Carburetor Adjustment Required
72Ignition Timing Error
73Low Fuel Pressure
74Starting System Error
75Oil Pressure Warning
76Neutral Switch Circuit
77Side Stand Switch Circuit
78Clutch Switch Circuit
79Turn Signal Circuit Error

P-Codes - Powertrain (EFI Models)

These are the most common codes you will see on any EFI Harley from 2001 onward.

ECM Memory and Communication

CodeDescription
P0605ECM FLASH Memory Error
P0603ECM EEPROM Memory Error
P1600EFI Module Processor Internal Error
P2107EFI Module Processor Internal Fault
P1009Incorrect Password
P1010Missing Password

System Relay

CodeDescription
P1001System Relay Coil Open / Low
P1002System Relay Coil High / Shorted
P1003System Relay Contacts Open
P1004System Relay Contacts Closed

Battery and Voltage

CodeDescription
P0562Battery Voltage Low
P0563Battery Voltage High
P06415V Reference 1 Out of Range
P06515V Reference 2 Out of Range

Crankshaft Position Sensor (CKP)

Problems here are one of the most common reasons a Harley won’t start or stalls at random. See our full breakdown: Symptoms of a bad crank position sensor on a Harley Davidson.

CodeDescription
P0335CKP Sensor Circuit Malfunction
P0336CKP Sensor Range / Performance
P0337CKP Sensor No Signal
P0373CKP Sensor Intermittent
P0374CKP Sensor Sync Error

MAP Sensor

CodeDescription
P0107MAP Sensor Open / Low
P0108MAP Sensor High
P0106MAP Sensor Range / Performance

Temperature Sensors

CodeDescription
P0117Engine Temperature Sensor Low
P0118Engine Temperature Sensor High
P0116Engine Temperature Sensor Range / Performance
P0112Intake Air Temperature Voltage Low
P0113Intake Air Temperature Voltage Open / High

Throttle Position Sensor (TPS)

CodeDescription
P0120TPS1 Range Error
P0122TPS1 Low
P0123TPS1 High / Open
P0220TPS2 Range Error
P0222TPS2 Low
P0223TPS2 High / Open
P2135TPS Correlation Error

Twist Grip Sensor (TGS) - Throttle-by-Wire Models

CodeDescription
P2122TGS1 Low / Open
P2123TGS1 High
P2127TGS2 Low / Open
P2128TGS2 High
P2138TGS Correlation Error
P1270TGS Validation Error

Vehicle Speed Sensor (VSS)

CodeDescription
P0501VSS Low
P0502VSS High / Open
P0500VSS Circuit Malfunction

Oxygen Sensors

CodeDescription
P0131Front O2 Sensor Low
P0132Front O2 Sensor High
P0134Front O2 Sensor Inactive
P0151Rear O2 Sensor Low
P0152Rear O2 Sensor High
P0154Rear O2 Sensor Inactive
P0130Front O2 Sensor Circuit Malfunction
P0150Rear O2 Sensor Circuit Malfunction

EFI Motor and Throttle Body

CodeDescription
P2100EFI Motor Circuit Open
P2101EFI Motor Circuit Range / Performance (Actuation Error)
P2102EFI Motor Circuit Low
P2103EFI Motor Circuit High
P2119EFI Motor Throttle Body Range / Performance
P2176EFI Closed Position Not Learned
P1514Air Flow Fault
P2105EFI Forced Engine Shutdown

ECM Operating Modes

When the ECM detects a serious problem, it enters a reduced power or limited mode to protect the engine. These codes tell you which mode is active and why.

CodeDescription
P1510EFI Limited Performance Mode
P1511EFI Power Management Mode
P1512EFI Forced Idle Mode
P1513Reduced Power - Battery Voltage
P1514Reduced Power - Engine Temperature
P1515Reduced Power - Oil Pressure
P1516Reduced Power - Throttle Position
P1517Reduced Power - Security

Ignition System

If you are chasing misfire issues, also check your plugs. Here is our Harley Davidson spark plug cross reference chart.

CodeDescription
P0351Ignition Coil Primary Circuit Malfunction - Front
P0352Ignition Coil Primary Circuit Malfunction - Rear
P1351Front Ignition Coil Driver Open / Low
P1352Front Ignition Coil Driver High / Shorted
P1354Rear Ignition Coil Driver Open / Low
P1355Rear Ignition Coil Driver High / Shorted

Combustion and Fuel System

CodeDescription
P1353Front Cylinder No Combustion
P1356Rear Cylinder No Combustion
P1357Front Cylinder Combustion Intermittent
P1358Rear Cylinder Combustion Intermittent
P0171System Too Lean - Front Cylinder
P0172System Too Rich - Front Cylinder
P0174System Too Lean - Rear Cylinder
P0175System Too Rich - Rear Cylinder
P0300Random / Multiple Cylinder Misfire Detected
P0301Front Cylinder Misfire Detected
P0302Rear Cylinder Misfire Detected

Fuel Injectors

CodeDescription
P0201Front Injector Circuit Malfunction
P0202Rear Injector Circuit Malfunction
P0261Front Injector Open / Low
P0262Front Injector High
P0263Rear Injector Open / Low
P0264Rear Injector High

Fuel Pump

CodeDescription
P0230Fuel Pump Relay Circuit
P0231Fuel Pump Secondary Circuit Low
P0232Fuel Pump Secondary Circuit High

Exhaust and Emissions

CodeDescription
P0444Purge Solenoid Open / Low
P0445Purge Solenoid High
P1475Exhaust Actuation Position Error
P1477Exhaust Actuator Open / Low
P1478Exhaust Actuator Shorted / High

Idle and Cruise Control

CodeDescription
P0505Idle Control System Malfunction
P0507Idle Control System RPM Higher Than Expected
P0508Idle Air Control Circuit Low
P0509Idle Air Control Circuit High
P0577Cruise Control Input High
P0572Brake Switch Low

Harley Davidson Diagnostic Codes: Full DTC List & Fixes

Ride your own way. We make gear for the garage and the road.

Check out our t-shirt collection - built for riders who wrench on their own bikes.


B-Codes - Body (Security, Switches, Lighting)

Turn Signal Module (TSM) and Hands-Free Security Module (HFSM)

TSM = Turn Signal Module. HFSM = Hands-Free Security Module (fob-based system on 2007+ models).

CodeDescription
B1121Left Turn Output Fault (TSM/HFSM)
B1122Right Turn Output Fault (TSM/HFSM)
B1123Left Turn Output Short to Ground (HFSM)
B1124Right Turn Output Short to Ground (HFSM)
B1125Left Turn Output Short to Battery (HFSM)
B1126Right Turn Output Short to Battery (HFSM)
B1127Accessory Output Fault (HFSM)
B1128Accessory Output Short to Ground (HFSM)
B1129Accessory Output Short to Battery (HFSM)

Security System

CodeDescription
B1134Starter Output High
B1135Accelerometer Failed
B1136Accelerometer Tip Test Error (HFSM)
B1141Ignition Switch Low / Open (TSM/HFSM)
B1142Smart Security System Internal Fault
B1143Security Antenna Short to Ground (HFSM)
B1144Security Antenna Short to Battery (HFSM)
B1145Security Antenna Open (HFSM)
B1131Alarm Output Low (HFSM)
B1132Alarm Output High (HFSM)

Switches and Sensors

CodeDescription
B1151Bank Angle Sensor Short to Ground
B1152Bank Angle Sensor Short to Battery
B1153Bank Angle Sensor High
B1154Clutch Switch Input Short to Ground
B1155Neutral Switch Input Short to Battery
B1156Ignition Switch Circuit Intermittent
B1157Handlebar Lock Circuit Malfunction
B1158Security System Communication Error
B1159Security System Antenna Circuit Intermittent
B1160Vehicle Speed Input Error

System Voltage (Body Module)

CodeDescription
B0562Battery Voltage Low (Body Module)
B0563Battery Voltage High (Body Module)

C-Codes - Chassis (ABS)

These codes come from the ABS module. If your ABS light stays on, one of these is stored.

CodeDescription
C0565Rear Wheel Speed Sensor Circuit
C0560Front Wheel Speed Sensor Circuit
C0563Wheel Speed Sensor Correlation Error
C1014ECU Internal Fault
C1023Hydraulic Pump Motor Circuit
C1024ABS Solenoid Valve Relay
C1025Front ABS Solenoid Valve
C1026Rear ABS Solenoid Valve
C1095ABS Module Voltage Low
C1096ABS Module Voltage High
C1100ABS Switch Circuit
C0051Vehicle Speed Signal Missing
C0055Rear Wheel Speed Sensor Open
C0056Rear Wheel Speed Sensor Short

U-Codes - Network Communication

When modules stop talking to each other over the serial data bus, you get U-codes. Common after battery disconnects or loose connectors under the seat.

CodeDescription
U1016Loss of ECM Serial Data
U1064Loss of TSM/HFSM Serial Data to ECM
U1097Loss of Speedometer Serial Data to ECM
U1255Serial Data Error
U1300ECM Serial Data Low
U1301ECM Serial Data High
U1040Loss of ABS Serial Data
U1041ABS Serial Data Error
U0100Lost Communication with ECM
U0121Lost Communication with ABS Module
U0140Lost Communication with Body Control Module
U0155Lost Communication with Instrument Cluster

Common Codes and What to Do About Them

These are the codes we see most often in the garage. Here is what they usually mean in practice.

P0131 / P0151 - O2 Sensor Low

Your oxygen sensor is reading lean or has failed. Common after an exhaust swap. If both front and rear throw this code, check for an exhaust leak at the header gaskets before replacing sensors.

P0562 - Battery Voltage Low

Your charging system is not keeping up. Test the battery first (should be 12.6V+ at rest). Then check the stator and voltage regulator. This code also pops up if you have a parasitic drain killing the battery overnight.

P1353 / P1356 - No Combustion

One cylinder is not firing at all. Start with spark plugs and coil connections. If the plugs look fine, check the crank position sensor - a failing CKP sensor can cause one cylinder to drop out.

P1510 - Limited Performance Mode

The ECM cut your power to protect the engine. This is always a secondary code - something else triggered it. Read all stored codes and fix the root cause first.

P2135 - TPS Correlation Error

The two throttle position sensors disagree with each other. On throttle-by-wire bikes this puts you straight into limp mode. Usually caused by a failing TPS, loose connector, or corroded pins.

B1142 - Smart Security System Internal Fault

Your security module has an internal failure. Try disconnecting the battery for 30 minutes, then reconnect and re-learn the fob. If it comes back, the HFSM module likely needs replacing.

U1255 - Serial Data Error

Generic communication fault between modules. Clean and reseat all connectors on the data bus (under the seat, behind the side covers). Check for corroded pins.


How to Clear Diagnostic Codes

There are three ways to clear codes on a Harley.

Method 1 - Through the Gauge Cluster

  1. Enter diagnostic mode (see instructions above).
  2. Navigate to the module showing the code.
  3. Push and hold the odometer reset button for 5+ seconds.
  4. The display shows “clear” to confirm.

Method 2 - With a Diagnostic Tool

Connect your Digital Technician, Screamin’ Eagle Pro Tuner, or TTS Mastertune. Select “Clear DTCs” for each module. This is the most reliable method.

Method 3 - Battery Disconnect

Disconnect the negative battery cable and wait 30 minutes. This clears stored codes in most modules, but not all - the security module retains codes through power cycles on some models.

Important: Clearing a code does not fix the problem. If the underlying issue is still there, the code will come back within a few ride cycles. Always fix the root cause first.


What Tools Do You Need?

You can read basic codes on most Harleys without any tools - just the gauge cluster method above. But if you want to dig deeper, here is what works:

  • Free / No tools: Gauge cluster diagnostic mode (works on 2004+ Sportster, Dyna, Softail, Touring)
  • Screamin’ Eagle Pro Street Tuner ($300-400): Reads and clears all codes, plus lets you flash tunes
  • TTS Mastertune (~$400): Full diagnostic access, data logging, tuning
  • Digital Technician II (dealer tool): The factory tool dealers use. Expensive, but does everything
  • OBD-II adapter + phone app (limited): Some generic OBD-II Bluetooth adapters work on 2021+ models with the standard OBD-II port, but older Harleys use a proprietary 4-pin or 6-pin connector

For most home mechanics, the gauge cluster method handles 90% of what you need. If you are tuning or doing major work, a dedicated Harley diagnostic tool is worth the investment.


Decoding Your VIN

Your VIN tells you the exact model year, engine type, and factory configuration - all of which affect which codes apply to your bike. Use our Harley Davidson VIN lookup tool to decode yours.


FAQ

How do I know if my Harley has stored diagnostic codes? If your check engine light is on, there is at least one stored code. But codes can also be stored without the light coming on - these are called “historic” codes. Enter diagnostic mode to check.

Can I ride with a check engine light on? It depends on the code. Codes like P1510 (Limited Performance Mode) mean the ECM is actively cutting power - you can ride, but the bike will feel gutless. Codes like P0131 (O2 sensor) won’t affect rideability much but should be addressed soon. If the bike is running rough, misfiring, or overheating, stop and diagnose before riding further.

Why did my code come back after I cleared it? The underlying problem is still there. Clearing codes does not fix anything - it just resets the warning. The ECM will set the code again once it detects the same fault.

Do I need a dealer to read Harley diagnostic codes? No. Most codes can be read through the gauge cluster for free. See the “How to Enter Diagnostic Mode” section above.

What is the difference between current and historic codes? Current codes are active right now. Historic codes were set at some point but the ECM has not seen the fault recently. Both are worth investigating - a historic code that keeps coming back points to an intermittent problem.

Do diagnostic codes work the same on all Harley models? The P, B, C, and U code format is standard across all EFI Harleys (2001+). But the method to enter diagnostic mode varies by model family and year. Older carbureted and Evolution models use simpler two-digit codes.


Sources


Keep Reading

Here are more references that go hand in hand with diagnostic codes:

If you want the bigger Harley picture, our Harley-Davidson history guide walks every engine, model, and era from the founding to current production.

Frequently Asked Questions

How do I pull diagnostic codes on a Harley without a scanner?

On most 2004+ Sportster, Dyna, and Softail models, hold the odometer reset button, turn the ignition to ON, then release. Press the button to cycle through each module and its stored codes - no scanner required.

What do the letters in Harley DTC codes mean?

P codes are powertrain (engine, fuel, ignition), B codes are body (security, lighting, switches), C codes are chassis (ABS, brakes), and U codes are network communication errors between modules.

What is the difference between a 0 and 1 code on a Harley?

If the second digit of a Harley DTC is 0, it is a generic OBD standard code. If it is 1, it is a Harley-specific manufacturer code.

How do you read codes on older carbureted Harleys?

Older carbureted Harleys flash codes through the check engine light. Turn the ignition on without starting, then count the flashes - a pause separates the tens digit from the ones digit.

What tools do you need to read Harley diagnostic codes at a dealer level?

Dealers use the Digital Technician II tool, but riders can use a TTS Mastertune or Screamin' Eagle Pro Street Tuner connected to the 4-pin or 6-pin data link connector under the left side cover.

From the Shop

Related Articles