Anyways. I was throwing a code 9 for the longest time and could never figure out why. Timing was correct. It would just randomly throw a code 9 , if i even turned my lights on it would throw the code lol. Well my iacv was bad so I change it out for a good one, I no longer get the code 9.. I think when the idle is low or if it dips suddenly the ecu thinks the timing is off. That's the only thing I can come up with lol. Idk if this is new info or just new to me but I figured it may help or solve someone's problem down the road..