Our gas engineer is going to try and change the programmer first as a process of elimination, but we wondered if anyone has any ideas what it could be? Thanks in advance.
All the electrical controls on a heating system can be proven working/faulty without replacing them. Replacing things willy nilly is soon going to get expensive.
Assuming you have a Y plan heating system with a 3 port mid position valve, the valve does very little in HW only mode. It needs no power to provide only HW as the internal spring pulls the valve to HW only when no power is provided to the motor. The switch inside the valve actuator is not needed to fire the boiler and pump, the cylinder stat does this directly.
If the vibrating noise is coming from the programmer it is likely faulty. When did you last replace the batteries in it? They may have leaked all over the circuit board and ruined it.
You can bypass the programmer by:
Powering off the heating system at the mains isolator or fuse board.
Remove the programmer from the base, by loosening the securing screw on the top, and tilting the top of the programmer away from the wall then lift up and off. This will also allow you to access the batteries.
Remove the safety cover over the wiring by turning the screws 90°.
Mark the wire in terminal number 8 with tape or similar so you don't forget what wire goes where.
Put this wire into terminal 6 (along with any wires already in there).
Refit the safety cover and then power up the system with the programmer NOT fitted to the base.
If the hot water now comes on fine, you need a new programmer. If it still isn't working the fault is elsewhere.