What causes codes to appear and then disappear by themselves

My 2005 mustang GT’s check engine light came on yesterday. The 2 codes were P0171 and P0174 which are lean codes for bank 1 and 2 of the engine. The only symptom was a rough idle but no stalling out. It had no problems at driving speeds, only at idle. I cleared the code with the scanner. I restarted the car/engine and within 10 seconds the light came back on with what I presume was the same codes. I drove it home an hour and shut it off

Today when I took my car to work the light was still on but no more rough idle and then when I started the car again hours later after work the light had turned off by itself.

I always thought the check engine light needed to be manually reset with a scanner or disconnecting the battery after fixing the issue which I did not do. I haven’t recently changed anything or messed with the engine what could cause this?

The Check Engine light will automatically turn off if the condition(s) that caused it no longer exists.


1 Like

Right. But I didn’t fix anything. The car was running lean for whatever reason and then seemingly fixed itself. A global (both bank) lean condition could be caused by a lot of things.

So to Tester’s point…either the issue triggering the sensor went away on it’s own… or the sensor itself is going bad or getting flaky.

Either way, I’d keep an eye on it. There may be an issue brewing.


Those codes, like most, but not all codes are called two trip DTC’s. They have to be detected on two successive drive cycles. It usually takes three successive drive cycles without the detection of the DTC to make the light go out, but the code remains stored for another ten drive cycles in case it comes back. It will trip the light on any detection while the code is stored.

Your engine was not running rough because of the codes. Your engine can run just fine with these codes. When the engine is warmed up and running in closed loop, that is the amount of fuel injected is determined by your O2 sensors, the computer is comparing actual fuel needed to a chart programmed in by the factory. If the fuel needed is off by 25% or more from the chart, the code is set, but the engine is still running at the optimum A/F ratio.

Rough running with this code usually indicates a vacuum leak near one cylinder or a misfire. A small misfire may not occur enough to set a misfire code but could cause an issue with the O2 sensors reading incorrectly. An hour of driving could have cleaned off the offending plug to clear everything up.

If you haven’t changed the plugs in the last 60k miles or so, check your owners manual for the change interval, then you might consider doing that.

Edit: DTC is diagnostic trouble code.

1 Like

The symptoms sound like a classic vacuum leak of some sort. It must have temporarily resolved itself, possibly b/c the engine heat caused something to expand enough to stop the air leak. That could cause the light to go out. Or the heat freed up something enough that was stuck before, like the pcv valve for example.

The computer is looking for problems all the while the engine is running, and will turn the CEL on when it detects a problem, and off when it doesn’t. At what point in the driving cycle those occur vary from code to code. Suggest you focus on what is causing it to turn on , and use the fact that it turns off by itself sometimes as a clue. It’s a pretty good bet thatwhatever is causing it, it will eventually get worse.

1 Like

Resetting the codes does not fix a problem. It’s like removing a blood pressure cuff expecting the cause to go away.

1 Like

I agree with the vacuum leak diagnosis. However, it could be something sneaky like a stuck open canister purge valve. It happened to one of my cars.

1 Like

could it be the purge canister without throwing an evap code?

You may not get an evap code if the purge valve is intermittent.