P0172 and P0175 - OBD-II Trouble Codes
Fuel System Too Rich (Bank 1 or 2)
Our emissions expert has put together the following information about the P0172 and P0175 fault code. We have also included diagnostic procedures you can take to your repair shop if the mechanic is having difficulty analyzing the code.
OBD II Fault Code
- OBD II P0172
- OBD II P0175
Fault Code Definition
- OBD II P0172 Fuel System Too Rich (Bank 1)
- OBD II P0175 Fuel System Too Rich (Bank 2)
- Check Engine Light will illuminate
- In some cases, no adverse conditions may be noticed by the driver
- In other cases, there may be performance problems, such as a lack of power on acceleration and some "coughing" or misfiring. The vehicle may have trouble idling, especially when warm or when sitting at a stoplight.
- Other codes may be set, such as P0300 (random, multiple misfires)
Common Problems That Trigger the P0172 and P0175 Code
- PCM software needs to be updated
- Mass Airflow Sensor (MAF)
- Defective Manifold Absolute Pressure Sensor (MAP)
- Engine mechanical problems
- Defective Oxygen Sensor
- Defective Fuel Pressure Regulator
- Defective Coolant and/or Air Temperature Sensor
- Thermostat is stuck open
- Ignition Misfires
- Defective Throttle Position Sensor
- Defective or restricted fuel return line
- Defective Fuel Injectors
- Oxygen Sensors
- Fuel Pump
- Fuel Injectors
- Fuel Pressure Regulator
Polluting Gases Expelled
- HCs (Hydrocarbons): Unburned droplets of raw fuel that smell, affect breathing, and contribute to smog
- CO (Carbon Monoxide): Partially burned fuel that is an odorless and deadly poisonous gas
Combustion engines operate by burning an air/fuel mixture of about 14.7 to 1—14.7 parts air to 1 part fuel. When the air ratio goes below 14.7 parts, this is called a "rich" mixture. If the air rises above 14.7 parts, it is called a "lean" mixture.
Rich Mixture = Too much fuel, not enough air
Lean Mixture = Too much air, not enough fuel
To keep the engine running properly, the Engine Control Module measures the oxygen content in the exhaust with oxygen sensors and makes adjustments to the mixture by injecting more or less fuel.
The control module operates within specific parameters and under normal conditions, it will make minor adjustments to the air/fuel mixture. When these adjustments become too large, a fault code is set. When the P0172/P0175 code sets, the oxygen sensors are detecting too little oxygen in the exhaust and the control module is removing the maximum amount of fuel in its effort to maintain the proper air/fuel mixture.
P0172/P0175 Diagnostic Theory for Shops and Technicians
When a vehicle has the fault code P0172 and or P0175, it means that computer can no longer automatically adjust the mixture between air and fuel. Code P0172 applies to Bank 1 and P0175 applies to Bank 2. Code P0175 mainly applies to V6 or V8 engines because 4-cylinder engines generally have only one bank, though there are a few exceptions. Some of the high performance 4-cylinder and straight 6-cylinder engines (such as those in BMW and Lexus) split the cylinders into groups of two or three and call them separate banks.
When the code says that the Fuel System is "too rich," it means that the computer has been subtracting more and more fuel, which is called Long Term Fuel Trim. Ideally, the Long Term Fuel Trim should be close to 1 to 2 percent. When a code P0172 is set, it means that the Fuel Trim is anywhere from -15 percent to as low as -30 percent compensated. When this happens, the computer knows that there is an improper condition in the control of the Fuel System.
The first step in the diagnosis of a code P0172 and/or P0175 is to look at a minimum of three ranges of the Long Term Fuel Trim numbers on a scanner. Check the idle reading—3000 RPM unloaded and 3000 RPM with at least 50 percent load. Then check the freeze frame information for the code to see which range(s) failed and what the operating conditions were.
Before we get into the main causes of P0172, let's explore why this code matters.
Why Does a P0172/P0175 Code and Running "Too Rich" Matter?
"Rich" running cars and trucks are highly polluting vehicles. CO pollution, which is poisonous and helps create ozone, is caused by vehicles that are running too rich. A rich condition can also cause misfires from "overfueling" (too much fuel for the Ignition Spark to burn), which puts raw fuel (HCs) into the atmosphere. When inhaled, these raw fuel droplets are very poisonous to living beings and contribute to the yellow/brown color in a polluted sky. When you are driving behind a "rich" running car or truck, it can smell very bad, somewhat like rotten eggs, and make you feel dizzy. This is caused by the Catalytic Converter consuming too much sulfur (part of vehicle fuel). However, it should be noted that a "rich" running engine can also have little or no smell, since CO itself is odorless.
P0172 is not an Oxygen Sensor problem. Before a P0172 code is possible, the computer first ran a series of tests to validate the readings from the oxygen sensors. Since the oxygen sensors passed their readiness tests and didn't set any codes, the computer then looked to the Fuel Trim adjustment. When the computer determined the air-to-fuel mixture to be too rich, it then set the P0172 code.
What Are Some Common Causes of Code P0172/P0175?
Always check to make sure that there is not a PCM software update due or available. Often, as the vehicle's engine wears, the PCM's Fuel Map software inaccurately compensates for this condition. The fuel mixture grows rich and eventually, the code sets.
An "over reporting" Mass Air Flow Sensor can be a common cause of a code P0172 and P0175. Essentially, this means that the Air Flow Sensor is telling the computer that much more air is entering the engine than actually is. Based on this large amount of air entering the engine, the engine computer or PCM sprays more fuel into the combustion chambers.
Since the oxygen sensors are telling the computer that less fuel is needed, this causes confusion in the computer because the Mass Air Flow Sensor is still saying there is too much air and the Oxygen Sensor is reporting that the mixture is still too rich. The computer tried to compensate, but since resolution is impossible, it sets the code. It is important to restate that the Oxygen Sensors are accurate—the fuel mixture is too rich. In this case, the Air Flow Meter or Sensor is inaccurately reporting the real amount of air entering the engine.
How Do I Know if the Problem Is the Mass Air Flow Sensor?
There is a very effective "truth test" for any Mass Air Flow Sensor. Start the engine, let it idle, and then check the Barometric Pressure reading on the scan tool data. If the reading is about 34.5 Hg and you are close to sea level, you know that you have a defective Air Flow Meter because it is telling you that you are at about 4000 feet below sea level. (These conversion tables will help.) When the Mass Air Flow Sensor sees this Barometric reading, it adjusts its Air Density table and then "over reports" the actual amount of air entering the engine. It does this because the Barometric Pressure Sensor is actually part of the Mass Air Flow Sensor.
Sometimes the Air Flow Sensor and the sensing wire get covered with dirt, dust, or oil residue, which can also set a P0172. Cleaning the sensor might hold off problems for a while, but eventually, the MAF sensor should be replaced. Always make sure the Air Filter and its enclosure are dirt-, dust-, and oil-free. If you clean and replace the filter and its enclosure as needed, you will prevent the new MAF from failing.
Additional Causes of Code P0172/P0175
- Defective Manifold Absolute Pressure (MAP) Sensor and/or its vacuum line. Check the MAP reading and then do a manual vacuum reading. An engine needs to have at least 17 to 18 inches of vacuum in order to run properly. When the MAP reading is low, the PCM thinks that the vehicle is under heavy load and increases the fuel supply.
- Mechanical engine problems will cause a low MAP sensor reading because engine vacuum is low or erratic. A slipped or inaccurately installed Timing Chain or Timing Belt and/or leaking Head Gasket can cause poor vacuum and MAP readings. If the engine has a mechanical misfire from valve train problems or weak cylinder compression, it will send puffs of oxygen into the exhaust system. This will cause the Oxygen Sensors to receive false "lean" readings (high exhaust oxygen content).
- A defective Oxygen Sensor can sometimes cause a P0172. If the Oxygen Sensor heater element only works intermittently—well enough to pass the readiness test, but fails once the car has been driven for a while—the vehicle will go into "open loop."
- A stuck Fuel Pressure Regulator can cause a rich condition since the Fuel Pressure will be too high, causing an "over fueling" condition. Be sure to verify proper Fuel Pressure under various driving conditions.
- An inaccurate Coolant Temperature or Air Temperature Sensor can cause a rich condition because they will report that the engine is still cold, which will cause the PCM to keep the mixture rich long after the engine is at proper operating temperature.
- A Thermostat stuck in the open position can mechanically cause a code P0172, especially in cold climates. The engine won't warm up, preventing it from going into "closed loop" fuel control.
- Ignition misfires, like mechanical misfires, cause puffs of oxygen to keep hitting the Oxygen Sensors. Since the sensors will think the mixture is running lean, the PCM will add fuel to the mixture.
- A worn or stuck wiper in the Throttle Position Sensor will tell the PCM that more power is being requested by the operator. The PCM will add fuel to accommodate this false TPS reading.
- If the vehicle is not hoisted properly, the fuel return line can be pinched, causing a high Fuel Pressure condition. Always verify Fuel Pressure for any code P0172.
- Shorted Fuel Injector windings can cause the injectors to spray too much fuel, causing a rich condition. Be sure to verify the Pulse Width (the PCM "on" time) with the Labscope Injector Firing pattern. Be sure to "Ohm check" the injector winding resistance as well in order to verify that it's within specification.