Cloning Button Controller-5.0

Just to clarify, now that Rule Machine-5.0 does not have a Button Device as an Event Trigger and we are to instead use Button Controller-5.0, that seems to have taken away the ability to clone these as well?

Also, these changes are all very confusing to me, I am not sure why there is Rule Machine-5.0, Button Controller-5.0, Simple Automation Rules, and Basic Rules. Are the differences between these laid out somewhere?

For now, yes. These are more complex due to grandchild apps. We plan to bring back cloning in 2.2.9.

2 Likes

There is a lot of history involved. One thing to bear in mind that we don't retire apps because there are untold numbers of hubs using older apps. Those have to go on working, and be editable.

Rule Machine has gone through 6 iterations since Hubitat Elevation launched. Each iteration has had two things in common: a lot of new features have been added, sometimes as a new app structure, and the new version was not backwards compatible for some reason with the prior version. For example, Rule-4.0 introduced Wait for Condition. Rule-4.1 improved that feature to be Wait for Conditions. By its very nature this was not backwards compatible with a single Condition. So we had to choose between (a) blow out every existing rule that had Wait for Condition (not good), (b) introduce two actions, Wait for Condition and Wait for Conditions (not good due to extreme confusion it would cause, and then because of backwards compatibility going forward to be stuck with that, or (c) introduce Rule-4.1. We chose (c) for what I think are clear reasons.

Rule 5.0 is another iteration of Rule that is not backwards compatible. We wanted to get away from Global Variables due to poor performance of them (Rule-4.1 has Global Variables defined in the parent app, now called Rule Machine Legacy). We also wanted to move out Button Device. Both of these together offered the opportunity to remove a lot of complexity from Rule itself (over 1500 lines of code worth of complexity). This was a good thing to do to continue to move forward and not drag the past into the future. By doing this, we were also able to move Button Controller forward so that Button Rule 5.0 shares the same code base as Rule 5.0, and another 2000 lines of code is retired.

Simple Automation Rules was introduced when the hub was first launched, and it was pretty much a UI knockoff of a SmartThings app called Smart Lighting. We did this because it is much simpler to use and understand than Rule Machine, and most of our initial customers (and many still) came from SmartThings. It's still available, although it has added a number of additional features, and had its UI revamped. It's on its third iteration.

Basic Rules was added just a couple of releases ago. Many of our new customers have no background whatsoever in home automation. We felt that a simple way to create automations based on 'When X Happens Do Y' would make sense for new users (the feedback is that this is true).

So there are multiple ways to create automations on Hubitat Elevation. There are a wide variety of users and skill levels, even how people think. So, ultimately, choice is good.

As for laying out the differences between all of these various apps (toss in Motion Lighting and Mode Lighting), we haven't seen a particular reason to create a comparison guide. Each app is documented. I think the best way to figure out if an app works for you is to try it out. For me, if I can do something in Basic Rule, I will. If not, and I can do it with Simple Automation Rules, I will. If it involves motion activated lighting I'll try to use Motion Lighting (have 24 of those). If not, I'll use the latest version of Rule Machine. I only have fairly simple rules, fairly simple automations, for the most part. Some users have very complex automations that run dozens of actions in Rule. Choice is good.

7 Likes