gurumitts / pylutron-caseta

Apache License 2.0
153 stars 97 forks source link

Scene support for QSX ? #128

Closed vincegre closed 2 years ago

vincegre commented 2 years ago

Hi

Is it a restriction of protocol or "just" that it's not implemented in pylutron-caseta to get scenes from QSX ? It would be fantastic to be able to call back scenes on QSX from pylutron-caseta :-)

Thanks

Vincèn

danaues commented 2 years ago

@vincegre Unfortunately we have not discovered a way, within the LEAP api, to expose scenes directly on the RA3 or HWQSX processors.

However the following 2 PRs to Home Assistant allow you to execute button presses on physical or virtual (HomeOwner, Phantom) keypads. You can assign scenes to a button in your Lutron designer, and execute them from Home Assistant using these button entities. Effectively solving the problem.

https://github.com/home-assistant/core/pull/79958 https://github.com/home-assistant/core/pull/79963

These PRs are recent and will make it into a future release, perhaps the HA Nov beta.

vincegre commented 2 years ago

@vincegre Unfortunately we have not discovered a way, within the LEAP api, to expose scenes directly on the RA3 or HWQSX processors.

However the following 2 PRs to Home Assistant allow you to execute button presses on physical or virtual (HomeOwner, Phantom) keypads. You can assign scenes to a button in your Lutron designer, and execute them from Home Assistant using these button entities. Effectively solving the problem.

home-assistant/core#79958 home-assistant/core#79963

These PRs are recent and will make it into a future release, perhaps the HA Nov beta.

@danaues

Thanks for the info and link on the 2 PRs :) unhappy I realised I need to do the reverse, know when a scene button (on a physical keypad) has been pressed on Lutron to do some automations in HA. It looks that it's impossible to do right now out of using third-party control capabilities of Lutron processor :( Thanks for clarification ;)

danaues commented 2 years ago

@vincegre that’s easy.

When creating the automation, click “+ ADD TRIGGER”, then select “Device”, then in the device dropdown, select the keypad you want to watch for button presses. In the trigger dropdown, select the Button you want to watch for “Example: First Button Pressed” Then configure the rest of your automation.

You can also use the LED switch entity, to track whether a scene is active or not.

Let’s say you have a 4 button keypad “Front Door Position 1 Keypad”. There will be 4 switch entities for each LED light on the keypad. “switch.front_door_position_1_keypad_button_1_led” for example. If you have a scene attached to that button in the Lutron designer, the led switch entity will show as “on” when the scene is active, and “off” when not.

swamplynx commented 2 years ago

Learned something new! I didn't realize the integration could use device triggers and had been using event triggers.... Awesome.

swamplynx commented 2 years ago

Oddly though, I am finding the device triggers are not working for me. See the example below. The top event trigger works fine, whereas the device trigger on the bottom does not (same device, same button). Capture

danaues commented 2 years ago

Might be an issue with the custom_component you are using being in-between PRs I was working on. 2 of them change the way the devices are referenced during button presses. I'll do some testing this evening.

swamplynx commented 2 years ago

Got it. I just cloned the core/dev repo, so whatever was merged into that as of yesterday is what I'm using.

danaues commented 2 years ago

@swamplynx let's move this discussion over here: https://github.com/danaues/lutron_caseta/issues/3

I think we need to add support for your SeeTouchHybridKeypad

vincegre commented 2 years ago

When creating the automation, click “+ ADD TRIGGER”, then select “Device”, then in the device dropdown, select the keypad you want to watch for button presses. In the trigger dropdown, select the Button you want to watch for “Example: First Button Pressed” Then configure the rest of your automation.

You can also use the LED switch entity, to track whether a scene is active or not.

Let’s say you have a 4 button keypad “Front Door Position 1 Keypad”. There will be 4 switch entities for each LED light on the keypad. “switch.front_door_position_1_keypad_button_1_led” for example. If you have a scene attached to that button in the Lutron designer, the led switch entity will show as “on” when the scene is active, and “off” when not.

@danaues Thanks a lot for the trick (should have thought about it :-D) and solve both the issues of knowing when preset is called and also when preset is deactivated (I always use scenes buttons with LED indicating if scene is active or not !) so gives perfect follow-up on scenes status :+1: