Mike, I know there are several ways to set things up, and that’s part of what I love about ST, but I think we’re not quite talking about the same thing here. You’re talking routines and triggers, I’m talking modes (which are like filters for routines).
Imagine that I have 5 pistons that I want only to run if it’s dark outside. Without modes, I would need to program each piston to run only between [30 min before sunset] and [30 minutes after sunrise]. Also keep in mind that this range might appear multiple times within a piston. Let’s imagine this range appears 2 times in each of the 5 pistons, so it would appear a total of 10 times.
Now let’s say I change my mind about what constitutes “dark”, and want it to be 15 minutes before sunset and 15 minutes after sunrise. I would have to go to 10 different places and change the number (really 20 places because it appears twice each time).
Instead, I could have a single piston that sets night mode based on sunset and sunrise offsets. That’s literally all it does. Then, my other 5 pistons only need to reference night mode. If I want to change the parameters that define night mode, it’s in 1 place and I don’t need to go searching all my pistons for the 10 places it appears.
Am I over-thinking this? Maybe. I’m an engineer, that’s what I do. Having the same information appear several places is a recipe for inconsistency and is setting yourself up for “why the heck did my automation behave like that – that’s not what its supposed to do”.