It might be broken
I just had this problem on my 2005 Impala. My fix was a new thermostat. I also had the symptom of the engine temp swinging from hot to cold.
Could be a number of reasons for this condition. I would check the coolant level. A low coolant level could cause your heater to blow cold air when the engine is warm. Is the engine warm? If the engine is fluctuating temp it could be a faulty thermostat. Hope this helps.
If it still blows cold when it is at running temp, check the engine thermostat, its probably stuck in the open position.
My blower would blow cold air at idle & engine would start to overheat, I replaced my thermostat & problem solved.
it should start at cold
It could be caused by many reasons. First you have to see if the coolantlevel is full, and then when the engine reaches operating temp, is the coolant hot or cold.
Max Temp went out of business
could be low on coolant
Temp blend door malfunction.
Temp blend door actuator is bad on the passenger side assuming you want both sides to blow cold air.
Has the engine coolant temp sensor ever been changed.
The temp sending unit on the engine could be unplugged or faulty.