This article was originally published June 20, 2013. Some of the information may no longer be relevant, so please use it at your discretion.
Has this ever happened to you? A customer calls telling you that her car’s Malfunction Indicator Lamp (MIL), is on and she’s worried about what she needs to do. You ask if she’s noticed any changes in the way the car drives and after her reply to the negative, you carefully explain that there are hundreds (if not thousands) of possibilities that could cause that check engine light to turn on. In her case, you tell her that it can likely wait until she can bring the car in at her convenience, and you schedule an appointment for later in the week.
This was on a Monday, and when she arrives Thursday morning, she informs you the light is no longer on. Should she still have the car looked at?
A personal experience
I do a fair amount of traveling and left the end of this past March to attend the TST Big Event in Fishkill, N.Y. It was a chilly 50-odd degrees (chilly at least for us Floridians!) when my wife and I left for the airport.
Shortly after we started our drive, that annoying yellow warning light came on, catching my wife’s attention. She (like many of your own uninformed customers) worried we might break down on the way and miss our flight. Sensing no change in the way the car was performing, I assured her I didn’t believe that would happen, and we continued on our way.
After we returned a few days later, the MIL light was still on as I drove the car home. I had every intention in the world of connecting to the car and asking the Powertrain Control Module (PCM) what had upset it enough to trigger the light the next morning, but other duties called and the car sat unattended to.
I’ll be the first to admit I have a great job. I get to travel the country meeting technicians and shop owners, write about fixing cars, and work from home. With the year-round beautiful weather my home state has to offer, if I do need to run an errand in town, I usually prefer two wheels to four. The Toyota Corolla I own is only called into service when the weather takes a turn for the worst and spends most of its time idle in the driveway, and I admit, when it comes to servicing or repairing my personal vehicles, I tend to procrastinate as much as possible, so it was several weeks before I actually took the time to finally connect my little pocket code reader to see why the MIL had come on.
Only now it wasn’t on anymore.
Here today, gone tomorrow
An OBDII computer, like the one on the Toyota, conducts a variety of tests on itself, its inputs and outputs. When these tests fail and a problem is detected, the computer software generates an appropriate Diagnostic Trouble Code (DTC) and turns the MIL light on to alert the driver. If the Engine Control Module (ECM) test that triggered the light is passed later three times in succession, the ECM will turn the light off, but will keep the code active in its memory for a while longer (usually 40 key on/run/key off cycles) before deleting the code entirely.
This is not as uncommon as you might think, especially if the cause of the original failure is intermittent (like a wiring issue to a critical sensor that only fails when the harness is stressed in a certain way).
The only other way a MIL is going to turn itself off is if someone else cleared the data or battery power (to the keep alive memory) was lost. I knew neither of those had happened and connected my PC-based scan tool in full confidence I’d still find the offending DTC(s) stored.
I was a bit surprised by the DTC I found. It’s not often you find a P0171 (System Too Lean, Bank 1) that has mysteriously fixed itself. Drilling down into the freeze frame data, I figured I should try and get a feel for the driving conditions that were present when the code set. I recalled the light turning on within a mile of my home on that chilly morning.
Freeze frame substantiated my memory of events by recording an ambient air temperature of 50 degrees F and a coolant temperature that indicated an engine that was still a bit on the cold side at 167 degrees F. The ECM was in fuel control as shown by the “Closed Loop” status, and the car was only running a bit off of idle at 997 rpm.
The Short Term Fuel Trim (STFT) and Long Term Fuel Trim (LTFT) definitely indicated a problem, logging 20 percent and 36 percent respectively. That’s 56 percent total trim, and that’s exactly what the computer is watching in this continuous monitor.
I can’t help but think I’m dealing with a vacuum leak when I see system lean codes set at low engine speeds. With the lower throttle opening, any air that enters the engine downstream of the Manifold Air Flow sensor (MAF) makes up for a larger overall percent of the total airflow going into the engine than it would at cruise speed and the resulting impact on fuel trim is that much greater, and there is normally an easy way to tell by simply comparing total fuel trim (STFT plus LTFT) at idle and at 2,500 rpm. If the idle trim shift is large, and the cruise rpm shift is small or near normal, odds are high there is unmetered air entering the engine somewhere.
Let’s find out
The outside air temperature on the day I was playing with the Toyota was closer to 85 degrees F, so that would be one parameter in the freeze frame record I wouldn’t be able to duplicate, but I could duplicate the cold engine temperature by watching the fuel trims as the engine warmed up. I started the car after selecting just a few of the dozens of Parameter Identifiers (PIDs) for display. I decided for the moment to watch fuel trims (short and long), engine speed, engine temperature, Air Fuel Sensor (AFS) voltage, downstream oxygen sensor voltage, and the equivalence ratio for that upstream wideband-type sensor. This last is calculated lambda, or the expression of the air/fuel ratio itself with 1.0 being stoichiometric.
The car entered closed loop, and I saw nothing out of the ordinary. STFT was switching (slowly) and remaining under five percent, well below the +/- range I usually go by on an engine equipped with a wideband sensor. LTFT was also reading just over two percent, and the 0.992 lambda number was off but not excessively so. Whatever had caused the lean condition originally had disappeared.
I raised the speed on the now warm engine to roughly 2,500. Here, too, fuel trims were reporting well within their normal range, though LTFT was a bit higher at just over six percent.
The next thing I like to do is see if I can tell if the sensors responsible for letting the ECM know how it’s fuel control strategy is working are telling the truth and reporting honestly. The Corolla has 75,000 miles on it, low for the car but kind of high on the life span for oxygen sensors. I snapped the throttle a few times while graphing the sensor and fuel trim PIDs and still didn’t see anything wrong.
Stick with your process
At this point, it looked like there was no repair to be made and nothing to worry about, but I was still curious as to why it would run so lean that one time. As is my normal process, the next step was to hit the service information and research a bit on exactly what requirements need to be met for this code to set. I also make a habit of reviewing Technical Service Bulletins (TSBs) to see if there is anything there that might relate to the problem I was dealing with.
System Lean testing by the ECM is not that complicated and the method used by most OEMs was shared by the Toyota. To quote the description I found,
“Under closed-loop fuel control, fuel injection volume that deviates from those estimated by the ECM causes changes in the long-term fuel compensation value (LTFT). The long-term fuel trim is adjusted when there are persistent deviations in the short-term fuel trim values. if the average fuel trim value (total fuel trim) exceeds the malfunction threshold, the ECM interprets that as a fault and sets a DTC.”
Simply put, if the feedback provided by the AFS tells the ECM that what it got was too lean, the ECM will respond by making STFT more positive. If that need persists, it will cause LTFT to adjust as a more permanent solution to the lean condition, and if the total amount of correction exceeds the threshold limits (in this case, 35 percent), the P0171 is placed in “pending” status. It is a two-trip code, meaning the ECM has to see the same fault in the same rpm/load range in two consecutive tests before it will turn the MIL on, set the code as a “hard” code, and log the data into freeze frame.
The calculated load PID on my idle/cruise tests was 16 percent, but the freeze frame recorded a 14 percent load.
A clue? Could that ambient temperature difference explain the load difference? If the rpm/load was different, could that explain why the ECM turned off the MIL?
On to the TSBs
Interestingly enough, I did find a TSB (TSB2909 - discontinued) that spiked my interest.
“Following a cold soak at sub-freezing ambient temperatures, some 2003-2008 model year Corolla, equipped with the 1ZZ-FE engine, may exhibit a MIL “on” with one or more of the following Diagnostic Trouble Codes (listing the P0171) as a result of a vacuum leak at the intake manifold.”
The fix was an upgraded intake manifold gasket. A check of the iATN (International Automotive Technicians Network) database revealed more than one hit reported mostly by members who lived way further north than I do.
Granted, 50 degrees F is certainly nothing near “sub-freezing”, but it did get me to thinking. I had run into similar issues with older Ford Windstar V6s that would leak internally only when cold, even by Florida standards.
As much as my car sat, was that a possibility?
In the old days, we used propane or carb spray on a running engine to pinpoint an intake leak. That doesn’t work very effectively on most of today’s cars, for a variety of reasons. In my case, starting the car would quickly defeat the purpose of trying to find a leak that only occurred “cold.”
The best way to test? Smoke it!
EVAP tester to the rescue
The same smoke machine you use to locate hard-to-find evaporative emissions system (EVAP) leaks is an excellent tool for so many more diagnostic purposes, including this one. I let the car sit overnight to give it time to cool off. I knew I might catch it if I waited to test first thing the next morning when the ambient temperature would be closer to 65 degrees F. It wouldn’t be quite the same outside temperature, but a darn sight closer than the current 85-plus.
I hooked up the smoke line to the intake line attached at the EVAP purge solenoid and pumped away. Within a few minutes, I could see smoke exiting from the air box’s fresh air inlet but saw nothing apparent anywhere else.
Well, I guess that was to be expected. Even if my suspicions were true, it was way warmer out now than it was back in March.
Just as I was about to pack it in and call it quits, I noticed a small (I mean, small) wisp appearing from the front of the engine, just above cylinder 2’s intake tract. Granted, it wasn’t pouring out, but it was there, and I felt a small tingle of excitement.
I always get that way when a diagnostic theory proves correct! Admittedly, luck played a part, and the alignment of the planets must have been in my favor, but the smoke was there and that was all I needed to see.
And believe me, I’ll replace those gaskets first chance I get (Or maybe I’ll wait till next winter and smoke it again. It might make an interesting follow-up, don’t you think?)
Subscribe to Motor Age and receive articles like this every month…absolutely free.