Reads like possible problem with the ECT(engine coolant temp) sensor.
This is a TWO WIRE sensor, used by the computer.
There is a ONE WIRE sender, used by the Dash board temp gauge
They look similar but are not the same.
A fuel injected engine can not use a Choke plate like a carb had for cold starts, there are no Jets to suck extra fuel from.
So all fuel injected engines use an ECT sensor, when you turn on the key the computer looks at the ECT sensor, and if it sees cold engine, it runs fuel injectors rich and raises the idle, just like a Choke plate did.
As ECT sensor warms up idle will drop and fuel will be leaned out.
Since you are getting "low engine temp" warning it could be the ECT sensor is no longer working or a wire is bad.
On the 2.3l the ECT sensor is on the drivers side of the block, towards the front, just under the intake, you can usually see it through drivers side front wheel well.
I assume the dash board temp gauge is showing normal warmed up engine temp after 5 to 8 minutes of driving, and heater is working OK, if not your thermostat may also need to be replaced.
If you get a new ECT sensor make sure it is the TWO WIRE sensor, auto part guys confuse the sensor and sender.
Also coolant WILL come out when changing sensor, so either drain it or be prepared.
If you want to test sensor then use a sewing needle and pierce one of the wires, use Volt meter set for DC volts.
Turn on key and ground black meter probe, touch Red meter probe to pin.
If it reads 4.7-5.3volts that is the "power wire", you want the other wire, remove pin and pierce the other wire.
If wire reads under 4volts that's the right wire
30degF should read about 4.0volts
50 degF 3.5volts
70 degF 3.0volts
200degF .5volts << correct operating temp of gasoline engine
Last edited by RonD; 12-17-2014 at 10:59 AM.