1) Thermostat opening at too low a temperature.
2) Heater matrix furred up.
3) Gunge in pipes/hoses.
4) Operating levers/cables have come loose.
If the engine runs at the correct temperature I'd try flushing through the heater hoses and matrix to remove and build up of crud. This should improve the flow of hot water through the matrix.
If the engine runs cooler than it should, check that the cooling fan is not permanently on. If all ok with that then I'd suspect the thermostat. Replace it with a new one. If it's the type that is located behind the cambelt, consider replacing the cambelt and the water pump at the same time, to save doing all the work again when the cambelt is due, or the water pump starts leaking.
ChicksFan
December 2009