[Released] Button Controller 3.0


Button Controller 3.0

Following on the heels of Rule 3.0 is Button Controller 3.0. For some time Button Controller has been a code offshoot of Rule. So with the new UI features and Actions capabilities of Rule 3.0, Button Controller now follows suit with a completely new UI. This release will mark the end of development of Button Controller 1.6. Existing Button Controller instances of earlier releases will still function as before; new instances will be Button Controller 3.0.

The main page of the new Button Controller allows selection of the button device, and then choices from the available button-number / button-action combinations. Each of these offers an Action section. Only those button-number / button-action combinations that are available for the device are offered, and only one action section is available for each combination. Here is a screenshot of an example:

Any subset of all button-action combinations can be selected in any order, and Action sections can be deleted. As with Rule 3.0, logging of button actions is available to see what's going on.

Each button-action combination Action section presents the same UI as Rule 3.0 for defining actions. Just as with Rule 3.0, a script of actions is created, and will execute in the defined order when the button is pushed.

The two main differences between Button Controller 3.0 actions and Rule 3.0 actions are,

(1) Button Controller does not have conditional actions, and
(2) It does not support Global Variables.

Otherwise, the available actions mirror those available in Rule 3.0.

As with Rule 3.0, delays are available for every action, and Delay Actions is available as well. Since there are no conditions, there is no "cancel on truth change". Repeat actions is also available, but for similar reasons the only form available is to Repeat N Times. Without conditions, there would be no way to stop any other form of repetition.

Button Controllers issue
Hub Update 2.1.0

Is there a way to force a color and level on toggles?


No, there is no Toggle Color action. Do you need one?


It would be a really nice to have. Having the toggle going to the last color is not always desired.


This might just be my ocd...but could there be a way to reorder the buttons? I like to have mine in order by button 1, 2, 3, etc. I think a really great feature would be to auto sort (1 - pushed, 1 - held, 1 - released, 2 - pushed, 2 - held, 2 - released, etc.) For someone using a Lutron switch, it makes it really easy to see what buttons are controlling what from top to bottom.

My only option at this point is to re-add the entire button controller (or delete from the bottom until I reach the button I need), which really isn't efficient.

Thanks and I really like the simplicity of the new UI!


Suppose someone puts them in using a specific and preferred order. In that case, sorting them blows that person out of the water. You are able to put them in with the exact order you want.

One thing to be aware of: You can create all of the place holders for actions before defining any actions. Then, having done that, you can go back and define the actions for each button.


Sorry, that was really two requests...

1: The ability to sort in general.
2: Auto-sort (which I understand could be difficult for a certain order.)

I really think having the ability to order them is ideal. Especially now that I have used it a little more, I have found that it once you get a certain number of items, it starts randomly adding the buttons in-between existing buttons.



This is a bug that was discovered some time ago, and has been fixed in the most recent release. Sorting these button action inputs is not possible. You are in control of the ordering, they are not be re-ordered.


I was editing a 3.0 button rule and I believe I unchecked the device. I probably should have used the Delete Actions dropdown but I have been able to uncheck things in RM. When I clicked done I got an "Unexpected Error" page. The child app is no longer available, I just get the Unexpected error page. I tried restoring a backup from last night but it did not remove the child app. I have disabled the rule for now but I would like to get rid of it.


Simply open the App Status page for the rule (gear icon), and you can remove it from there.


Thanks. I just didn't scroll down far enough.


I completely understand your answer, but I don't know today what I'm going to want to change a month from now. Or as I found out today, even a few hours from now :stuck_out_tongue_winking_eye: This means that later revisions require rebuilding everything below the thing you'd like to position.

Not a huge priority, but the ability to later add or change a button and then move it to where the grouping makes sense would be great. Likewise a manual choice to order by, not enforced but selectable as desired, would be nice.


This feature is now available in Button Controller 3.0 with release 2.1.1.


So the first time I used it, I realized that I had skipped over the 2nd button on the 5-button remote. I had to remove every single button, its definition, what it does, what it activates... everything... simply have button 2 be the second in the list. That was 20-25 minutes of manual re-entry to delete and recreate all buttons below #1. It's not like mapping a button to a scene is 2 or 3 clicks... it's a few dozen clicks, each of which has to wait for the new set of values to load.

You seem to be making my own point for me. Today I want button 2 in the rule machine. Next week I want it to be a button control... but now the buttons on my remote are out of order.

So what you are saying here is that we must get the button layout right the first time we do it... and we must guess what we want not just now, but forever in the future... or face manually deleting and recreating items just to get the order we want.


I found it was easier to manually create all the buttons first before I added the actions for each button. How about an auto create all the buttons, fill in later. A selector for including held would also be needed.


What do you mean by "out of order"? You mean the displayed order in the app? Is that what you're concerned about?


This was how the previous UI worked. You selected which action besides Pushed you would use, and then it created all of the possible inputs. I'll look into this...


OK, you talked me into it. For next release, see these two screenshots:


This will be added in the next release. You get one shot at it at the beginning. See below:


Thanks! This will save sooo much time in my life. :wink: As I was pre-creating my buttons for a 4 button device I was thinking "there has got to be a better way, this is so boring".
So what's wrong with my life????