Why does my 2004 Honda Civic heater blow cold air when the speed is under 30 mph, or when idling?
Have you checked the coolant level in the radiator ?
Weak water pump ?
That can be caused by air trapped in the cooling system.
When the engine is cold, remove the radiator cap and open the coolant system bleeder screw.
Add a 50/50 mixture of coolant to the radiator until coolant comes out the bleeder screw.
Close the bleeder screw, install the radiator cap and take the vehicle for a drive to see if the heater works properly.