Lutron Pico Remote to control Room Shades

Looking for some guidance, especially with the Button Controller app. I have a set of Smartwings Shades I setup in a room. I also managed to expose the SetLevel command in the driver so that the shades can open and close in as a grouped dimmer allowing control via Google Home. However I also have a 5 button Pico Remote I'd like to configure to be able to control all the blinds in the room in individually and as a set. I think the plan is to set the buttons to be able to start open or start close (buttons 1 and 5), cycle through which shades to control whether its all or individually (buttons 2 and 4), and pause open or close (button 3).

Not quite sure how to approach it in the button controller or if there's some other way I'm missing.

Here's the setup I was envisioning:

  1. Button one press -> Start position change open
  2. Button two press -> Cycle a identifier variable up (+1) that identifies which shade or whether its all shades to control. ID: 0 = All shades, ID: 1 = Shade 1, ID: 2 = Shade 2...If ID > 2 then Set identifier to 0. Also when the the button is pressed, toggle the shade or shade set to jog up and down a little to tell you which one the controller is currently set to.
  3. Button three press -> Stop position change
  4. Button four press -> Cycle a identifier variable up (-1) that identifies which shade or whether its all shades to control. ID: 0 = All shades, ID: 1 = Shade 1, ID: 2 = Shade 2...If ID < 0 then Set identifier to 2. Also when the the button is pressed, toggle the shade or shade set to jog up and down a little to tell you which one the controller is currently set to.
  5. Button five press -> Start position change close

On top of that, I was planning to do some conditional settings for long presses or double presses to set whatever shade to a favorite position.

Does this sound like the right approach or is there a simpler way to do this? I began playing with it, but I noticed private variables are only exposed at the button push level and not globally across the whole remote, so that would not allow the identifier variable to be used in the button one and five pushes unless I'm missing something.

I've got a pico managing a Smartwigs shade reasonably well. It appears that "start position change (open and close) are not exposed. My current work-around, using the user driver from Package Mgr, SmartWings Motor Shades, is combining two button controller apps. Button Controllers and Dimmers Button Controller (who knew). Button Controller for 1,3, 5. Open, Set level (I'm treating this as a favorite) and Close. Dimmer Button Controller for 2, 4. Dim up and Dim down by 15 positions. This works surprisingly well with no noticeable lag. I'll b e curious as to how well it can handle multiple shade together when the arrive in another week or so.

This is the BC rule I'm using to control my SmartWings shades with the stock driver.

Thanks, does the stock driver allow control of the shade with Alexa.

Yes

This is the basic control of what I want. But do you know of any route for us to change which blinds we can control with a button? For instance, if I only want Zen Left and Zen Right, is there a conditional I can set with a button push to change the switches control to only work on Zen Left and Zen Right? As far as I know...there's no global variable I can cycle through and set with a button press that is shared across buttons. If there is, I could set global variable = 1, 2, or 3 to control Shade 1, Shade 2, and both Shade 1 and 2 respectively. Then when global variable either = 1, 2, or 3, the other button presses will control the opening, closing of said set of shades. This is probably overly complicated for Hubitat's button controllers...

I'm not following the use case at all, in general individual buttons are assigned to a specific device or a group of devices.
Lutron makes a 4 button pico with buttons labeled 1 through 4, you could assign a single shade to each of the 3 buttons, then use the 4th to control the group.
There are other button controllers that have many more buttons than that, RGB Genie makes hand held controllers with 4 or 5 buttons plus group all on or off.
So the limitations aren't Hubitat related, but the actual button controller being used.

I think where I'm getting at is if there is a way for Button Controllers to have a way to control channels of instruments. The SmartWings remote control can pair shades to channels. And switching the channels allows you to change control of which blind or sets of blinds you'd like to control. It'd be nice if there was a Button Controller feature to do that. The idea is that if I only want like one blind to open instead of all of them in the room, I can do that with the switch of the channel on my wall switch rather than having to pull up my phone or add like 15 blinds into Google Home for voice control.

This is down to the physical device, in the case of those multi channel remotes they have a display indicating the current active channel, there isn't a way of visually indicating the active channel with a simplistic device like a Pico...

So hypothetically speaking if there was a physical button controller that was multi channels, lets say it has 4 physical buttons plus the channel selector and 5 channels, these would present in BC as 4 buttons for each channel 1..4 for channel 1, then 5..8 for channel 2 ect... for a total of 20 buttons total.
So again, this isn't a limitation of hubitat, its a device limitation...

Download the Hubitat app