So, I have the 04' with the I6. I bought it new in 03. Always been pretty darn reliable. My check engine light was on for a while and when I went for a code check it hit on 3 codes. This was checked at Advance and Oreillys. One code refers to the engine coolant temp being too low. The other two codes reference the engine fan RPM being too high. When the engine light first came on it was no issue. I was pretty sure it was the thermostat since it didn't warm up as much as it had done in the past. The cruise still worked then. It was a bit later, like a few months that the cruise stopped. It didn't work for a few days, then started working, then after a few weeks it stopped again and hasn't consistently worked since. Now, it'll work if I disconnect the battery for a while. When I reconnect it'll function as usual for a little while. Once it worked for 2 days, then this past weekend it worked for just 20 minutes. This past weekend I replaced the thermostat and the engine temp sensor. I reconnected the batt. and went for a drive. Cruise worked, no engine light, temp was warmer, right on the midline. Going down the interstate, the cruise just kicked off and wouldn't come on again. The next day the engine light came back on and hasn't gone out since. I am planning to go back and get the code scanned again to see what is hitting now. The codes that referenced engine fan being too high before mentioned the engine fan clutch and the engine fan relay. Well, I swapped the relay with another one a few weeks ago. Its still running in that configuration but made no difference in the results. So its apparently not a relay. The clutch seems ok. It comes on when the engine is hot at a stop light, and by third gear it cuts off. Feeling the fan, it has good resistance, but not locked down and not freewheeling. I'm not sure what else could be causing the engine light, but it seems to ALSO be disabling my cruise. Anyone ran into this issue yet?