I have a 2008 Ford F150 with the 4.6 V8. It seems that when I am driving the temperature gauge will read cold but when it idles the gauge will return to the normal range. The weather gas been cold here so the heat will only be warm but when it idles it warms up. My past experience tells me that the thermostat is stuck open. Both radiator hoses get hot when the engine gets up to operating temperature and it has an ODB code saying that the engine is not getting warm within a certain time frame. I was going to start by replacing the thermostat but wasn’t sure if it might be something else. The truck has 156000 miles.
That’s the first thing replaced for that DTC.
Change the thermostat.
In 90% of cases on all vehicles a p0128 code is going to be a thermostat .
Thanks everyone. That was what my gut feeling was. That is where I will start and go from there.