intermediate

Open Loop vs Closed Loop Fuel Control

In closed loop the computer corrects fueling using live oxygen sensor feedback; in open loop it runs a pre-programmed fuel table with no feedback at all — and almost no diagnostic data is meaningful until the engine is in closed loop.

In short

Closed loop means the feedback path from the upstream oxygen sensor back into the fuel calculation is active. Open loop means it is not, either deliberately (cold start, heavy load) or because something failed. Fuel trims, readiness monitors and most live-data interpretation depend on the engine being in closed loop, so checking loop status is the first thing to do before reading anything else.

The loop is a feedback loop

Closed loop: the computer commands a quantity of fuel, the mixture burns, the upstream oxygen or air/fuel sensor measures what is left in the exhaust, and that measurement feeds back into the next fuel command. The loop is closed because the output returns to the input. The target is stoichiometric — for gasoline, about 14.7 parts air to 1 part fuel by mass, or lambda 1.00. That is not an arbitrary number: it is the ratio at which a three-way catalytic converter can reduce all three regulated pollutants at once.

That target shifts with fuel composition. Ethanol-blended fuel needs proportionally more fuel for the same air, so a vehicle running a high-ethanol blend targets a numerically lower air-to-fuel ratio while still sitting at lambda 1.00.

Open loop: no feedback. Fuel comes from calibration tables indexed by coolant temperature, engine speed, load and measured airflow. It is the calibrator's best estimate for those conditions, and it is deliberately biased rich, because a rich mixture is far more survivable than a lean one.

When the engine runs open loop on purpose

Open loop is not a fault condition by default. Several normal situations require it:

Cold start and warm-up. An oxygen sensor produces nothing usable until its element reaches operating temperature. Heater circuits shorten that wait considerably, but the computer also holds open loop until coolant temperature crosses a threshold. Cold-engine fueling is intentionally rich, because fuel does not vaporize well against cold intake and cylinder surfaces.

Wide-open throttle and heavy load. Many strategies command a deliberately rich mixture at high load for power and to cool combustion and exhaust components. That target is outside the closed-loop stoichiometric window, so the loop opens.

Deceleration fuel cut-off and various transient conditions where the sensor reading would not represent a controlled mixture.

Fault conditions. With a failed, unheated or implausible sensor, the computer falls back to open loop by design so it does not act on bad data.

Reading loop status on a scan tool

The generic OBD-II parameter is Fuel System Status — sometimes displayed as Fuel System 1 Status and Fuel System 2 Status, or as Loop Status. Its standard reported values are:

  • OL — open loop, conditions not yet met (typically warm-up).
  • CL — closed loop, using oxygen sensor feedback.
  • OL-Drive — open loop because of driving conditions, such as wide-open throttle or deceleration fuel cut.
  • OL-Fault — open loop because of a detected system fault.
  • CL-Fault — closed loop, but with at least one oxygen sensor faulted, so the remaining sensors are being used.

On a two-bank engine the two fuel systems can report different statuses, and a difference between them is itself information.

Check this parameter first, every time, before interpreting a single other value.

Why it decides whether your data is worth reading

Fuel trims are only valid in closed loop. In open loop, short-term trim is typically parked at zero and long-term trim is frozen. Reading trims on a cold engine or at wide-open throttle produces numbers that mean nothing, and people regularly diagnose from them anyway.

Several readiness monitors depend on closed-loop operation — the catalyst monitor and the oxygen sensor monitors among them — because they judge sensor behaviour against a controlled mixture. Others do not: many EVAP leak tests run engine-off or at key-on after a cold soak, and have their own enable conditions (fuel level, ambient and coolant temperature, soak time). A vehicle that never reaches closed loop will still fail to complete the fuel-control-dependent monitors and can fail an emissions inspection on readiness with no warning light illuminated.

Freeze frame needs the same check. Look at what loop status was recorded when the code set. A lean code captured during a transition into closed loop is a different story from one captured at steady cruise.

Complaints that only appear during warm-up are open-loop complaints. Since there is no feedback correcting anything at that point, the cause is on the input side — coolant temperature signal, airflow measurement, fuel pressure at start, or the calibration's assumptions being violated by a mechanical problem. Chasing an oxygen sensor for a symptom that disappears once the engine warms up has the logic backwards.

A vehicle that never enters closed loop

If Fuel System Status stays at OL or OL-Fault on a fully warmed engine, work through these:

Engine coolant temperature sensor reading falsely low. The computer believes the engine is still cold and holds open-loop enrichment indefinitely. A useful generic check: after an overnight soak, the coolant temperature and intake air temperature readings should be close to each other and close to ambient. If they disagree substantially on a cold vehicle, one of them is wrong. Then compare the coolant reading against an actual measured temperature once warm — take that measurement with the engine off and the cooling system cooled if it involves touching anything, since a hot system is under pressure. P0125 specifically reports insufficient coolant temperature for closed-loop fuel control.

Thermostat stuck open, so the engine never reaches its regulating temperature. P0128 addresses exactly this. The vehicle may run acceptably but never satisfy the closed-loop threshold, particularly in cold weather.

Oxygen sensor heater circuit failure — P0030, P0031, P0032, P0135, P0141, P0155 and their equivalents. Without heat the sensor may never reach operating temperature at idle, where exhaust heat is lowest, even if it works fine at speed.

A disconnected, contaminated or failed upstream sensor. Silicone, coolant and oil contamination all kill sensors, and the cause of the contamination usually needs fixing too.

Each of these is a candidate, not a conclusion — confirm the specific one with its own test (a cold-soak comparison and a warm cross-check for the coolant sensor, a warm-up temperature climb for the thermostat, a heater circuit voltage and current draw check for the heater, a sensor response sweep for the sensor itself) before replacing anything.

Running rich in open loop indefinitely costs fuel economy, fouls spark plugs with carbon, produces a fuel smell, dilutes engine oil with unburned fuel, and loads the catalytic converter with hydrocarbons it has to burn off. In mild cases this is an expense rather than an emergency, and it gets more expensive the longer it runs. It stops being merely expensive if the fuel smell is strong, if the exhaust smokes, if the engine begins to misfire or the check engine light flashes, or if the oil level rises and the oil smells of fuel — those mean stop and have it diagnosed, since a converter loaded with raw fuel can overheat and heavily fuel-diluted oil no longer protects the bearings.

Why this matters

Loop status is the gate on every other piece of live data. Read fuel trims in open loop and you will read zeros and conclude nothing is wrong; read them without checking and you may act on numbers that were never valid. It is also the direct explanation for two common and confusing situations: a car that fails emissions with no warning light, and a car that drinks fuel and fouls plugs while every sensor reads plausibly.

Codes this explains