boiler room schedule ends not triggering condition

hi,
I’m working on a simple (will get more complex once I understand the basics) boiler control that has three primary triggers

  1. hot water +1hr virtual switch t_Lg_Br_HW_1hr
  2. schedule to turn boiler on for 30 minutes every morning as long as you are home s_Lg_Br_HW and t_Away
  3. manually press the boiler momentary switch t_Lg_Br_HW
    with the premiss that if any of the on conditions are triggered the timer s_Lg_Br_HW_Timer starts (with either 30 minutes or 1 hour based on the c_Lg_Br_HW_Timer value) and the boiler is turned on. If any of the off conditions are met the boiler is turned off.

I have the +1 virtual switch working to turn the boiler on start the timer with a duration of 1 hour and you can turn off the boiler by turning off the +1hr virtual switch and the manual momentary switch seems to work. The schedule also starts the boiler timer and kicks off the timer with a duration of 30 minues (I assume 30 minutes because the status report shows the predefined off time of the schedule, not the one declared in the c_Lg_Br_HW_on action ‘timerName=s_Lg_Br_HW_Timer intervalTime={(c_Lg_Br_HW_Timer)}’ ) and turns the boiler on, but the schedule s_Lg_Br_HW_Timer does not trigger c_Lg_Br_HW_off when it ends.
Status attached for reference
Obviously it’s something I don’t understand as I’ve been wracking by brains over this all weekend.
Any ideas?
Cheers

The off condition does not fire, because the condition is already true.
Actions only fire when a condition transitions from false to true.
If you want the action to fire every time the condition evaluates to true (even if it was previously true) then you need to set the Repeat flag.

I already tried that but when i turn on hot water +1hr virtual switch t_Lg_Br_HW_1hr it appears to turn the boiler on then immediately turn the boiler off guessing because t_Lg_Br_HW is not true during the cycle of execution

You need to have two OFF conditions.

!s_Lg_Br_HW_Timer is almost always true … unless the timer is running.
Any other input in this condition will cause the condition to fire actions.

c_Lg_Br_HW_off !s_Lg_Br_HW_Timer
c_Lg_Br_HW_off2 !t_Lg_Br_HW_1hr or !t_Lg_Br_HW t

Let no one say You’re not the man!
Thanks Richard, I’ve got full manual and automatic control of hot water as I wanted. Now to integrate it into the master PLEG and roll it out onto the other zones
Cheers