P2187 to P2190: System Too Lean or Too Rich at Idle Explained
When a scan tool reports P2187, P2188, P2189, or P2190, the control module has detected idle fuel trim that is too lean or too rich on bank 1 or bank 2. These codes describe a mixture-control condition at idle, not a failed part. Confirmation of the exact description, symptoms, typical causes such as vacuum leaks or sensor faults, and a methodical way to narrow the problem all help interpret the result without jumping to a replacement.
What P2187, P2188, P2189 and P2190 Mean
A P2187 code typically indicates the system is too lean at idle on bank 1, while a P2188 code indicates the system is too rich at idle on that same bank. A P2189 code points to a lean idle condition on bank 2, and a P2190 code points to a rich idle condition on bank 2. Bank 1 is the cylinder bank that contains cylinder 1; bank 2 exists only on engines with a second bank. Exact bank layout still has to be checked for the specific engine.
Those standard phrases are a starting point, not a substitute for the vehicle's service information. Diagnostic criteria, enable conditions, and even the wording attached to P2187, P2188, P2189, and P2190 can vary by manufacturer, so the stored definition and trip logic should be confirmed before interpreting scan results. The codes describe a detected mixture-control condition during idle, usually in closed-loop operation. They do not name a failed injector, sensor, or hose, and they should be treated as evidence that idle fueling needs explanation rather than proof that a part has failed.
Idle Symptoms and Signs That Need Immediate Attention
Idle fuel trim trouble can show up as a rough idle, shaking, hesitation, or stalling, and the check-engine light is often on when a P2187 code or a related idle mixture code is stored. Noticeable drivability complaints are not guaranteed. Some vehicles run well enough at idle that the stored result is the first clue. A rich condition associated with P2188 or P2190 may bring fuel odor or higher fuel use, yet those signs still cannot establish whether the cause is injector leakage, a purge path, or something else.
Certain signs need immediate attention rather than continued driving. A flashing check-engine light, severe shaking, or repeated stalling is a reason to stop safely and arrange professional assistance. Treat a strong raw-fuel odor or any visible fuel leakage the same way: shut the engine off and avoid restarting it until the source has been inspected. Those conditions can involve fire risk or an unstable idle that leaves the vehicle hard to control in traffic, so they sit outside ordinary mixture-code investigation.
Air Leaks, PCV Faults and Purge Problems
Unmetered air entering after the measuring point can lean the mixture at idle, which is why an intake vacuum leak is a frequent concern with P2187 and P2189. Air can arrive through cracked intake plumbing, loose seals, or PCV system faults that open a path the mass airflow sensor never counted. A purge valve that does not seal can also disturb idle mixture. Its effect depends on how much extra airflow and fuel vapor it admits into the intake, so the same stuck-open valve can look lean or rich depending on vapor load.
Owner inspection should stay limited to what can be seen with the engine off and cool: loose connections, damaged hoses, a disconnected PCV line, or intake components that were recently disturbed. Do not use flammable sprays or improvised leak-finding methods around a running engine. When the leak is not obvious, professional intake smoke testing and dedicated PCV or purge-system tests are the safer next step. Those procedures can isolate unmetered air or a leaking purge path without introducing ignition sources or misleading the idle fuel trim further.
Fuel Delivery and Sensor Faults That Can Affect Idle Mixture
Fuel injector leakage or excessive fuel pressure can add extra fuel at idle and contribute to a P2188 code or a P2190 code. Inadequate fuel delivery, by contrast, can leave the mixture lean and support P2187 or P2189. Commanded fueling also depends on inputs the control system actually uses. An inaccurate mass airflow sensor, intake pressure reading, or temperature input can change how much fuel is requested even when the hardware that meters fuel is intact. The pattern is vehicle-specific, so those inputs are checked against service information rather than assumed.
Oxygen sensor feedback, or an air-fuel sensor on some vehicles, is how the module learns that idle mixture is off. That signal may reflect a real air or fuel problem, or it may reflect a measurement fault. A fuel trim code alone does not justify sensor replacement. Exhaust leaks upstream of the sensor can also distort readings and should not be guessed from the code. Fuel-pressure checks, injector leakage testing, and exhaust-leak diagnosis belong in professional testing, where the results can be compared with closed-loop idle data instead of parts swapping.
Scan Data That Helps Narrow the Cause
Preserve stored and pending codes, freeze-frame data, and recent repair history before clearing anything. Freeze-frame data captures the operating conditions when the fault set, which is more useful than a later idle snapshot taken after the engine has changed temperature or load. Short-term and long-term fuel trim describe how the control module is correcting mixture: positive values generally mean fuel is being added, and negative values generally mean fuel is being removed. Universal numeric thresholds are not a reliable diagnostic rule, because strategy and scaling differ by vehicle.
Idle readings also have to be judged against engine temperature, closed-loop status, and the recorded operating conditions. Open-loop or a cold engine can make trim look abnormal for reasons that have nothing to do with a P2187 code or P2190 code set at warm idle. A technician then looks at bank-specific patterns, related misfire or sensor codes, and controlled operating-condition checks to choose targeted tests. A lean idle trim on one bank with a matching misfire code points in a different direction than matching rich trims on both banks with a purge concern.
Confirming the Repair and Handling a Returning Code
Each repair should be tied to a confirmed test result instead of replacing PCV components, injectors, or sensors solely because they are possible causes. A P2189 code on bank 2, for example, still needs a leak, fueling, or sensor finding that explains that bank. Clearing the light or resetting adaptive values does not establish that the fault is repaired. When a reset of idle fuel trim or related adaptive memory is required, follow the vehicle-specific procedure rather than treating a blank code list as proof of a fix.
Verification means watching for a stable idle, appropriate fuel trim behavior, and code status after the relevant monitor has had an opportunity to run. Returning to idle in closed-loop operation and confirming that the same lean or rich condition does not reset is more meaningful than a short key cycle. If a P2187, P2188, P2189, or P2190 code comes back, document when symptoms return, including temperature, idle only versus after a stop, and any fuel odor or roughness. Unresolved or intermittent faults need further diagnosis rather than repeating the same replacement.