N2 Speed N2Speed

Chevy, GMC & Cadillac DTC Code List

144 of the trouble codes we see most often on LS, LT and Ecotec GM platforms, with plain-English definitions and notes on which ones are calibration issues rather than broken parts.

Codes listed
144
searchable definitions
Systems covered
9
engine, trans, network
Brands
4
Chevy / GMC / Cadillac / Buick
Tune-related codes
57
flagged with tuning notes
Read this first: GM engines use a mass airflow sensor together with a MAP sensor, so both the P0101–P0103 MAF family and the P0106–P0108 MAP family are in play after an intake or boost change. GM's cylinder deactivation is AFM and DFM (the P34xx range and P06DD) — not the same system as a HEMI's, and it fails in its own characteristic way.

Search the Code List

Showing all 144 codes
CodeSystemDefinition
P0101Air & Fuel MeteringMass Air Flow Sensor Performance
The airflow the MAF sensor reports does not agree with what the ECM calculates from throttle position, RPM and manifold pressure.
Tuning note: The #1 code after an aftermarket intake or a larger MAF housing. The MAF transfer function has to be rescaled for the new tube diameter — otherwise fueling is wrong everywhere.
P0102Air & Fuel MeteringMass Air Flow Sensor Circuit Low Input
MAF signal frequency or voltage is below the expected range for current engine conditions.
Tuning note: A contaminated or oiled MAF element reads low. Over-oiled reusable filters are the usual cause on LS and LT builds.
P0103Air & Fuel MeteringMass Air Flow Sensor Circuit High Input
MAF signal is higher than the ECM expects, indicating more air than the engine could physically ingest.
Tuning note: On a boosted LS or LT the stock MAF frequency table tops out. Either rescale it or switch the calibration to speed-density (MAF disabled) with a correct VE table.
P0106Air & Fuel MeteringMAP Sensor Performance
Manifold pressure does not correlate with throttle position and engine speed.
Tuning note: GM uses MAF and MAP together. On a cammed engine the low, unstable idle vacuum reads as a MAP fault until the idle and VE tables are corrected.
P0107Air & Fuel MeteringMAP Sensor Circuit Low Voltage
MAP signal voltage is below the valid range — usually an open circuit, unplugged sensor or shorted signal wire.
P0108Air & Fuel MeteringMAP Sensor Circuit High Voltage
MAP signal voltage exceeds the valid range for the sensor.
Tuning note: A 1-bar sensor pegs out around 15 psi absolute. Boosted builds need a 2-bar or 3-bar sensor and a rescaled MAP transfer function.
P0111Air & Fuel MeteringIntake Air Temperature Sensor Performance
The IAT reading is implausible compared with coolant temperature and ambient conditions.
Tuning note: Relocating the IAT into the charge pipe or manifold changes what the ECM sees. Spark and fueling IAT correction tables should be revisited when the sensor moves.
P0112Air & Fuel MeteringIntake Air Temperature Sensor Circuit Low
IAT circuit voltage is low, which the ECM interprets as an impossibly hot intake charge.
P0113Air & Fuel MeteringIntake Air Temperature Sensor Circuit High
IAT circuit voltage is high, typically an open circuit or disconnected sensor.
P0116Air & Fuel MeteringEngine Coolant Temperature Sensor Performance
Coolant temperature readings do not change the way the ECM expects during warm-up or operation.
P0117Air & Fuel MeteringEngine Coolant Temperature Circuit Low
ECT signal voltage low — the ECM sees an impossibly high coolant temperature.
P0118Air & Fuel MeteringEngine Coolant Temperature Circuit High
ECT signal voltage high, usually an open circuit or unplugged sensor.
P0128Air & Fuel MeteringCoolant Thermostat Below Regulating Temperature
The engine did not reach the expected operating temperature within the expected time.
Tuning note: Standard after a low-temperature thermostat. The warm-up temperature threshold has to be lowered in the calibration or the code returns every cold start.
P0131Air & Fuel MeteringO2 Sensor Circuit Low Voltage (Bank 1 Sensor 1)
The upstream oxygen sensor on bank 1 reports a persistently lean signal.
P0132Air & Fuel MeteringO2 Sensor Circuit High Voltage (Bank 1 Sensor 1)
The upstream oxygen sensor on bank 1 reports a persistently rich signal.
P0137Air & Fuel MeteringO2 Sensor Circuit Low Voltage (Bank 1 Sensor 2)
The post-catalyst sensor on bank 1 stays low, indicating lean exhaust or a failing sensor.
P0140Air & Fuel MeteringO2 Sensor Circuit No Activity (Bank 1 Sensor 2)
The downstream oxygen sensor signal is not changing at all — an open circuit or a dead sensor.
Tuning note: Also appears when rear sensors are removed for headers without disabling the rear O2 monitors in the calibration.
P0171Air & Fuel MeteringFuel Trim System Lean (Bank 1)
Long-term fuel trim on bank 1 has hit its positive limit — the ECM is adding fuel to correct a lean condition.
Tuning note: Injectors, a MAF housing change or a cam swap will do this. Rescale injector flow data and the VE or MAF table rather than letting trims carry the correction.
P0172Air & Fuel MeteringFuel Trim System Rich (Bank 1)
Long-term fuel trim on bank 1 hit its negative limit — the ECM is pulling fuel out.
Tuning note: Larger injectors with the stock injector flow table will do exactly this. Fix the injector data, not the trims.
P0174Air & Fuel MeteringFuel Trim System Lean (Bank 2)
Long-term fuel trim on bank 2 is at its positive limit.
Tuning note: A lean condition on one bank only points at a bank-specific problem — an intake leak, a bad injector, or an exhaust leak ahead of the O2 sensor.
P0175Air & Fuel MeteringFuel Trim System Rich (Bank 2)
Long-term fuel trim on bank 2 is at its negative limit.
P0176Air & Fuel MeteringFuel Composition Sensor Circuit
The flex-fuel composition sensor signal is out of range or missing on an E85-capable vehicle.
Tuning note: Flex-fuel builds need the ethanol content input working before the calibration can blend fuel and spark between gasoline and E85 tables.
P0182Air & Fuel MeteringFuel Temperature Sensor Circuit Low
Fuel temperature sensor signal is below the valid range.
P0191Air & Fuel MeteringFuel Rail Pressure Sensor Performance
Measured fuel rail pressure does not match the commanded value on a direct-injection engine.
Tuning note: On LT1, LT4 and L83 direct-injection engines this is the code that shows up when fuel demand outruns the stock high-pressure pump. Pressure has to be logged before adding power.
P0201Air & Fuel MeteringInjector 1 Control Circuit
The ECM detected an electrical fault in the cylinder 1 injector circuit.
Tuning note: Injector numbering follows cylinder order, not firing order.
P0202Air & Fuel MeteringInjector 2 Control Circuit
Electrical fault detected in the cylinder 2 injector circuit.
P0203Air & Fuel MeteringInjector 3 Control Circuit
Electrical fault detected in the cylinder 3 injector circuit.
P0204Air & Fuel MeteringInjector 4 Control Circuit
Electrical fault detected in the cylinder 4 injector circuit.
P0205Air & Fuel MeteringInjector 5 Control Circuit
Electrical fault detected in the cylinder 5 injector circuit.
P0206Air & Fuel MeteringInjector 6 Control Circuit
Electrical fault detected in the cylinder 6 injector circuit.
P0207Air & Fuel MeteringInjector 7 Control Circuit
Electrical fault detected in the cylinder 7 injector circuit.
P0208Air & Fuel MeteringInjector 8 Control Circuit
Electrical fault detected in the cylinder 8 injector circuit.
P0230Air & Fuel MeteringFuel Pump Relay Control Circuit
The ECM detected a fault in the fuel pump relay or its control circuit.
P0300Misfire & IgnitionEngine Misfire Detected (Random / Multiple Cylinders)
The ECM detected misfire that is not isolated to one cylinder, based on crankshaft speed variation.
Tuning note: On a big-cam LS or LT the rough idle itself trips the misfire monitor. Confirm with per-cylinder misfire counts in a datalog before chasing parts — but never dismiss misfire under load, which is real and dangerous.
P0301Misfire & IgnitionCylinder 1 Misfire Detected
Misfire has been detected specifically on cylinder 1.
P0302Misfire & IgnitionCylinder 2 Misfire Detected
Misfire has been detected specifically on cylinder 2.
P0303Misfire & IgnitionCylinder 3 Misfire Detected
Misfire has been detected specifically on cylinder 3.
P0304Misfire & IgnitionCylinder 4 Misfire Detected
Misfire has been detected specifically on cylinder 4.
P0305Misfire & IgnitionCylinder 5 Misfire Detected
Misfire has been detected specifically on cylinder 5.
P0306Misfire & IgnitionCylinder 6 Misfire Detected
Misfire has been detected specifically on cylinder 6.
P0307Misfire & IgnitionCylinder 7 Misfire Detected
Misfire has been detected specifically on cylinder 7.
P0308Misfire & IgnitionCylinder 8 Misfire Detected
Misfire has been detected specifically on cylinder 8.
P0315Misfire & IgnitionCrankshaft Position System Variation Not Learned
The ECM has not learned the crankshaft position variation values needed to run the misfire monitor accurately.
Tuning note: Needs a CASE relearn after a crank sensor, harmonic balancer or ECM change. Skipping it produces phantom misfire codes.
P0316Misfire & IgnitionMisfire Detected on Startup
Misfire occurred in the first few seconds after start-up.
Tuning note: Common early warning of a collapsed AFM lifter on a 5.3L or 6.2L. Worth a compression check before it becomes a bent pushrod.
P0324Misfire & IgnitionKnock Control System Error
The knock control system reported an internal fault and knock retard may be unavailable.
Tuning note: Never add timing when knock detection is offline. Fix the sensor first — this is one of the few codes that can cost you an engine.
P0325Misfire & IgnitionKnock Sensor Circuit (Bank 1)
Knock sensor circuit fault on bank 1 — the ECM cannot trust its detonation input.
Tuning note: Aftermarket headers and loose accessories create noise that reads as knock. Verify with a datalog before assuming the sensor failed.
P0330Misfire & IgnitionKnock Sensor Circuit (Bank 2)
Knock sensor circuit fault on bank 2.
P0351Misfire & IgnitionIgnition Coil 1 Control Circuit
The ECM detected a fault in the cylinder 1 ignition coil primary circuit.
Tuning note: Coil numbers follow cylinder order. A tune that adds cylinder pressure will find a weak coil that idled fine before.
P0352Misfire & IgnitionIgnition Coil 2 Control Circuit
Fault detected in the cylinder 2 ignition coil control circuit.
P0353Misfire & IgnitionIgnition Coil 3 Control Circuit
Fault detected in the cylinder 3 ignition coil control circuit.
P0354Misfire & IgnitionIgnition Coil 4 Control Circuit
Fault detected in the cylinder 4 ignition coil control circuit.
P0355Misfire & IgnitionIgnition Coil 5 Control Circuit
Fault detected in the cylinder 5 ignition coil control circuit.
P0356Misfire & IgnitionIgnition Coil 6 Control Circuit
Fault detected in the cylinder 6 ignition coil control circuit.
P0357Misfire & IgnitionIgnition Coil 7 Control Circuit
Fault detected in the cylinder 7 ignition coil control circuit.
P0358Misfire & IgnitionIgnition Coil 8 Control Circuit
Fault detected in the cylinder 8 ignition coil control circuit.
P0008Camshaft & AFM/DFMEngine Position System Performance (Bank 1)
The crankshaft and camshaft position relationship on bank 1 is outside the allowed window.
Tuning note: On LS and LT engines this usually means a stretched or jumped timing chain. Mechanical repair, never a calibration fix.
P0011Camshaft & AFM/DFMCamshaft Position Over-Advanced (Bank 1)
The bank 1 camshaft is more advanced than commanded, or will not return to the commanded position.
Tuning note: On VVT LT engines, a cam actuator that cannot hit target is often oil-related — pressure, viscosity, or a screen full of debris. Cam phaser limiters in the tune must match the hardware.
P0014Camshaft & AFM/DFMCamshaft Position Over-Retarded (Bank 1)
The bank 1 camshaft is retarded beyond the commanded position.
P0016Camshaft & AFM/DFMCrankshaft / Camshaft Position Correlation (Bank 1 Sensor A)
The camshaft and crankshaft signals are out of phase beyond the allowed tolerance.
Tuning note: Frequently a worn timing chain, a failed cam phaser, or a cam actuator solenoid clogged with debris. Do not tune around this.
P0017Camshaft & AFM/DFMCrankshaft / Camshaft Position Correlation (Bank 1 Sensor B)
Correlation fault between crankshaft and the bank 1 exhaust camshaft signal.
P0020Camshaft & AFM/DFMCamshaft Position Actuator Circuit (Bank 2)
Electrical fault in the bank 2 camshaft actuator solenoid circuit.
P0021Camshaft & AFM/DFMCamshaft Position Over-Advanced (Bank 2)
The bank 2 camshaft is more advanced than commanded.
P0024Camshaft & AFM/DFMCamshaft Position Over-Retarded (Bank 2)
The bank 2 camshaft is retarded beyond the commanded position.
P0090Camshaft & AFM/DFMFuel Pressure Regulator Control Circuit
Electrical fault in the fuel pressure regulator or high-pressure pump control circuit.
P0341Camshaft & AFM/DFMCamshaft Position Sensor Performance
The camshaft position signal pattern is implausible relative to the crankshaft signal.
Tuning note: A non-VVT cam swap on a VVT engine needs the cam sensor and VVT strategy addressed in the calibration or this code is permanent.
P0342Camshaft & AFM/DFMCamshaft Position Sensor Circuit Low
Camshaft position sensor signal voltage below the valid range.
P0521Camshaft & AFM/DFMEngine Oil Pressure Sensor Performance
Measured oil pressure does not match what the ECM expects for the current RPM and temperature.
Tuning note: Treat as urgent. AFM and DFM engines depend on oil pressure to control the lifters, and low pressure precedes lifter failure.
P0522Camshaft & AFM/DFMEngine Oil Pressure Sensor Circuit Low Voltage
Oil pressure sensor circuit reads low — either genuinely low pressure or a sensor and wiring fault.
Tuning note: Stop the engine and verify with a mechanical gauge before driving. This is not a code to tune out.
P06DDCamshaft & AFM/DFMEngine Oil Pressure Control Circuit Stuck Off
The two-stage oil pump did not switch to high pressure when commanded.
Tuning note: Very common on AFM 5.3L and 6.2L truck engines and often the first sign of an oil pump or pressure control solenoid problem. Address before chasing lifter noise.
P3400Camshaft & AFM/DFMCylinder Deactivation System (Bank 1)
Active Fuel Management or Dynamic Fuel Management could not deactivate or reactivate cylinders on bank 1 as commanded.
Tuning note: Deleting AFM or DFM mechanically requires the calibration to disable it as well — lifters, oil pump control and torque management. A partial delete leaves the engine confused.
P3425Camshaft & AFM/DFMCylinder 2 Deactivation Solenoid Control Circuit
Electrical fault in the cylinder 2 valve-lifter oil manifold solenoid circuit.
Tuning note: After an AFM delete the solenoids are gone, so the code is expected until cylinder deactivation is switched off in the calibration.
P3441Camshaft & AFM/DFMCylinder 4 Deactivation Solenoid Control Circuit
Electrical fault in the cylinder 4 deactivation solenoid circuit.
P3449Camshaft & AFM/DFMCylinder 5 Deactivation Solenoid Control Circuit
Electrical fault in the cylinder 5 deactivation solenoid circuit.
P3465Camshaft & AFM/DFMCylinder 7 Deactivation Solenoid Control Circuit
Electrical fault in the cylinder 7 deactivation solenoid circuit.
P0030Emissions & EVAPHO2S Heater Control Circuit (Bank 1 Sensor 1)
General fault in the bank 1 upstream oxygen sensor heater control circuit.
P0031Emissions & EVAPHO2S Heater Control Circuit Low (Bank 1 Sensor 1)
The oxygen sensor heater circuit is drawing less current than expected.
Tuning note: Header installs with cut or stretched O2 extensions are a frequent cause.
P0135Emissions & EVAPO2 Sensor Heater Performance (Bank 1 Sensor 1)
The upstream oxygen sensor heater is not bringing the sensor to operating temperature in the expected time.
P0141Emissions & EVAPO2 Sensor Heater Performance (Bank 1 Sensor 2)
The downstream oxygen sensor heater circuit is not performing to specification.
P0401Emissions & EVAPEGR Flow Insufficient
The ECM commanded EGR flow and did not see the expected effect.
P0404Emissions & EVAPEGR Valve Performance
The EGR valve position or flow does not match the commanded value.
P0411Emissions & EVAPSecondary Air Injection System Performance
The secondary air injection system did not deliver the expected airflow during the cold-start test.
P0420Emissions & EVAPCatalyst System Efficiency Below Threshold (Bank 1)
The downstream oxygen sensor no longer sees the oxygen-storage behavior a healthy catalyst should produce on bank 1.
Tuning note: The most misdiagnosed code there is. An exhaust leak, a lazy rear sensor, or a rich condition produce it without any converter failure. High-flow cats also trip it legitimately.
P0430Emissions & EVAPCatalyst System Efficiency Below Threshold (Bank 2)
Same catalyst efficiency fault as P0420 but on bank 2.
P0442Emissions & EVAPEVAP System Small Leak Detected
The evaporative system failed a leak test at the small-leak threshold — often a loose or worn fuel cap.
P0446Emissions & EVAPEVAP Vent System Performance
The vent valve or its circuit is not behaving as expected during EVAP testing.
Tuning note: Spiders and dirt in the vent solenoid are a genuinely common cause on trucks.
P0449Emissions & EVAPEVAP Vent Valve Solenoid Control Circuit
Electrical fault in the EVAP vent valve solenoid circuit.
P0455Emissions & EVAPEVAP System Large Leak Detected
A large evaporative leak — a missing fuel cap, a disconnected hose, or a cracked line.
P0496Emissions & EVAPEVAP System Flow During Non-Purge
Purge flow was detected when the purge valve should have been closed — typically a stuck-open purge solenoid.
P0120Throttle & ETCThrottle Position Sensor 1 Circuit
The ECM detected a fault in the primary throttle position sensor circuit.
P0121Throttle & ETCThrottle Position Sensor 1 Performance
Throttle position does not correlate with airflow and manifold pressure.
Tuning note: A larger throttle body changes the flow-per-degree relationship. The throttle and airflow tables should be updated to match.
P0122Throttle & ETCThrottle Position Sensor 1 Circuit Low Voltage
TPS 1 signal voltage below the valid range.
P0123Throttle & ETCThrottle Position Sensor 1 Circuit High Voltage
TPS 1 signal voltage above the valid range.
P0506Throttle & ETCIdle Speed Lower Than Expected
Idle speed is below the commanded value.
Tuning note: Classic post-camshaft code. The engine needs more idle airflow than the stock tables provide.
P0507Throttle & ETCIdle Speed Higher Than Expected
Actual idle speed is above the commanded value beyond the allowed tolerance.
Tuning note: A big cam, a ported throttle body, or an intake leak. The idle airflow tables need rescaling for the new combination.
P1400Throttle & ETCCold Start Emission Reduction Control System
The cold-start emission strategy did not achieve its target — often related to idle speed or spark retard during warm-up.
Tuning note: Aggressive cold-start spark or idle changes in a tune will set this. Leave the cold-start strategy closer to stock than you think you need to.
P1516Throttle & ETCThrottle Actuator Control Module Throttle Position Performance
The throttle body's internal module reports that actual blade position does not match the commanded position.
Tuning note: GM-specific. Carbon buildup behind the blade is the usual cause — clean it and relearn before condemning the throttle body.
P2101Throttle & ETCThrottle Actuator Position Performance
The throttle actuator motor did not move the blade to the commanded position.
P2119Throttle & ETCThrottle Actuator Control Throttle Body Range Performance
The throttle body could not reach its expected mechanical range during self-test.
P2135Throttle & ETCThrottle Position Sensor 1-2 Correlation
The two throttle position signals disagree with each other beyond tolerance.
Tuning note: Usually a failing throttle body or a corroded connector. The ECM enters reduced power mode until it is fixed.
P0700TransmissionTransmission Control System (MIL Request)
The transmission control module has stored its own fault and is asking the ECM to turn on the check engine light.
Tuning note: P0700 is only a pointer. You must read the TCM directly to get the real code — a generic scanner often will not show it.
P0711TransmissionTransmission Fluid Temperature Sensor Performance
Transmission fluid temperature readings are implausible.
P0716TransmissionInput Speed Sensor Performance
The input shaft speed signal does not correlate with engine speed and gear ratio.
P0717TransmissionInput Speed Sensor Circuit No Signal
The TCM is not receiving an input shaft speed signal at all.
P0722TransmissionOutput Speed Sensor Circuit No Signal
No output shaft speed signal is reaching the TCM.
P0730TransmissionIncorrect Gear Ratio
The measured ratio between input and output speed does not match any commanded gear.
Tuning note: On 6L80 and 8L90 units this points at clutch slip. A torque-management-heavy tune can mask it for a while — that is not a fix, it is a delay.
P0741TransmissionTorque Converter Clutch System Stuck Off
The converter clutch was commanded to lock and slip continued beyond the allowed tolerance.
Tuning note: The most common 6L80 and 8L90 complaint. Added torque finds a marginal converter clutch immediately, so TCC apply pressure and torque limits are part of any serious trans calibration.
P0748TransmissionPressure Control Solenoid Electrical
Electrical fault in a line pressure control solenoid circuit.
P0751TransmissionShift Solenoid A Performance
Shift solenoid A did not produce the commanded shift.
P0776TransmissionPressure Control Solenoid B Performance
A pressure control solenoid is not producing the commanded pressure.
Tuning note: On 8L90 transmissions this frequently accompanies the shudder complaints and is worth checking before a tune is blamed.
P0842TransmissionTransmission Fluid Pressure Switch 1 Circuit Low
A transmission pressure switch reads low relative to expected line pressure.
P0868TransmissionTransmission Fluid Pressure Low
Measured line pressure is below the commanded value.
Tuning note: A worn pump or leaking circuit. Raising pressure in the calibration on top of a mechanical leak will not save the transmission.
P0894TransmissionTransmission Component Slipping
The TCM detected that a clutch or band is slipping beyond acceptable limits.
Tuning note: Hard code. Something inside is worn — this is not calibration territory.
P17BFTransmissionTransmission Adaptive Learning At Limit
The TCM's adaptive shift corrections have reached the end of their range.
Tuning note: Reset adaptives after a trans calibration change, then let it relearn. Stacking new tables on top of old adaptives makes shift quality worse, not better.
P2714TransmissionPressure Control Solenoid D Performance
Pressure control solenoid D is not delivering commanded pressure.
P2723TransmissionPressure Control Solenoid E Stuck Off
Pressure control solenoid E did not respond to its command.
P0033Boost & Forced InductionTurbocharger Bypass Valve Control Circuit
Fault in the turbocharger bypass or recirculation valve control circuit.
P0234Boost & Forced InductionTurbocharger / Supercharger Overboost
Measured boost exceeded the maximum the calibration allows.
Tuning note: Adding a pulley, a smaller supercharger pulley or a turbo upgrade without raising the overboost limit sets this immediately and often triggers a power cut.
P0243Boost & Forced InductionTurbocharger Wastegate Solenoid Circuit
General electrical fault in the wastegate control solenoid circuit.
P0245Boost & Forced InductionTurbocharger Wastegate Solenoid Low
Wastegate control solenoid circuit voltage is below the valid range.
P0299Boost & Forced InductionTurbocharger / Supercharger Underboost
Boost pressure is below the commanded target.
Tuning note: On boosted GM applications check for charge-pipe leaks and wastegate control before touching the calibration.
P2263Boost & Forced InductionTurbocharger Boost System Performance
The boost system as a whole is not producing the pressure the ECM expects.
P0601Communication & ModuleControl Module Read Only Memory Error
The ECM's internal memory checksum failed.
Tuning note: An interrupted write can cause this. Do not attempt a flash on a weak battery — use a maintainer.
P0602Communication & ModuleControl Module Not Programmed
The module is missing required calibration data.
Tuning note: Normal on a replacement module before programming, and on a flash that did not complete.
P0603Communication & ModuleControl Module Long Term Memory Reset
Keep-alive memory was cleared — commonly after a battery disconnect or an internal fault.
P0606Communication & ModuleControl Module Internal Performance
The ECM's internal processor self-test failed.
P1682Communication & ModuleIgnition 1 Switch Circuit 2
The ECM sees a disagreement between the two ignition voltage inputs.
Tuning note: GM-specific and usually a wiring, ignition switch or ground problem rather than a module failure.
U0073Communication & ModuleControl Module Communication Bus A Off
The high-speed communication bus has shut down, usually because a module or wiring fault is corrupting it.
U0100Communication & ModuleLost Communication With ECM/PCM
Another module can no longer talk to the engine control module.
Tuning note: Shows up during interrupted flashes. Recover the module rather than pulling the battery and hoping.
U0101Communication & ModuleLost Communication With TCM
The transmission control module has stopped responding on the bus.
U0121Communication & ModuleLost Communication With ABS Module
The anti-lock brake module is not communicating.
U0140Communication & ModuleLost Communication With Body Control Module
The BCM is not responding to network requests.
C0561Sensors & ElectricalSystem Disabled Information Stored
A chassis module has disabled a function such as traction control and stored the reason.
P0068Sensors & ElectricalThrottle Body Airflow Performance
Manifold pressure, throttle position and airflow do not agree with each other.
Tuning note: Often an intake leak downstream of the MAF, or a MAF that has not been rescaled after an intake change.
P0335Sensors & ElectricalCrankshaft Position Sensor Circuit
The crankshaft position signal is missing or erratic.
Tuning note: An erratic crank signal causes stalling and phantom misfire codes. Check the connector and the reluctor wheel.
P0336Sensors & ElectricalCrankshaft Position Sensor Performance
The crankshaft signal is present but its pattern is implausible.
P0500Sensors & ElectricalVehicle Speed Sensor
No usable vehicle speed signal is reaching the ECM.
Tuning note: Tire size and gear ratio changes must be entered in the calibration — otherwise speed, shift points and the speedometer are all wrong.
P0562Sensors & ElectricalSystem Voltage Low
Battery or charging system voltage is below the ECM's minimum threshold.
Tuning note: Fix charging problems before flashing anything. Low voltage during a write is how modules get corrupted.
P0563Sensors & ElectricalSystem Voltage High
System voltage is above the expected range, typically an overcharging alternator.
P0641Sensors & Electrical5-Volt Reference 1 Circuit
The ECM's 5-volt sensor reference circuit is out of range, which affects every sensor sharing it.
Tuning note: One shorted sensor can drag the reference down and set a fistful of unrelated codes. Fix this first.
P0651Sensors & Electrical5-Volt Reference 2 Circuit
The second 5-volt reference circuit is out of range.
P0685Sensors & ElectricalECM Power Relay Control Circuit Open
Fault in the circuit controlling the main ECM power relay.
P0691Sensors & ElectricalCooling Fan 1 Control Circuit Low
The cooling fan control circuit reads low — relay, wiring or fan motor.
Tuning note: Fan-on temperatures are commonly lowered in a performance calibration. Verify the fans actually respond afterward.
P0715Sensors & ElectricalInput / Turbine Speed Sensor Circuit
The input or turbine speed sensor circuit is not delivering a valid signal.
P2610Sensors & ElectricalECM Engine Off Timer Performance
The ECM's internal soak timer is not tracking correctly, which affects cold-start and readiness monitors.

