Thermostat Temperature below Setpoint

I have a zwave thermostat and I can see the setpoint value and temperature value in vera. However, there seems no event “if temperature falls below setpoint” that I would need for a scene to trigger the boiler switch (the switch is another z-wave device). The thermostat has events for “if temperature above…” or “if setpoint above…” but no condition that considers setpoint AND temperature (seems basic to me for a thermostat). Am I missing something?

If an event I need for scripting a scene is not available in the event list, how can I create my own? Do I need to create a periodic timer and then add code via Luup Event? That would work but the system would then do periodic checks rather then acting upon the event.

Hi @utz,

It looks like events can’t work across two services, so the simple comparison “temperature of sensor” < “setpoint of heating-setpoint” can’t be expressed as a single event, because the temperature sensor and the heating setpoint are two different services on the same HVAC device.

You might have some luck watching the “Setpoint Achieved” variable on the setpoint service. The uPnP spec says that this should become false if the temperature goes outside of the setpoint’s range. Unfortunately there doesn’t appear to be a UI-visible way of reaching the Setpoint Achieved variable, so this will need either hacking of the D_HVAC_ZoneThermostat1.json file or monitoring the value from a different plugin.

Otherwise, a periodic polling of both variables from Lua will work, just as you suggest.

Well i got the same question/problem.
I cant figure out how to let my Vera check the current heat setpoint and compare it to the current ambient temperature. And if needed turn on the “binary switch”(horstmann hrt4)

Besides the initial poster im probably not the only one.

Me too - this seems like a basic requirement for a thermostat!