Homekit Documentation - Metadata?

I’ve been happily running my system for awhile now without worrying about things but figured I’d come see how homekit updates have come along. I see a lot more things added in according to the documentation (https://www.openhab.org/addons/integrations/homekit/) and would like to update my items definitions to use the new metadata instead of tags per the docs… Therein lies my problem, when I change my items to metadata style tags every item disappears from homekit and nothing works!

Example change:
Switch MKitchenLight “Main Kitchen Lights” (gDownstairs) [ “Lighting” ]
Switch MKitchenLight “Main Kitchen Lights” (gDownstairs) {homekit = “Lighting”}

Anything specific I’m doing wrong here? Maybe the docs call out features that aren’t working yet? I did notice the docs call out configuring homekit via cfg file while I have mine in paperui… If that makes any difference. Running the 2.5.4 homekit with the latest openhab.

1 Like

The documentation Version you selected (See Top right corner) is „latest“, which is 2.5.5-SNAPSHOT. Select „2.5.4“ to get the documentation for your version. If you want to use the new features, you need to switch to 2.5.5 (which is expected in 2-3 weeks) or use snapshot builds.

A-ha, thank you! It lists 2.5 or latest as the top two. Being that I’m on 2.5.4 I assumed 2.5 was in fact the latest… It doesn’t show the minor version on the web page but low and behold selecting 2.5 gives the 2.5.4 version…

I’m having the same issue on my system, but I’m running the latest snapshot 2.5.5 with HomeKit add-on installed.
If I define my items like this:
Switch Giardino "Giardino" <Light> ["Lighting"] { channel="...", ga = "Light" }
then HomeKit recognizes them.

Instead, if I define items like this:
Switch Giardino "Giardino" <Light> { homekit = "Lighting", channel="...", ga = "Light" }
they are not recognized.

There is also another issue: when I remove the tag from an item, it keeps showing that item in HomeKit.
Do I need to “refresh” HomeKit items?

I’ve tried out different solutions and I’ve found out that, when using metadata, I need to comment out (remove) the item from myItems.items configuration file and then make it visible again in order to expose items in HomeKit. Also, if I want to remove an item from HomeKit I need to do the same procedure (removing and re-setting the item in my configuration) after removing the metadata.
I can’t figure out why this is happening and also in the logs I cannot find useful information.
Anyone experiencing this issue?

1 Like


I’m running OH 2.5.5 as well, having the same problems. Also removing and re-adding the items didn’t solve the issue.
In Homekit IOS App I can see in Bridge information for openHAB that Modell Version is 2.5.5, however Firmware is 2.5.3 only?! Not sure this could be the reason its not working well?
Any idea?

Many thanks :slight_smile:

UPDATE: Seems I wasn’t waiting long enough previously - now its working for me with the new Metadata syntax as well :slight_smile:

I’m just wondering what the difference is between those parameters. I only see a different symbol when choosing “Irrigation”. All others are showing the same Picture.

homekitValveType = ["Generic", "Irrigation", "Shower", "Faucet"]

HI @stefan13
would you mind sharing your full code how to use homekitValveType = ["Generic", "Irrigation", "Shower", "Faucet"]?

Thanks and Regards

Hi @hamwong,
here it is - hope it helps :slight_smile:

Thanks Stefan

Group g_Bewaesserung_Rasen "Rasen" {homekit="Valve"  [homekitValveType="Irrigation"]}
Switch sw_Bewaesserung_Rasen_Proxy  "Rasen"  (g_Bewaesserung_Rasen)  {homekit = "Valve.ActiveStatus, Valve.InUseStatus"}
Number n_Bewaesserung_Rasen_AusschaltTimer_HK_Proxy   (g_Bewaesserung_Rasen)  {homekit = "Valve.Duration" } //{homekit = "Valve.Duration"}// aktuelle Laufzeit
Number n_Bewaesserung_Rasen_Restlaufzeit_HK_Proxy   (g_Bewaesserung_Rasen) {homekit = "Valve.RemainingDuration"} // Restlaufzeit Auto Abschaltung

Group  g_Bewaesserung_Buesche_Vorne    "Büsche vorne"   {homekit="Valve"  [homekitValveType="Shower"]}
Switch sw_Bewaesserung_Buesche_Vorne_Proxy  (g_Bewaesserung_Buesche_Vorne)  {homekit = "Valve.ActiveStatus, Valve.InUseStatus" }
Number n_Bewaesserung_Buesche_Vorne_AusschaltTimer_HK_Proxy (g_Bewaesserung_Buesche_Vorne) {homekit = "Valve.Duration" }
Number n_Bewaesserung_Buesche_Vorne_Restlaufzeit_HK_Proxy  (g_Bewaesserung_Buesche_Vorne) {homekit = "Valve.RemainingDuration"}// Restlaufzeit Auto Abschaltung

Group  g_Bewaesserung_Buesche_Unten "Büsche unten"   {homekit="Valve"  [homekitValveType="Faucet"]}
Switch sw_Bewaesserung_Buesche_Unten_Proxy  (g_Bewaesserung_Buesche_Unten)  {homekit = "Valve.ActiveStatus, Valve.InUseStatus" }
Number n_Bewaesserung_Buesche_Unten_AusschaltTimer_HK_Proxy  (g_Bewaesserung_Buesche_Unten) {homekit = "Valve.Duration" }
Number n_Bewaesserung_Buesche_Unten_Restlaufzeit_HK_Proxy   (g_Bewaesserung_Buesche_Unten)  {homekit = "Valve.RemainingDuration"}

Group  g_Bewaesserung_Buesche_Hinten "Büsche hinten"   {homekit="Valve"  [homekitValveType="Generic"]}
Switch sw_Bewaesserung_Buesche_Hinten_Proxy  (g_Bewaesserung_Buesche_Hinten)  {homekit = "Valve.ActiveStatus, Valve.InUseStatus" }
Number n_Bewaesserung_Buesche_Hinten_AusschaltTimer_HK_Proxy  (g_Bewaesserung_Buesche_Hinten) {homekit = "Valve.Duration" }
Number n_Bewaesserung_Buesche_Hinten_Restlaufzeit_HK_Proxy  (g_Bewaesserung_Buesche_Hinten)  {homekit = "Valve.RemainingDuration"}

Thanks. it helps

For anyone trying to set this up for the first time, I learned that ORDER MATTERS. The documentation doesn’t clarify how to specify the channel AND integration for an item. Specifically, I was trying to connect two Kasa (TP-Link) Smart Bulbs to HomeKit so that I could use them with Siri.

When I set up the bulb items like this: Dimmer Dimmer_CouchLamp "Couch Lamp Dimmer [%d %%]" <slider> { channel="tplinksmarthome:kl50:ABC123:brightness", homekit="Lighting, Lighting.Brightness" [dimmerMode="filterOn"] } and tried to add OpenHAB as an accessory in my Apple Home, the OpenHAB only appeared as an accessory, rather than a bridge.

When I set up the items like this (with the homekit integration coming before the channel): Dimmer Dimmer_CouchLamp "Couch Lamp Dimmer [%d %%]" <slider> { homekit="Lighting, Lighting.Brightness" [dimmerMode="filterOn"], channel="tplinksmarthome:kl50:ABC123:brightness" } then OpenHAB was recognized as a bridge and subsequently recognized the smart bulbs.

I hope this small amount of information can help someone that had the same questions that I did.

EDIT: I’m on OpenHABian 2.5.10-1 and OpenHAB 2.5.10

1 Like