We have moved at community.getvera.com

Author Topic: Plugin: AutoVirtualThermostat (AVT)  (Read 9124 times)

Offline derekkirsch

  • Newbie
  • *
  • Posts: 7
  • Karma: +0/-0
Re: Plugin: AutoVirtualThermostat (AVT)
« Reply #150 on: March 24, 2019, 02:00:45 am »
*************************************************** REACTOR LOGIC SUMMARY REPORT ***************************************************
   Version: 2.3 config 206 pluginDevice 90
Local time: 2019-03-24T01:57:44-0400, DST=1
House mode: 1
  Sun data:
  Geofence: not running
     Power: utility, battery level 92
====================================================================================================================================
TEMP SET: 8AM M-F (#118)
    Version 19012.1553407041 03/24/19 01:57:21
    Message/status: Not tripped
    Group #1 <grp169a4fd9166> false as of 03-22.13:02:34
        =f (comment) "MONDAY - FRIDAY AT 8:00AM: 66°F (HEAT) 73°F (COOL)" [false/false as of n/a/n/a; nil at n/a] <cond169a4fd9167>
        =f (weekday) { "id": "cond169a4fddb52", "type": "weekday", "value": "2,3,4,5,6", "operator": "" } [false/false as of 03-23.00:00:00/03-23.00:00:00; 7 => 1 at 00:00:00] <cond169a4fddb52>
        =f (interval) { "type": "interval", "mins": 0, "id": "cond169a4feaa49", "hours": 0, "days": 1, "basetime": "08,00" } [false/false as of 08:00:15/08:00:15; 1553274131 => 1553342400 at 08:00:00] <cond169a4feaa49>
        =T (housemode) in 1,2,3 [true/true as of 03-22.15:07:51/03-22.15:07:51; 1 at 03-22.15:07:51] <cond169a6cd4b99>
    Trip Actions
        Device 99 (THERMOSTAT) action urn:upnp-org:serviceId:TemperatureSetpoint1_Heat/SetCurrentSetpoint( NewCurrentSetpoint=66.0 )
        Device 99 (THERMOSTAT) action urn:upnp-org:serviceId:TemperatureSetpoint1_Cool/SetCurrentSetpoint( NewCurrentSetpoint=73.0 )
    Untrip Actions (none)
    Events
        03/23/19 18:44:47 start:
        03/24/19 01:57:20 configchange:

These were the parameters I had set for each time interval, but it was grabbing the value of the second action for both heat and cool.

Offline rigpapa

  • Beta Testers
  • Hero Member
  • *****
  • Posts: 1121
  • Karma: +187/-3
Re: Plugin: AutoVirtualThermostat (AVT)
« Reply #151 on: March 24, 2019, 10:33:18 am »
These were the parameters I had set for each time interval, but it was grabbing the value of the second action for both heat and cool.

OK. So far I'm not able to duplicate the behavior you are describing on the current AVT release (1.5 in the Vera app marketplace). Are you just looking at the setpoint temps on the UI (dashboard card in the Devices list)?

Let me have you do this:

1) Go to the Tools tab of the ReactorSensor and hit the "turn on debug" link.
2) Go back to the Status tab and hit the "Reset" button (not Restart).
3) Wait a moment, then hit the "Trip" button.
4) Wait a moment, then hit the "Reset" button again.
5) Go back to the Tools menu and create a Logic Summary; copy and paste it here.
6) Go into the Advanced tab, Variables subtab of the AVT device and look at SetpointHeating and SetpointCooling. I bet they have the correct values.

I just noticed that if I go into "Heat" (only) mode and hard-refresh my browser, UI7 royally screws up the thermostat display. I still can't duplicate your specific results, but my result is a different kind of broken, but broken nonetheless. if you are running different firmware from me (you appear to be on a Secure, which I don't have), that may explain your different results, as the UI for thermostats has had subtle shifts over time, some of which have broken UI elements and behaviors (reported, but no fix as yet).

The other thing that looks odd to me is that you are using an Interval condition for determining the time. It would be better to use a "Date/Time" condition with the "after" or "between" operators. If you use "between", make the period covered the full period between your time bands (e.g. between 0800 and 1600, between 1600 and 2200, and perhaps between 2200 and 0800 to cover the through-midnight period).
« Last Edit: March 24, 2019, 11:21:19 am by rigpapa »
Author of Reactor, DelayLight, SiteSensor, Rachio, Deus Ex Machina II, Intesis WMP Gateway, Auto Virtual Thermostat and VirtualSensor plugins. Vera Plus w/100+ Z-wave devices. Vera3, Lite. Hassio, Slapdash.

Offline derekkirsch

  • Newbie
  • *
  • Posts: 7
  • Karma: +0/-0
