Not knowing what year, make and model you have, I would suspect the heater fan switch and or electrical plug to the switch is at fault.
Replace your heater selector switch
Cycles it on and off based on attached thermometer setting
Sounds very much like the speed switch may be faulty, or the ocntacts need cleaning.
sounds like the resistor board has blown, on the highest setting it has no resistors, hence the reason it still works
2001 dodge ram 1500 ac and heater flow regulator switch does not work. works only on defrost. How to fix?
Normally when a heater blower motor only works on the High setting, it is caused by a defective Blower Motor Resistor Pack. The fix is to, Replace it. In very rare instances it can also be a defective blower motor speed control switch, but rarely.
Your heater switch may not need to be replaced. The heater high position is controlled by a fuse under the hood. Until you find the fuse and replace it, your new switch will not work. JRR.
Have you turned the control from Pilot to On? Have you increased the temperature setting?
You may have a faulty switch that controls the speeds on the a/c blower fan.
If the heater fan on your 1991 Caprice only works on "High" the problem is more than likely the resister assembly in your blower circuit or poor connections at the resister assembly. When the switch is in the "high" position the current does not flow through the resister assembly it flows directly to the coil of the blower relay. When the switch is in "low", "medium 1", or "medium 2" position the current flows through 1, 2, or all 3 of the resistors in the resistor assembly which results in the 3 different lower speeds. Check the resister assembly and replace if needed.
probably the heater core is plugged