Apple HomeKit StatelessProgrammableSwitch / Scene Controller

Can someone explain how the Scene Controller is supposed to work ?

When I add

Group gSceneController "Scene Controller" { homekit="AccessoryGroup"[ServiceLabel="ARABIC_NUMERALS"] }
Switch Button1 "Switch A" (gSceneController) { homekit="StatelessProgrammableSwitch"[ServiceIndex=1] }
Switch Button2 "Switch B" (gSceneController) { homekit="StatelessProgrammableSwitch"[ServiceIndex=2] }
Switch Button3 "Switch C" (gSceneController) { homekit="StatelessProgrammableSwitch"[ServiceIndex=3] }
Switch Button4 "Switch D" (gSceneController) { homekit="StatelessProgrammableSwitch"[ServiceIndex=4] }

to my config, I get a widget in the Home App that allows me to configure the buttons.

But what then? When I tap the icon for the scene controller, I always get the configuration menu.
Am I supposed to get buttons elsewhere in the application that can be hit to activate whatever is configured ? Button1…4 do not show up anywhere

What am I missing here?

Hi Karel,

StatelessProgrammableSwitch was mainly added to support Doorbell. not sure i have seen use cases besides of doorbell.

what do you want to achieve? maybe there are other options to get the same results.

@yfre I was trying to emulate through the Home App physical scene controllers I do have in my house. e.g. they have actually 4 buttons, each corresponding to a scene

Btw, I was searching for the latest non commercial edition of the HAP spec, but it seems now to be hidden behind the MFi wall @ Apple :frowning:

yes, this is challenge. i also have very old HAP spec on it.

i have implemented scenes with “switchable” - it just a button in home app, that can be included in scenes and automation, and on OH sides it triggers a rule.

@yfre What I really miss is custom sensors, e.g. that display a number reading of any type, like for example energy consumption and alike. The spec allow one to define additional Accessories and Services, obviously, the Home app will not be able to display them

Some (long) time ago I have written a (reverse) binding (not completed yet, cause very complex due to all the encryption going on) that allows OH to act as a controller and thus control HK devices that are not yet integrated into the OH ecosystem. Not sure if there is any interest for that in the community

1 Like

@yfre Btw, I have spec R13 here, but I know of R15 out in the wild

FYI, not really a nice Home UI interface solution, but as I mainly use voice commands with HomePods, I have set up my multiple room lighting scenes as a colour light for each room with the name “Lighting” instead of just Light - I suppose “Scene” or something else should also be possible.

Then issuing different colours (red, green blue … this works even nicely when adding some more memorable additions to the colours, like red evening, green morning …) to this one scene bulb “Lighting” I trigger complex rules for all the different lights, roller shutters and other accessories in the rooms, with the non-light colour gold setting the lighting scene for each room to the time of day default colour.

With other scenes like TV Mode or such I also just use ON/OFF switches as @yfre suggests.

I would suggest there is definitely interest in this as it repeatedly crops up as a question. Also the Home Assistant equivalent of this is pretty popular. They used to show statistics on the integration pages on the percentage installed base and it was significant, so it is likely to be popular here too.