The reference covers 259 codes from the factory tables of Detroit Diesel, grouped by control module (MID).
| Code | Meaning |
|---|---|
| M128-P100.0 | Oil pressure above normal |
| M128-P100.1 | Oil pressure below normal |
| M128-P100.3 | Engine oil pressure sensor circuit — short to power |
| M128-P100.4 | Engine oil pressure sensor circuit — short to ground |
| M128-P101.0 | Auxiliary pump pressure, oil level, crankcase pressure, exhaust gas temperature, EGR delta pressure or EGR temperature — above range |
| M128-P101.1 | Oil level or crankcase pressure — below range |
| M128-P101.3 | Oil level, crankcase pressure, injection control pressure or exhaust gas temperature circuit failed high |
| M128-P101.4 | Same parameter — circuit signal low |
| M128-P102.0 | Fuel pressure, turbo boost, air inlet pressure or injection control pressure — above range |
| M128-P102.1 | Turbo boost pressure below range |
| M128-P102.3 | Boost pressure circuit failed high |
| M128-P102.4 | Boost pressure circuit failed low |
| M128-P103.0 | Turbo overspeed |
| M128-P103.8 | Turbo speed circuit failed |
| M128-P105.0 | Intercooler, reservoir, coolant, air inlet or oil temperature — above normal |
| M128-P105.1 | Intake manifold temperature below range |
| M128-P105.3 | Reservoir temperature circuit — short to battery |
| M128-P105.4 | Intake manifold temperature circuit — short to ground |
| M128-P106.0 | Fuel pressure, turbo boost, air inlet pressure or injection control pressure — above range |
| M128-P106.1 | Fuel pressure, air inlet pressure, injection control pressure, TCI/TCO temperature, EGR delta pressure or EGR temperature — below range |
| M128-P106.3 | Coolant pressure / air inlet pressure circuit failed high/low |
| M128-P106.4 | Coolant pressure / air inlet pressure circuit failed high/low |
| M128-P107.0 | Air filter restriction high |
| M128-P107.1 | Air filter differential pressure below range |
| M128-P107.3 | Air filter restriction circuit failed high/low |
| M128-P107.4 | Air filter restriction circuit failed high/low |
| M128-P108.0 | Barometric pressure above/below range |
| M128-P108.1 | Barometric pressure above/below range |
| M128-P108.3 | Auxiliary pump pressure / barometric pressure circuit failed high |
| M128-P108.4 | Auxiliary pump pressure / barometric pressure circuit failed low |
| M128-P109.0 | Coolant pressure above range |
| M128-P109.1 | Coolant pressure low |
| M128-P109.3 | Coolant pressure / air inlet pressure circuit failed high/low |
| M128-P109.4 | Coolant pressure / air inlet pressure circuit failed high/low |
| M128-P110.0 | Coolant temperature above normal |
| M128-P110.1 | Coolant temperature below range |
| M128-P110.3 | Coolant temperature sensor circuit — short to power |
| M128-P110.4 | Coolant temperature sensor circuit — short to ground |
| M128-P111.0 | Coolant level above range |
| M128-P111.1 | Low coolant level |
| M128-P111.3 | Coolant level circuit — short to battery |
| M128-P111.4 | Coolant level circuit — short to ground |
| M128-P111.5 | Secondary coolant level circuit — short to battery |
| M128-P111.6 | Secondary coolant level circuit — short to ground |
| M128-P111.12 | Maintenance monitor — coolant level fault |
| M128-P121.0 | Engine overspeed with engine brake engaged |
| M128-P153.0 | Auxiliary pump pressure, oil level, crankcase pressure, exhaust gas temperature, EGR delta pressure or EGR temperature — above range |
| M128-P153.1 | Oil level or crankcase pressure — below range |
| M128-P153.3 | Oil level, crankcase pressure, injection control pressure or exhaust gas temperature circuit failed high |
| M128-P153.4 | Same parameter — circuit signal low |
| M128-P164.0 | Fuel pressure, turbo boost, air inlet pressure or injection control pressure — above range |
| M128-P164.1 | Fuel pressure, air inlet pressure, injection control pressure, TCI/TCO temperature, EGR delta pressure or EGR temperature — below range |
| M128-P164.3 | Oil level, crankcase pressure, injection control pressure or exhaust gas temperature circuit failed high |
| M128-P164.4 | Same parameter — circuit signal low |
| M128-P168.0 | Battery voltage high |
| M128-P168.1 | Battery voltage low |
| M128-P171.0 | Ambient air temperature above/below range |
| M128-P171.1 | Ambient air temperature above/below range |
| M128-P171.3 | Ambient air temperature circuit failed high |
| M128-P171.4 | Ambient air temperature circuit failed low |
| M128-P172.0 | Intercooler, reservoir, coolant, air inlet or oil temperature — above normal |
| M128-P172.1 | Air inlet temperature below range |
| M128-P172.3 | Air temperature circuit failed high |
| M128-P172.4 | Air temperature circuit failed low |
| M128-P173.0 | Auxiliary pump pressure, oil level, crankcase pressure, exhaust gas temperature, EGR delta pressure or EGR temperature — above range |
| M128-P173.3 | Oil level, crankcase pressure, injection control pressure or exhaust gas temperature circuit failed high |
| M128-P173.4 | Same parameter — circuit signal low |
| M128-P174.0 | Fuel temperature above/below range |
| M128-P174.1 | Fuel temperature above/below range |
| M128-P174.3 | Fuel temperature circuit — short to battery |
| M128-P174.4 | Fuel temperature circuit — short to ground |
| M128-P175.0 | Intercooler, reservoir, coolant, air inlet or oil temperature — above normal |
| M128-P175.1 | Engine oil temperature below range |
| M128-P175.3 | Oil temperature circuit — short to battery |
| M128-P175.4 | Oil temperature circuit — short to ground |
| M128-P177.0 | Transmission oil temperature above/below range, or circuit failed |
| M128-P177.1 | Transmission oil temperature above/below range, or circuit failed |
| M128-P177.3 | Transmission oil temperature above/below range, or circuit failed |
| M128-P177.4 | Transmission oil temperature above/below range, or circuit failed |
| M128-P18.0 | Fuel pressure, turbo boost, air inlet pressure or injection control pressure — above range |
| M128-P18.1 | Fuel pressure, air inlet pressure, injection control pressure, TCI/TCO temperature, EGR delta pressure or EGR temperature — below range |
| M128-P187.3 | PTO circuit — short to ground |
| M128-P187.4 | PTO circuit — short to battery |
| M128-P187.7 | PTO control system — implausible response |
| M128-P19.0 | Extended-range oil/coolant pressure above range, or bypass blower door position above range |
| M128-P190.0 | Engine overspeed (or invalid speed signal) |
| M128-P190.14 | Engine overspeed (or invalid speed signal) |
| M128-P20.0 | Extended-range oil/coolant pressure above range, or bypass blower door position above range |
| M128-P20.3 | Coolant pressure / air inlet pressure circuit failed high/low |
| M128-P20.4 | Coolant pressure / air inlet pressure circuit failed high/low |
| M128-P222.14 | Anti-theft system fault |
| M128-P251.10 | Clock module abnormal rate of change or failure |
| M128-P251.13 | Clock module abnormal rate of change or failure |
| M128-P252.10 | Clock module abnormal rate of change or failure |
| M128-P252.13 | Clock module abnormal rate of change or failure |
| M128-P351.0 | TCI/TCO temperature above range |
| M128-P351.1 | Fuel pressure, air inlet pressure, injection control pressure, TCI/TCO temperature, EGR delta pressure or EGR temperature — below range |
| M128-P351.3 | TCI/TCO temperature circuit failed high |
| M128-P351.4 | TCI temperature circuit failed low |
| M128-P354.0 | Relative humidity above/below range |
| M128-P354.1 | Relative humidity above/below range |
| M128-P354.4 | Relative humidity sensor circuit failed low |
| M128-P404.0 | TCI/TCO temperature above range |
| M128-P404.1 | Fuel pressure, air inlet pressure, injection control pressure, TCI/TCO temperature, EGR delta pressure or EGR temperature — below range |
| M128-P404.3 | TCI/TCO temperature circuit failed high |
| M128-P404.4 | TCO temperature circuit failed low |
| M128-P411.0 | Auxiliary pump pressure, oil level, crankcase pressure, exhaust gas temperature, EGR delta pressure or EGR temperature — above range |
| M128-P411.1 | Fuel pressure, air inlet pressure, injection control pressure, TCI/TCO temperature, EGR delta pressure or EGR temperature — below range |
| M128-P411.3 | EGR delta pressure / temperature circuit failed high |
| M128-P411.4 | Same parameter — circuit signal low |
| M128-P412.0 | Auxiliary pump pressure, oil level, crankcase pressure, exhaust gas temperature, EGR delta pressure or EGR temperature — above range |
| M128-P412.1 | Fuel pressure, air inlet pressure, injection control pressure, TCI/TCO temperature, EGR delta pressure or EGR temperature — below range |
| M128-P412.3 | EGR delta pressure / temperature circuit failed high |
| M128-P412.4 | Same parameter — circuit signal low |
| M128-P446.0 | Cylinder head temperature above range |
| M128-P51.0 | Throttle position above/below range, erratic signal, or not responding |
| M128-P51.1 | Throttle position above/below range, erratic signal, or not responding |
| M128-P51.2 | Throttle position above/below range, erratic signal, or not responding |
| M128-P51.3 | Throttle position circuit failed high |
| M128-P51.4 | Throttle position circuit failed low |
| M128-P51.7 | Throttle position above/below range, erratic signal, or not responding |
| M128-P52.0 | Intercooler, reservoir, coolant, air inlet or oil temperature — above normal |
| M128-P52.3 | Intercooler coolant temperature circuit — short to battery |
| M128-P52.4 | Intercooler coolant temperature circuit — short to ground |
| M128-P70.4 | Safety loop shorted to ground |
| M128-P72.0 | Extended-range oil/coolant pressure above range, or bypass blower door position above range |
| M128-P72.1 | Bypass blower door position below range |
| M128-P72.3 | Bypass valve position circuit failed high |
| M128-P72.4 | Bypass valve position circuit failed low |
| M128-P73.0 | Auxiliary pump pressure, oil level, crankcase pressure, exhaust gas temperature, EGR delta pressure or EGR temperature — above range |
| M128-P73.1 | Fire pump pressure below range |
| M128-P73.3 | Auxiliary pump pressure / barometric pressure circuit failed high |
| M128-P73.4 | Auxiliary pump pressure / barometric pressure circuit failed low |
| M128-P81.0 | Exhaust backpressure above/below range, circuit failed, or rampdown threshold exceeded |
| M128-P81.1 | Exhaust backpressure above/below range, circuit failed, or rampdown threshold exceeded |
| M128-P81.3 | Exhaust backpressure above/below range, circuit failed, or rampdown threshold exceeded |
| M128-P81.4 | Exhaust backpressure above/below range, circuit failed, or rampdown threshold exceeded |
| M128-P81.12 | Exhaust backpressure above/below range, circuit failed, or rampdown threshold exceeded |
| M128-P84.0 | Vehicle overspeed |
| M128-P84.11 | Vehicle overspeed (including absolute limit) |
| M128-P84.12 | Vehicle speed sensor fault |
| M128-P86.14 | Cruise control / adaptive cruise control fault |
| M128-P91.3 | Throttle/accelerator pedal position sensor circuit failed high |
| M128-P91.4 | Throttle/accelerator pedal position sensor circuit failed low |
| M128-P92.0 | Torque overload |
| M128-P94.0 | Fuel pressure above normal |
| M128-P94.1 | Fuel pressure below normal |
| M128-P94.3 | Fuel pressure circuit — short to power |
| M128-P94.4 | Fuel pressure circuit — short to ground |
| M128-P95.0 | Fuel filter restriction high |
| M128-P95.1 | Fuel filter differential pressure below range |
| M128-P95.3 | Fuel filter restriction circuit failed high |
| M128-P95.4 | Fuel filter restriction circuit failed low |
| M128-P98.0 | Auxiliary pump pressure, oil level, crankcase pressure, exhaust gas temperature, EGR delta pressure or EGR temperature — above range |
| M128-P98.1 | Oil level or crankcase pressure — below range |
| M128-P98.3 | Oil level, crankcase pressure, injection control pressure or exhaust gas temperature circuit failed high |
| M128-P98.4 | Same parameter — circuit signal low |
| M128-P99.0 | Oil filter restriction high |
| M128-P99.1 | Oil filter differential pressure below range |
| M128-P99.3 | Oil filter restriction circuit failed high/low |
| M128-P99.4 | Oil filter restriction circuit failed high/low |
| M128-S1.0 | Injector #1 responds too slowly |
| M128-S146.2 | EGR valve mechanical fault — valve not reaching commanded position |
| M128-S146.12 | EGR valve mechanical fault — valve not reaching commanded position |
| M128-S147.2 | Turbocharger control mechanism not responding, or insufficient exhaust gas recirculation current |
| M128-S147.7 | Turbocharger control mechanism not responding, or insufficient exhaust gas recirculation current |
| M128-S147.11 | Turbocharger control mechanism not responding, or insufficient exhaust gas recirculation current |
| M128-S147.12 | Turbocharger control mechanism not responding, or insufficient exhaust gas recirculation current |
| M128-S147.14 | Turbocharger control mechanism not responding, or insufficient exhaust gas recirculation current |
| M128-S151.14 | ESS fault — stuck-in-gear condition detected |
| M128-S2.0 | Injector (one of #1–6) responds too slowly |
| M128-S21.0 | Too many SRS pulses (missing TRS signal) |
| M128-S214.0 | RTC backup battery voltage high |
| M128-S214.1 | RTC backup battery voltage low |
| M128-S216.14 | Missing data from another ECU |
| M128-S226.11 | Transmission neutral switch fault — type not identifiable |
| M128-S227.2 | ESS fault — auxiliary analog input #1 data incorrect or voltage out of range |
| M128-S227.3 | ESS fault — auxiliary analog input #1 data incorrect or voltage out of range |
| M128-S227.4 | ESS fault — auxiliary analog input #1 data incorrect or voltage out of range |
| M128-S230.5 | Idle validation switch (IVS) circuit fault — open or shorted to ground |
| M128-S230.6 | Idle validation switch (IVS) circuit fault — open or shorted to ground |
| M128-S231.12 | J1939 data link fault |
| M128-S232.0 | Sensor supply voltage high (connectors A3, W1) |
| M128-S232.1 | Sensor supply voltage low (connectors A3, W1) |
| M128-S238.3 | SEL (Stop Engine Light) — short to battery or open circuit |
| M128-S238.4 | SEL (Stop Engine Light) — short to battery or open circuit |
| M128-S239.3 | CEL (Check Engine Light) — short to battery or open circuit |
| M128-S239.4 | CEL (Check Engine Light) — short to battery or open circuit |
| M128-S240.2 | FRAM checksum incorrect or out of calibration |
| M128-S240.13 | FRAM checksum incorrect or out of calibration |
| M128-S248.8 | Proprietary master/slave data link fault |
| M128-S248.9 | Proprietary master/slave data link fault |
| M128-S249.12 | J1922 data link fault |
| M128-S250.12 | J1587 data link fault |
| M128-S253.2 | EEPROM write error, calibration lost, or nonvolatile memory checksum incorrect |
| M128-S253.12 | EEPROM write error, calibration lost, or nonvolatile memory checksum incorrect |
| M128-S253.13 | EEPROM write error, calibration lost, or nonvolatile memory checksum incorrect |
| M128-S26.3 | Auxiliary output — short to battery, open circuit, or mechanical system failure |
| M128-S26.4 | Auxiliary output — short to battery, open circuit, or mechanical system failure |
| M128-S26.7 | Auxiliary output — short to battery, open circuit, or mechanical system failure |
| M128-S277.9 | EGR mass flow smart sensor not responding or failed |
| M128-S277.12 | EGR mass flow smart sensor not responding or failed |
| M128-S3.0 | Injector (one of #1–6) responds too slowly |
| M128-S4.0 | Injector (one of #1–6) responds too slowly |
| M128-S40.3 | Auxiliary output — short to battery, open circuit, or mechanical system failure |
| M128-S40.4 | Auxiliary output — short to battery, open circuit, or mechanical system failure |
| M128-S40.7 | Auxiliary output — short to battery, open circuit, or mechanical system failure |
| M128-S412.9 | EGR temperature smart sensor not responding or failed |
| M128-S412.12 | EGR temperature smart sensor not responding or failed |
| M128-S5.0 | Injector (one of #1–6) responds too slowly |
| M128-S51.3 | Auxiliary output #3 — open circuit, short to ground, or mechanical system failure |
| M128-S51.4 | Auxiliary output #3 — open circuit, short to ground, or mechanical system failure |
| M128-S51.7 | Auxiliary output #3 — open circuit, short to ground, or mechanical system failure |
| M128-S52.3 | Auxiliary output #4 — open circuit, short to ground, or mechanical system failure |
| M128-S52.4 | Auxiliary output #4 — open circuit, short to ground, or mechanical system failure |
| M128-S52.7 | Auxiliary output #4 — open circuit, short to ground, or mechanical system failure |
| M128-S53.3 | Auxiliary output — short to battery, open circuit, or mechanical system failure |
| M128-S53.4 | Auxiliary output — short to battery, open circuit, or mechanical system failure |
| M128-S53.7 | Auxiliary output — short to battery, open circuit, or mechanical system failure |
| M128-S54.3 | Auxiliary output — short to battery, open circuit, or mechanical system failure |
| M128-S54.4 | Auxiliary output — short to battery, open circuit, or mechanical system failure |
| M128-S54.7 | Auxiliary output — short to battery, open circuit, or mechanical system failure |
| M128-S55.3 | Auxiliary output — short to battery, open circuit, or mechanical system failure |
| M128-S55.4 | Auxiliary output — short to battery, open circuit, or mechanical system failure |
| M128-S55.7 | Auxiliary output — short to battery, open circuit, or mechanical system failure |
| M128-S56.3 | Auxiliary output — short to battery, open circuit, or mechanical system failure |
| M128-S56.4 | Auxiliary output — short to battery, open circuit, or mechanical system failure |
| M128-S56.7 | Auxiliary output — short to battery, open circuit, or mechanical system failure |
| M128-S57.0 | PWM output (one of #1–4) — out of range, short to battery, or open circuit |
| M128-S57.1 | PWM output (one of #1–4) — out of range, short to battery, or open circuit |
| M128-S57.3 | PWM output (one of #1–4) — out of range, short to battery, or open circuit |
| M128-S57.4 | PWM output (one of #1–4) — out of range, short to battery, or open circuit |
| M128-S58.0 | PWM output (one of #1–4) — out of range, short to battery, or open circuit |
| M128-S58.1 | PWM output (one of #1–4) — out of range, short to battery, or open circuit |
| M128-S58.3 | PWM output (one of #1–4) — out of range, short to battery, or open circuit |
| M128-S58.4 | PWM output (one of #1–4) — out of range, short to battery, or open circuit |
| M128-S59.0 | PWM output (one of #1–4) — out of range, short to battery, or open circuit |
| M128-S59.1 | PWM output (one of #1–4) — out of range, short to battery, or open circuit |
| M128-S59.3 | PWM output (one of #1–4) — out of range, short to battery, or open circuit |
| M128-S59.4 | PWM output (one of #1–4) — out of range, short to battery, or open circuit |
| M128-S6.0 | Injector (one of #1–6) responds too slowly |
| M128-S60.0 | PWM output (one of #1–4) — out of range, short to battery, or open circuit |
| M128-S60.1 | PWM output (one of #1–4) — out of range, short to battery, or open circuit |
| M128-S60.3 | PWM output (one of #1–4) — out of range, short to battery, or open circuit |
| M128-S60.4 | PWM output (one of #1–4) — out of range, short to battery, or open circuit |
| M128-S61.11 | Auxiliary engine shutdown #2 active (source notes this SID may be incorrect) |
| M128-S65.0 | Oxygen content too high |
| M128-S65.1 | Oxygen content too low |
| M128-S65.3 | Oxygen content circuit failed high |
| M128-S65.4 | Oxygen content circuit failed low |
| M128-S76.0 | Knock control circuit — signal out of range, shorted, or not responding |
| M128-S76.3 | Knock control circuit — signal out of range, shorted, or not responding |
| M128-S76.4 | Knock control circuit — signal out of range, shorted, or not responding |
| M128-S76.7 | Knock control circuit — signal out of range, shorted, or not responding |
| M128-S77.0 | Gas metering valve — signal out of range, shorted, or not responding |
| M128-S77.1 | Gas metering valve — signal out of range, shorted, or not responding |
| M128-S77.3 | Gas metering valve — signal out of range, shorted, or not responding |
| M128-S77.4 | Gas metering valve — signal out of range, shorted, or not responding |
| M128-S77.7 | Gas metering valve — signal out of range, shorted, or not responding |
A code has three parts: MID is which control unit reported it, PID/SID is which parameter or component is at fault, FMI is the type of fault (short circuit, open circuit, value out of range). On the scanner the code usually shows as MID-PID/SID-FMI, e.g. MID128 PID100 FMI4.
Know the code number? Type it into the search — or paste the whole list from the scanner and we will show which fault is the real one.