I created a blueprint, which I use for all of my HVACs. The blueprint is quite complex and controls the HVACs depending on window sensor / day / night / presence depending if a presence sensor is given / away (noone is home) or holiday mode (noone is home for a longer period of time). Currently I use 9 different triggers to accomplish this.
Now I want to add the functionality for adding a temperature sensor and adjusting the HVACs temperature offset. This is currently outsourced in another automation, but for the sake of maintainability it would make sense to add this to the blueprint as well. Unfortunately the automations need different modes - my general thermostat automation runs in mode single, but the automation for temperature calibration needs to be run in mode queued.
As far as I researched it is not possible to create multiple automations within one blueprint. Does someone has an idea how to tackle this problem?
I can add the code for my blueprint and the automation for temperature calibration when needed, but these are alltogether ~400 lines of code. As said already, the blueprint is pretty complex using 9 different triggers for different scenarios.
More complex generally does not mean more maintainable. Quite the opposite I would guess because how do you know when one function’s timing it affecting another functions timing?
Also think of how could the logic possibly work to have operations queued AND single mode. One or the other for sure.
That is the problem… It would be great if one blueprint could support multiple automations. Thus one could split the triggers. But it does not make sense for me to create 3 blueprints only for my hvacs. Then I need to create and maintain these for every room. And why should I have one blueprint for controlling my HVAC and another just for adjusting the temp? That seems not right.
Your best bet if going that route is run it queued. Queued is essentially single, just that instead of kicking errors for repeated requests, it stacks the requests and they are run one at a time.
Probably as close as you are going to get.