Maintain Master Open/Close Setting


#1

1) Give a description of the problem

I have individual pistons for three iBlinds, and am trying to create a master piston for all. However, once the master piston is “closed”, I can no longer use it if one or two blinds are opened later.

2) What is the expected behaviour?

If all windows start out closed, and later two windows are opened. The master piston won’t “close all” because it’s already closed. It needs to “open” if any window opens without opening the other windows. However, if all windows are closed, then it will open all windows normally. All the devices are virtual shades that control actual shades,

3) What is happening/not happening?

Can’t figure out the logic. I’m trying to set up a section that will compare the positions of the three blinds. If one or more blinds should open, then the master piston should read open, but not open all the blinds.

[EDIT] I’m beginning to see that this is going to have to be momentary switches for both commands instead. Bummer :frowning:


#2

Just thinking out loud here. I think you might be able to accomplish this with the help of a global device variable that stores any matching device to say @openBlinds. Each of the individual blinds piston will have to add/remove itself from the global variable on their own. Your master piston will be able to tell if @openBlinds is empty or not.

I employ the same thing for my Alexa announcements. I have one piston at each location that monitors motion, if there’s motion, the Alexa device is added to a global variable that I use for announcements. Instead of blasting all announcements to every echo device in the house, I just send it to the ones present in the global variable. If motion ceases, the echo device is removed from the global variable after so many minutes.


#3

Nah…I realized it was unworkable because it would be impossible to differentiate if the global should be set to “open” or “closed” if only a few of the blinds were open. It was easier just to make two switches (“open all blinds” and “close all blinds”), and then create voice commands in Alexa to trigger them. Then nothing needs to be monitored.

Another issue I was having was that the iBlinds driver allows for a windowShade setting of “partially open” setting, but the virtual driver for shades would not - only “open” and “closed”, so I had to rename my shade devices from “Blinds Front Window” to “Front Window”. (I like to organize my devices by category, and then use virtual devices for Alexa.)

I used to designate Echos by the lastSpokenTo setting in Echo Speaks, but that no longer works. :frowning: