Cavalier 98 fast idle when cold

Hi,
I have a little annoying problem with a Cavalier 98 2.2L. When the temperature is very cold (let say below -20C) it stays on fast idle + - 1000RPM all the time. Usually the idle gradually goes down to + - 600RPM as
the engine warms up. If I turn off/on engine after it has reached it temperature it idle normally at 600RPM.
Back to the first years with the car, the idle was reaching 1500RPM for 1-2 seconds when turned on, 1000RPM until warms up and then 600RPM. One thing I noticed is now it only reach 1000RPM when turned on and then 600RPM at normal temperature except during very cold days obviously.
Cooling sensor has been changed but no difference. I suspect the problem to be at the ECM level. Any other idea?
EGA
Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
RPM is determined by engine temperature. If the engine temperature stays cold the rpm will stay high. It is cold outside so it takes longer to warm up. If the thermostat isn't working correctly it could take longer to warm up or may never warm up enough. The heater on full will also cause it to take longer to warm up. Change the thermostat and if that doesn't work try blocking part of the radiator. You may not be driving far enough or fast enough to ward the engine.....

Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
The car reach normal temperature (90C) even during very cold days. The thermostat has been replaced 1 1/2 year ago and the problem was occuring before that. I usually drive about 35KM to work every day and sometime the car is still ideling at ~1000rpm after a 1h30 drive in heavy traffic. When I said "all the time" I really meant it.
If I turn off/on after reaching (90C) then it goes back to normal ~600rpm. This combined with the fact it no longer reach ~1500rpm for few sec when first turn on make me believe something is really not working properly.

Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload
You need an OBD2 tester to analyze the rest of the sensors. Could be vacuum leak or many other conditions.

Add pictures here
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Add image file
Upload

Motorsforum.com is a website by car enthusiasts for car enthusiasts. It is not affiliated with any of the car or spare part manufacturers or car dealers discussed here. All logos and trade names are the property of their respective owners.