Have you looked at the IAC? (Idle air control valve)