In our car shop, we had a 2006 Chevrolet Trailblazer with a 4.2L inline engine and about 50,000 miles on it. The vehicle was setting a random code P0171 fuel system lean. This vehicle was first taken to the dealership for this issue and they replaced the front oxygen sensor and the intake manifold gaskets, which made no difference. The now-frustrated customer took the vehicle to an independent shop where they tried replacing the Mass Air Flow sensor with no success.
This was when I was called. This vehicle can be driven for a week or two without the check engine light returning and storing the P0171 code. There are no drivability issues reported by the owner.
When an OBDII vehicle stores a trouble code, freeze frame data is also recorded. A freeze frame is a snap shot of parameter information when the code was set. Many times this information will hold some valuable clues. Here is the evidence gathered so far: The fuel trims show the computer is trying to add fuel to maintain stoichiometry. Both times the code was set, the coolant temperature was around 190, and the occurrences happened just past eight minutes of driving. I decided to let the vehicle sit overnight and then take it for a test drive.
During the first 10 minutes of this test drive I monitored things very closely so I would be at the ready to record a movie. A movie will record multiple frames of most of the parameters before and after the time the record button is pushed. It will give us more evidence than just the freeze frames.
Days later -- after several test drives -- I finally got lucky and the check engine light illuminated on this test drive! For this diagnosis I decided to focus on just four of the parameters: short and long term fuel trims, and the front and rear oxygen sensors. As the drive trace starts out, everything looks normal. The short term fuel trim is showing a little on the rich side, but remember, this is from a cold start. The long term is nearing a perfect zero, the front O2 is oscillating as expected and the rear O2 is bias rich, everything appears normal. Then right around frame 1340 things begin to change.
There was a drop in the front O2 sensor voltage and instantaneously the short term fuel trim reacts by demanding more fuel! Could the OE Oxygen sensor be going to sleep for some reason? That was my first thought. But as we moved along the timeline a little further, I looked at how the rear O2 was reacting. Yes, it was reacting the same as the front, an excellent confirmation the sensors are just doing what they are made to do, sense oxygen in the exhaust stream. Also, there was a sudden and drastic change in the long term fuel trim. This radical change set off the P0171 code.