Hey Guys-
Thanks to everyone for chiming in. I didn’t share the details of my programming primarily because I can’t even fully characterize the bugs I’m seeing. It just seems to be that whenever I look at the state of my hub and my connected devices, I can’t figure out how, given the rules that I’ve programmed, it ended up in that state. That and just… sh*t happens randomly. Things will turn on when I’m not expecting them and turn off when I’m not expecting it.
So, my first issue is that nearly all of my programming is in SmartRules. I did this because the omission of a rules engine in favor of “smartapps” and “routines” is baffling to me.
At a basic pseudo code level I have 2 rules per room, one for the “default” state, usually a scene with one dimmed light, and one for the “occupied state”, which turns all lights up. When motion is detected the occupied rule fires, and when no motion is detected for a period of time the default rule resets the room. I’m using smartrules “stays that way” for the timeout to reset to default, so basically “if motion ends and stays that way for 10m…” then.
I control the entire house using modes and a series of rules based on sensor data and presence to turn the house to one of 4 modes: on, off, away, vacation.
This all used to work reasonably well, not perfectly but in a way that I could live with it. ST would miss a trigger occasionally (I could see the motion detect light flash for example but my light would never come on), but generally everything worked well enough. It still does… sometimes, but in the last 4 days, especially in the evenings my rules seem to not be firing as expected. I’m starting to think most of my trouble is with the “stays that way” programming. I’ve seen instances where these rules seem never to have run, and I’ve also seen instances where they seem to have run before their scheduled time. I haven’t spent enough time debugging to say for sure, though I guess that’s my next move. If I stick with ST that is. I’m not sure its worth it.
Perhaps its unfair to blame ST for what turns out to be a smartrules issue, but at this point I don’t care who’s fault it is. If I have to throw both out and move to a platform with a better rules engine and a reliable local event processor, I’d rather do that than live with the chaos of a system that only sometimes works.
And that brings me back to my original post about the hopelessness of this platform. I’ve spent the last 20 some years in startup software shops, and the sense I get about ST is that their core event processing model is shaky at best. They’ve layered a lot of bells, whistles, promises, marketing, and truly nice, helpful support people onto that, but none of that is going to fix the fact that the core of the product doesn’t quite work.
Hmm… seems I have to go shut my kitchen lights off by hand.