How to Read the Code Numbers

The first character tells you which system stored the fault. P is powertrain, U is network or communication, B is body, and C is chassis.

The second character tells you who defined it. P0xxx codes are generic and mean the same thing on every OBD-II vehicle sold since 1996. P1xxx codes are manufacturer specific. The P2xxx and P3xxx ranges are a mix of both, and newer modules also use hexadecimal codes such as P06DD and P000A.

The remaining digits identify the specific circuit, cylinder, or monitor. Injector codes P0201 through P0208 and coil codes P0351 through P0358 both follow cylinder order, not firing order — a detail that sends plenty of people chasing the wrong coil.

One more thing worth knowing: a stored code is a symptom report, not a diagnosis. P0420 does not mean “replace the catalytic converter.” It means the downstream oxygen sensor no longer sees the difference it expects to see. An exhaust leak, a lazy sensor, or a fueling problem produce the same code.

Codes We See After a Tune

Some codes are hardware failures. Others are the module correctly reporting that the engine no longer matches the calibration it was given. The second group is fixable in software, and it is the group we deal with every day:

P0101 — an intake or a larger MAF housing with the stock transfer function. P0128 — a low-temperature thermostat the warm-up thresholds were never adjusted for. P0108 — a 1-bar MAP sensor pegged out on a boosted build. P0234 — a smaller blower pulley against the factory overboost limit. P0506 or P0507 — a camshaft the idle airflow tables know nothing about. P3400 and the P34xx solenoid codes — an AFM or DFM delete done in hardware but not in the calibration.

