When the computer senses something wrong it often can sub previous values "known to run right' to get car to run better when the CEL is triggered. Problem being the car may run until a certain period of time rolls over to then turn light back out if car runs better, then it has tto go through whatever software count is needed for the error to happen again (20X, 50X?) to again turn the light back on. No way of knowing what the software count is on any given thing as it is buried in the software and they change it all the time.
The CEL only comes on if that count has been hit, if not other things can be wrong but no codes logged yet as they have to hit their own counts. Hitting 'count' is what turns a soft fault into a hard one. Before that happens you have to read livedata to pick up on things going wrong that have not hit count yet.
NOW, take all that rigamarole and add it to a slight problem that shows up every now and then and you know why you need the witchdoctor.
The CEL only comes on if that count has been hit, if not other things can be wrong but no codes logged yet as they have to hit their own counts. Hitting 'count' is what turns a soft fault into a hard one. Before that happens you have to read livedata to pick up on things going wrong that have not hit count yet.
NOW, take all that rigamarole and add it to a slight problem that shows up every now and then and you know why you need the witchdoctor.