Been using the Thermostat Controller for some time now and recently migrated to ver 2.0.
My use case, I have disparate temperature sensors deployed across my home on each room.
So depending on the time of day and other variants, I have grouped those temperature sensors and then use @bravenel app "Average Temperature" in combination with a rule to append that averaged result to a global variable. That global variable has a virtual sensor temp driver connector counterpart which then finally I use as my temp sensor for the Thermostat Controller app.
What I have accomplished with this, much like common comercial thermostat (Ecobee), now I am able to isolate temp sensor individually, so in a matter of speaking, AC zones based on only sensor that I desire during that scenario. For example, during my night mode, I would swap the grouping of averaged sensor to pass only the sensors in my master room.
Effectively, I have turned my dumb thermostat into a "smart" one.
The problem I have with this current design is that the way that Bruce's "Average Temperature" app works, I have to provision several child processes to fit my various scenarios and then this "Average Temperature" app would be triggering the average process depending on any of the grouped sensor changed status.
Then all those child processes would be looping in the background for all the App child regardless of if I need them or not.
As you could expect, the frequency of looping updates of each APP child iteration and the time spent processing the rule for the dynamic placement can become unruly, it will take a toll on my general hub utilization and affect my performance responsiveness.
What I propose is to incorporate this feature into the Thermostat Controller as averaging is already baked in, but unalterable unless you interact with the HUB gui and change it manually.
Ideas that I think it would be the most effective:
-Update RuleMachine, and introduce a new rule that would allow to swap/change/alter the sensors for the Thermostat Controller.
-Modify Thermostat Controller code and implement something similar to rules, where if an expression is met, dynamically change the sensor grouping.
-Or... please, please, introduce a RuleMachine action where you can select a group of sensors and perform math operations or even a dedicated routine to average a group of sensors.
RuleMachine in its current state can't do math in significant way, unless you dedicate a variable and do the current variable math action, which has been proven to be either too limited or would require countless of line of code to accomplish any math operation.
To briefly overview the design I currently use:
-This is Bruce's APP child processes (Notice that I have reduced to only 5 to be able to maintain adequate performance):
-Global Variable that serves as placeholder for the dynamic grouping:
-RuleMachine that swaps sensor grouping averages value towards the sensor place holder for the controller:
-Finally, the controller:
Thanks for your time and effort.