Several years ago, I had a P0171 trouble code on my Lexus. Unfortunately, at the time, I did not know much about cars and I was fooled into paying for a 3 hour labor job. For those who don't know, P0171 generally means there is an issue with the Mass Air Flow Sensor. They ended up running a myriad of tests indirectly on the sensor to locate the problem - which just turned out to be a dead sensor. Running a gambit by the book is what they did, and this is exactly what should not have been done by an experience service technician group. Checking the MAF should've been the first thing for P0171, and it would have taken an hour tops to remove the sensor, check the diode, clean it, and run it to see if that fixes it.
more