Re: Plugin: AutoVirtualThermostat (AVT)
« Reply #152 on: March 24, 2019, 07:17:29 pm »
*************************************************** REACTOR LOGIC SUMMARY REPORT ***************************************************
   Version: 2.3 config 206 pluginDevice 90
Local time: 2019-03-24T18:39:28-0400, DST=1
House mode: 1
  Sun data:
  Geofence: not running
     Power: utility, battery level 98
====================================================================================================================================
TEMP SET: 8AM M-F (#118)
    Version 19012.1553466936 03/24/19 18:35:36
    Message/status: Not tripped
    Group #1 <grp169a4fd9166> false as of 03-22.13:02:34
        =f (comment) "MONDAY - FRIDAY AT 8:00AM: 66°F (HEAT) 73°F (COOL)" [false/false as of n/a/n/a; nil at n/a] <cond169a4fd9167>
        =f (weekday) { "id": "cond169a4fddb52", "type": "weekday", "value": "2,3,4,5,6", "operator": "" } [false/false as of 03-23.00:00:00/03-23.00:00:00; 7 => 1 at 00:00:00] <cond169a4fddb52>
        =f (interval) { "type": "interval", "mins": 0, "id": "cond169a4feaa49", "hours": 0, "days": 1, "basetime": "08,00" } [false/false as of 08:00:15/08:00:15; 1553342400 => 1553428800 at 08:00:00] <cond169a4feaa49>
        =T (housemode) in 1,2,3 [true/true as of 03-22.15:07:51/03-22.15:07:51; 1 at 03-22.15:07:51] <cond169a6cd4b99>
    Trip Actions
        Device 99 (THERMOSTAT) action urn:upnp-org:serviceId:TemperatureSetpoint1_Heat/SetCurrentSetpoint( NewCurrentSetpoint=66.0 )
        Device 99 (THERMOSTAT) action urn:upnp-org:serviceId:TemperatureSetpoint1_Cool/SetCurrentSetpoint( NewCurrentSetpoint=73.0 )
    Untrip Actions (none)
    Events
        03/24/19 18:28:00 start:
        03/24/19 18:35:36 configchange:
        03/24/19 18:36:53 action: action=Reset
        03/24/19 18:36:53 sensorstate: state=false
        03/24/19 18:37:25 action: action=Trip
        03/24/19 18:37:25 sensorstate: state=true
        03/24/19 18:37:25 startscene: scene=__trip118, sceneName=__trip118
        03/24/19 18:37:25 runscene: scene=__trip118, sceneName=__trip118, notice=Starting scene group 1
        03/24/19 18:37:25 endscene: scene=__trip118, sceneName=__trip118
        03/24/19 18:37:29 action: action=Reset
        03/24/19 18:37:29 sensorstate: state=false


*************************************************** REACTOR LOGIC SUMMARY REPORT ***************************************************
   Version: 2.3 config 206 pluginDevice 90
Local time: 2019-03-24T19:04:58-0400, DST=1
House mode: 1
  Sun data:
  Geofence: not running
     Power: utility, battery level 98
====================================================================================================================================
TEMP SET: 4AM DAILY (#119)
    Version 19012.1553468468 03/24/19 19:01:08
    Message/status: Not tripped
    Group #1 <grp169a626d1c2> false as of 04:00:15
        =f (comment) "EVERY DAY AT 4:00 AM: 71.5°F (HEAT) / 69°F (COOL)" [false/false as of n/a/n/a; nil at n/a] <cond169a63ab3b9>
        =T (weekday) { "id": "cond169a626d1c3", "type": "weekday", "value": "1,2,3,4,5,6,7", "operator": "" } [true/true as of 03-22.12:10:43/03-22.12:10:43; 7 => 1 at 00:00:00] <cond169a626d1c3>
        =f (interval) { "type": "interval", "mins": 0, "id": "cond169a629e10f", "hours": 0, "days": 1, "basetime": "04,00" } [false/false as of 04:00:15/04:00:15; 1553331600 => 1553414400 at 04:00:00] <cond169a629e10f>
        =T (housemode) in 1,2,3 [true/true as of 03-22.15:08:19/03-22.15:08:19; 1 at 03-22.15:08:19] <cond169a6cdbac8>
    Trip Actions
        Device 99 (THERMOSTAT) action urn:upnp-org:serviceId:TemperatureSetpoint1_Heat/SetCurrentSetpoint( NewCurrentSetpoint=71.5 )
        Device 99 (THERMOSTAT) action urn:upnp-org:serviceId:TemperatureSetpoint1_Cool/SetCurrentSetpoint( NewCurrentSetpoint=69.0 )
    Untrip Actions (none)
    Events
        03/24/19 18:28:00 start:
        03/24/19 18:53:32 action: action=Reset
        03/24/19 18:53:32 sensorstate: state=false
        03/24/19 18:53:34 action: action=Trip
        03/24/19 18:53:34 sensorstate: state=true
        03/24/19 18:53:34 startscene: scene=__trip119, sceneName=__trip119
        03/24/19 18:53:34 runscene: scene=__trip119, sceneName=__trip119, notice=Starting scene group 1
        03/24/19 18:53:34 endscene: scene=__trip119, sceneName=__trip119
        03/24/19 18:53:36 action: action=Reset
        03/24/19 18:53:36 sensorstate: state=false

I don't know what changes running the debug option, but after following your steps this executed properly. Both the UI of AVP and the variables updated to 68 for heating, 73 for cooling.

Since I was thinking I am crazy, I double checked the other schedules. The exact same set up (interval is now 4AM). The first trip action is set heat to 71.5, set cool to 69.0. When I tripped the sensor set both heat and cool to 69.0 in UI and in the variables tab.

If I go back and trip the 8AM Mon-Fri, it again executes correctly. I've restarted the plugin, tried everything to my little knowledge of this stuff but I cannot get both set points to update. I'm stumped.

Also, my reasoning for choosing the interval condition was to have the ability to adjust the thermostat manually without disabling the "program." I plan to mount a cheap tablet on the wall where the Zipato was to have the Vera or Imperi app running. This way someone can easily turn up the heat (or cooling) in between the interval.


Offline rigpapa

  • Beta Testers
  • Hero Member
  • *****
  • Posts: 1121
  • Karma: +187/-3
Re: Plugin: AutoVirtualThermostat (AVT)
« Reply #153 on: March 24, 2019, 08:05:01 pm »
Also, my reasoning for choosing the interval condition was to have the ability to adjust the thermostat manually without disabling the "program." I plan to mount a cheap tablet on the wall where the Zipato was to have the Vera or Imperi app running. This way someone can easily turn up the heat (or cooling) in between the interval.

It's a pretty common misunderstanding of the way Reactor operates (probably the most common, I think) to think that a "between" (or "after") time schedule will make the task fire repeatedly or continuously. It does not. The condition being met only triggers the action once. It can't be "more between" or "more after". It's a boolean state, it is or it isn't, so once the condition is met and the actions are run, they are not run again (without manual intervention) until the condition first resets and is then triggered again.

You cannot set the cooling setpoint below the heating setpoint. That does not make sense. If that were possible, your heater being on would trigger cooling. Your second sensor attempts to set the heating setpoint to 71.5, and then the cooling setpoint to 69. You are asking it to heat your house to 71.5 but keep it down to 69. Can't do that. The heating setpoint must always be below the cooling setpoint. By setting the cooling setpoint to 69 when heating is at 71.5, AVT is reducing the heatpoint to 69 as well (so with other parameters default, it will call for heat at 68 and cooling at 70--there's a one degree deadband).

Heating setpoint = the temperature below which heating will be run (goal: bring the temperature up to that point).
Cooling setpoint = the temperature above which cooling will be run (goal: bring the temperature down to that point).
Between heating and cooling setpoints, nothing happens.
« Last Edit: March 24, 2019, 08:10:38 pm by rigpapa »
Author of Reactor, DelayLight, SiteSensor, Rachio, Deus Ex Machina II, Intesis WMP Gateway, Auto Virtual Thermostat and VirtualSensor plugins. Vera Plus w/100+ Z-wave devices. Vera3, Lite. Hassio, Slapdash.

Offline derekkirsch

  • Newbie
  • *
  • Posts: 7
  • Karma: +0/-0
Re: Plugin: AutoVirtualThermostat (AVT)
« Reply #154 on: March 24, 2019, 09:13:49 pm »
That too was my understanding of how the Reactor operates. I will switch my conditions from interval to between.

And wow, I can't believe that is the reason I thought there was an error.. I understand in the physical sense why you couldn't have a cooling set point lower than a heating. Which is why I was preferring the method of Heat Only or Cool Only versus an Auto Mode. I see now that when you switch to Auto it uses the same set point values, so yes, that built in logic makes complete sense.

I apologize for taking up your time.

Offline rigpapa

  • Beta Testers
  • Hero Member
  • *****
  • Posts: 1121
  • Karma: +187/-3
Re: Plugin: AutoVirtualThermostat (AVT)
« Reply #155 on: March 24, 2019, 09:51:12 pm »
It's no problem, I'm happy to do it. Sometimes it takes a bit of back and forth to get to the "ah ha" moment. Thanks for sticking with it and posting the summaries.
Author of Reactor, DelayLight, SiteSensor, Rachio, Deus Ex Machina II, Intesis WMP Gateway, Auto Virtual Thermostat and VirtualSensor plugins. Vera Plus w/100+ Z-wave devices. Vera3, Lite. Hassio, Slapdash.