Ask our auto mechanics for help to all your Ford truck questions now.
not getting enough heat at idle is usually a sign of low coolant in the cooling system or a heater core that is starting to get plugged up. At idle, you engine is turning at low rpms. That means the water pump will turn slower. When you start to drive the rpms go up and the water pump spins faster circulating more coolant.
If your cooling system is full inside and your truck doesn't overheat, your heater core may be getting plugged up. If you could back flush just the heater core, you could extend it's life. Afterwards, If it does get better, then flush the rest of the cooling system because there is probably debris floating around. I have been somewhat successful isolating the heater core by the hoses that go to the heater core and back flushing it using a flushing machine that puts pressure and filters the coolant that circulates through the machine. You just find out which hose is the return line from the heater core and hook the pressure side from the machine and you hook the other hose from the machine to the other side of the heater core and let the machine do it's thing. When the heater isn't putting out much heat but the engine temperature is at normal operating temperature, feel the two heater hoses going into the heater core. The hotter hose will be the inlet side and the cooler hose will be the return line that goes back to the engine.