the openHAB Homekit documentation states, that it should be possible to combine two different accessory types into one Homekit device. I tried to combine a speaker and switch to create an enhanced television accessory (onState, volume, mute) - unfortunately this attempt failed. Until yet, I haven’t figured out what my problem is, so I tried another approach.
Therefore, I have copied the example from the documentation and tried it again:
Group FanWithLight "Fan with Light" {homekit = "Fan,Light"}
Switch FanActiveStatus "Fan Active Status" (FanWithLight) {homekit = "Fan.ActiveStatus"}
Number FanRotationSpeed "Fan Rotation Speed" (FanWithLight) {homekit = "Fan.RotationSpeed"}
Switch Light "Light" (FanWithLight) {homekit = "Lighting.OnState"}
Regarding my openhab logs, an additional Homekit device has been created successfully. But it won’t show up in my “Home” app. I even tried to reconnect my openHAB bridge to Home but this didn’t work out too.
Is combining two different openHAB accessories to one Homekit device still supported? Am I missing something?
Ah yes, that did the trick in this test case, thank you!
So far so good - but then I have to figure out what the problem with my television device is. As mentioned, I try to combine a speaker and a switchable accessory to control at least the onState and volume of my television.
Therefore, my group and items look like:
Group TV "TV-Test" {homekit = "Switchable,Speaker"}
Switch TVonState "TV-Test onState" (TV) {homekit = "Switchable.OnState"}
Number TVVolume "TV-Test Volume" (TV) {homekit = "Speaker.Volume"}
Switch TVMute "TV-Test Mute" (TV) {homekit = "Speaker.Mute"}
I have a Speaker/Switchable combination in order to have power, mute, volume on my home theater setup. The Home app doesn’t currently support speaker devices (yes, it’s strange but true). If you try an alternate HomeKit tool, like the Eve app, you should be able to see that the compound device is present:
i think, speaker are only supported in combination with TV (which is not supported by OH yet) or Doorbell or so.
Try SmartSpeaker. this one should work standalone
you would need to provide CurrentMediaState and CurrentMediaState but you can just create one openHAB item of type string, tag it with {homekit = CurrentMediaState, CurrentMediaState} and set the value to STOP or PAUSE
I tried to combine SmartSpeaker and Switchable accessories, but the device won’t show up in Home. Do you see any potential errors in my configuration?
Appreciate your help!
Another Update: It’s the same behaviour as it is with the speaker accessory. I get a switch device in Home and I am able to control the OnState but nothing else. I cannot control the volume and mute state of this device with the Home App nor Siri.
unfortunately, Apple does not tell in the homekit specification what can be combined and what not. it is more try & error approach. From our side we cannot do much, we can only send the list of accessories and home app either can show it or not.
especially speaker seems to be very special for home app.
as @hww3 has mentioned above, other apps show it correctly.
probably you need to re-think the use case and have switch and smartspeaker separated.
Okay - in this case I have to reconsider my plan and won’t be able to control the volume with Siri. Maybe Apple will implement such a feature in the future (hopefully).
Thank you for your help!