Codes that must never be tuned around: P0016 and P0017 crank-to-cam correlation, P0521 / P0522 / P06DD oil pressure, P0324, P0325 and P0330 knock control faults, and P0894 transmission slip. P0316 misfire on startup on a 5.3L or 6.2L is often the first sign of a collapsing AFM lifter — worth a compression check before it becomes a bent pushrod and a top-end teardown.

Got a GM Code You Cannot Solve?

Send us the code and a datalog. We read MAF, MAP, knock, fuel trim and misfire data on every remote tune submission and we will tell you straight whether it is a calibration fix or a hardware problem.

Talk to a Tuner

Frequently Asked Questions

How do I read DTC codes on a Chevy, GMC or Cadillac?

Any generic OBD-II scanner will read stored P-codes from the port under the dash. Transmission codes behind P0700, and GM's own P1xxx codes, need a capable scan tool or tuning software such as HP Tuners — a basic reader will show you P0700 and nothing useful behind it.

Do I need to unlock my GM ECM before tuning?

No. Unlike 2015 and newer Dodge, Jeep, RAM and Chrysler vehicles, GM engine control modules are not locked — they flash straight through the OBD-II port. The exception is the 2017 and newer 8-speed and 10-speed T87A transmission module, which does need an unlock service before it can be written.

What is the difference between AFM and DFM?

Active Fuel Management deactivates a fixed set of four cylinders on V8s. Dynamic Fuel Management, on later engines, can run 17 different cylinder patterns. Both rely on oil-pressure-controlled lifters, which is why oil pressure codes like P06DD and lifter failures show up together so often.

Will a custom tune clear my check engine light?

Only if the code came from a calibration limit rather than a mechanical fault. Rescaling a MAF curve, adjusting warm-up thresholds, correcting idle airflow for a camshaft, or properly disabling AFM after a hardware delete are real fixes. A collapsed lifter, a stretched chain or a slipping clutch pack are not.

Can a tune delete AFM or DFM?

The calibration side can be switched off, and it must be if the hardware has been deleted — lifters, oil pump control and torque management all have to agree. Software alone does not remove the hardware, and hardware alone leaves the ECM commanding a system that is no longer there.

Can I keep driving with the check engine light on?

Depends entirely on the code. A small EVAP leak is not urgent. Low oil pressure, crank-to-cam correlation, or misfire under load can destroy an engine. If the light is flashing, stop driving — a flashing MIL means active misfire dumping raw fuel into the converters.

More Tuning Tips

GM ECM & T87A TCM Unlock / Programming  ·  GM, Chevy, GMC & Cadillac Remote Tuning  ·  MAP Sensor kPa to Boost Conversion Chart  ·  HP Tuners Credit System Explained

Tuning a different platform? See our Dodge, Jeep, RAM & Chrysler DTC code list.

This list is a reference for diagnosis, not a repair manual. Definitions describe what the module detected — always confirm with a proper diagnosis before replacing parts. Coverage focuses on 2005 and newer Chevrolet, GMC, Cadillac and Buick gasoline platforms, including LS, LT and Ecotec engines.