HomeKit: support for additional accessory types

Everything working good even with position control

i remove homekit from paperui
then i downloaded file …
https://github.com/epike/openhab2-addons/releases/download/2.3.0/org.openhab.io.homekit-2.3.0.jar
i put file in /usr/share/openhab2/addons

then /etc/openhab2/services/homekit.cfg file

org.openhab.homekit:port=9124
org.openhab.homekit:pin=031-45-154
org.openhab.homekit:useFahrenheitTemperature=false
org.openhab.homekit:thermostatCoolMode=CoolOn
org.openhab.homekit:thermostatHeatMode=HeatOn
org.openhab.homekit:thermostatAutoMode=Auto
org.openhab.homekit:thermostatOffMode=Off
org.openhab.homekit:networkInterface=192.168.0.113

my things knx.things file for shade :
Type rollershutter : WorkRoomRoller1 “Shade” [ upDown=“1/2/44”, stopMove=“1/2/45”, position=“1/2/46+<1/2/47” ]

for item knx.item for shade :
Rollershutter WorkRoomRoller1 "Shade [ %d %%] " (gWorkRoom) [“Blinds”] { channel=“knx:device:bridge:generic:WorkRoomRoller1” }

then remove file :
$OPENHAB_USERDATA/jsondb/homekit.json

and last in karaf console :

smarthome:homekit clearPairings

then on ios again add new homekit accessories

then everything work perfect…thx for help

1 Like

I’m using the homekit binding version from @maihacke to use my garagedoor as a rollershutter with homekit.

This worked perfect for the past months.

Since iOS 13 it stopped for the rollershutter:
Opening and closing still works, but the status update (OPEN or CLOSED) is not updated in the homekit app.
So the icon stays closed but the door opens :wink:

Anyone else with this issue?

Hello there!
I saw the “garage door open”-button on the apple homepage (included in car play) and thought that would be a great and easy way to open the garage.
Do you know if there is a special accessory type for garage doors or is it just a switch?
It’d be great to get this working!
250cb06b

Here are Garage Door Opener with HomeKit.

Thanks.
i was actually not looking for a homekit garage opener but the software config to use every opener at the marked :slight_smile: like a tag for “garage door”.

Hi,
is there any progress regarding Blinds und knx ?? If i try to use more then 5 Blinds the 6th Blind is not responding in the Home App. Restarting the system is not helping and so i feel a little bit lost.

Thats one way i defined the thing.
.thing

Thing device Rollo_A "Rollo A" 
    {
        Type rollershutter : R_CH_A "Rollo Kanal A" [ upDown="3/1/0", stopMove="3/1/1", position="3/1/6+<3/1/3" ]
    }

.items

Rollershutter Shutter_EG_HWR_1 "Rollo HWR Links [%d %%]"  [ "Blinds" ] { channel="knx:device:MDT_IPG:Rollo_A:R_CH_A" }

I also tried this .thing definition:

Thing device MDT_Jalousieaktor_8Fach_1 [
        address="1.1.6",
        fetch=false,
        pingInterval=300,
        readInterval=0
    ] 
    {
        Type rollershutter : R_CH_A "Rollo Kanal A"       [ upDown="3/1/0", stopMove="3/1/1", position="3/1/6+<3/1/3" ]
        Type rollershutter : R_CH_B "Rollo Kanal B"       [ upDown="3/1/10", stopMove="3/1/11", position="3/1/16+<3/1/13" ]
        Type rollershutter : R_CH_C "Rollo Kanal C"       [ upDown="3/1/20", stopMove="3/1/21", position="3/1/26+<3/1/23" ]
        Type rollershutter : R_CH_D "Rollo Kanal D"       [ upDown="3/1/30", stopMove="3/1/31", position="3/1/36<+3/1/33" ]
        Type rollershutter : R_CH_E "Rollo Kanal E"       [ upDown="3/1/40", stopMove="3/1/41", position="3/1/46<+3/1/43" ]
        Type rollershutter : R_CH_F "Rollo Kanal F"       [ upDown="3/1/50", stopMove="3/1/51", position="3/1/56<+3/1/53" ]
        Type rollershutter : R_CH_G "Rollo Kanal G"       [ upDown="3/1/60", stopMove="3/1/61", position="3/1/66<+3/1/63" ]
        Type rollershutter : R_CH_H "Rollo Kanal H"       [ upDown="3/1/70", stopMove="3/1/71", position="3/1/76<+3/1/73" ]
    }

Has anyone a idea why after 5 Blind definitions it stops working?

Im using this addon version:
org.openhab.io.homekit-2.4.0-homekit-6

and this obenhab version:
openHAB 2.4.0-1 (Release Build)

Thanks in advance and best regards.

Sebastian.

Hello?:pleading_face:

No one can help?

i have more than 5 blinds working correctly (actually 12 in total), so, there is no limit
the things definition looks good as well. can you paste you complete items definition ?

pls. check whether you can control your blinds via paperui http://:8080/paperui/index.html#/control

here are my config.
.thing
Thing device JAL0810_01 “Rolladenaktor 1”@“KNX” [
address=“1.0.4”,
fetch=false,
pingInterval=300,
readInterval=3600
] {
Type rollershutter : channel_a “Kanal A” [ upDown=“3/1/1”, stopMove=“3/2/1”, position=“3/3/1+<3/5/1”]
Type rollershutter : channel_b “Kanal B” [ upDown=“3/1/0”, stopMove=“3/2/0”, position=“3/3/0+<3/5/0”]
Type rollershutter : channel_c “Kanal C” [ upDown=“3/1/2”, stopMove=“3/2/2”, position=“3/3/2+<3/5/2”]
}

.items

    Rollershutter terrace_blinds_l       "Terrase Rollladen Links [%d %%]"       <rollershutter>  (gWohnzimmer)   ["WindowCovering"] {channel="knx:device:scn_ip:JAL0810_01:channel_a"}
    Rollershutter dinning_blinds         "Essen Rollladen [%d %%]"               <rollershutter>  (gWohnzimmer)   ["WindowCovering"] {channel="knx:device:scn_ip:JAL0810_01:channel_b"}
    Rollershutter terrace_blinds_r       "Terrase Rollladen Rechts [%d %%]"      <rollershutter>  (gWohnzimmer)   ["WindowCovering"] {channel="knx:device:scn_ip:JAL0810_01:channel_c"}

Hey @yfre,

thanks you for your reply. Here are more informations

Switch  HWR_Licht                "HWR Decke Licht [%s]"           <light> ["Lighting"] { channel="knx:device:MDT_IPG:MDT_Schaltaktor_20Fach_1:S_Ch_A" }
Switch  Flur_Licht               "Flur Decke Licht [%s]"          <light> ["Lighting"] { channel="knx:device:MDT_IPG:MDT_Schaltaktor_20Fach_1:S_Ch_B" } 
Switch  Kueche_Licht_1           "Küche Decke Licht [%s]"         <light> ["Lighting"] { channel="knx:device:MDT_IPG:MDT_Schaltaktor_20Fach_1:S_Ch_C" }
Switch  Kueche_Licht_2           "Küche Arbeitsplatte Licht [%s]" <light> ["Lighting"] { channel="knx:device:MDT_IPG:MDT_Schaltaktor_20Fach_1:S_Ch_D" }
Switch  Wohnzimmer_Licht_links   "Wohnzimmer Licht Links [%s]"    <light> ["Lighting"] { channel="knx:device:MDT_IPG:MDT_Schaltaktor_20Fach_1:S_Ch_E" }
Switch  Wohnzimmer_Lichts_rechts "Wohnzimmer Licht Rechts [%s]"   <light> ["Lighting"] { channel="knx:device:MDT_IPG:MDT_Schaltaktor_20Fach_1:S_Ch_F" }
Switch  Gaestezimmer_Licht       "Gästezimmer Decke Licht [%s]"   <light> ["Lighting"] { channel="knx:device:MDT_IPG:MDT_Schaltaktor_20Fach_1:S_Ch_G" }
Switch  Bad_Licht_1              "Bad Decke Licht [%s]"           <light> ["Lighting"] { channel="knx:device:MDT_IPG:MDT_Schaltaktor_20Fach_1:S_Ch_H" }
Switch  Bad_Licht_2              "Bad Spiegel Licht [%s]"         <light> ["Lighting"] { channel="knx:device:MDT_IPG:MDT_Schaltaktor_20Fach_1:S_Ch_I" }

Dimmer Esszimmer_Licht           "Esszimmer Tisch"                <light> ["Lighting"] { channel="knx:device:MDT_IPG:MDT_Dimmaktor_4Fach:D_Ch_A" }
Dimmer Wohnzimmer_Licht          "Wohnzimmer Decke"               <light> ["Lighting"] { channel="knx:device:MDT_IPG:MDT_Dimmaktor_4Fach:D_Ch_B" }

Rollershutter Shutter_EG_HWR_1 "Rollo HWR Links [%d %%]"  [ "Blinds" ] { channel="knx:device:MDT_IPG:Rollo_A:R_CH_A" }
Rollershutter Shutter_EG_HWR_2 "Rollo HWR Rechts [%d %%]"  ["Blinds"] { channel="knx:device:MDT_IPG:Rollo_B:R_CH_B" }
Rollershutter Shutter_EG_Kitchen "Rollo Küche [%d %%]" ["Blinds"]  { channel="knx:device:MDT_IPG:Rollo_C:R_CH_C" }
Rollershutter Shutter_EG_Esszimmer_1 "Rollo Esszimmer Links [%d %%]" ["Blinds"] { channel="knx:device:MDT_IPG:Rollo_D:R_CH_D" }
Rollershutter Shutter_EG_Esszimmer_2 "Rollo Esszimmer Rechts "  ["Blinds"] { channel="knx:device:MDT_IPG:Rollo_E:R_CH_E" }
//Rollershutter Shutter_EG_Wohnzimmer_1 "Rollo Esszimmer Rechts "  ["Blinds"] { channel="knx:device:MDT_IPG:F:R_CH_F" }
//Rollershutter Shutter_EG_Wohnzimmer_2 "Rollo Esszimmer Rechts "  ["Blinds"] { channel="knx:device:MDT_IPG:Rollo_G:R_CH_G" }
//Rollershutter Shutter_EG_Gaeste_1 "Rollo Gästezimmer links" ["Blinds"] { channel="knx:device:MDT_IPG:Rollo_H:R_CH_H" }
//Rollershutter Shutter_EG_Gaeste_2 "Rollo Gästezimmer rechts" ["Blinds"] { channel="knx:device:MDT_IPG:Rollo_I:R_CH_I" }
//Rollershutter Shutter_EG_Badezimmer "Rollo Badezimmer" ["Blinds"] { channel="knx:device:MDT_IPG:Rollo_J:R_CH_J" }

You are using [“WindowCovering”] instead of [“Blinds”], is there a reason why?

Which homekit version you are using?

Controling over PaperUI is working with more then 5, but when im using [“Blinds”] definition for Homekit it is going wrong :frowning:

Blinds and WindowCovering are synonyms. “blinds” is older tag and “windowCovering” is new and is more inline with apple homekit terms. as of now both can be used and are working in the same way.

i have custom build of homekit addon with latest fixes for ios13. but blinds are working for me since more than 1 year.

in the source code of addon i dont see anything that would explain your issue… it would either work or dont work, but not working for 5 but not for more than 6.

so, it should be something wrong with items config. could you pls try to add “[%d %%]” to all your blinds.

Hey,

i formated my SD and will start from a fresh setup. Do the blinds working in stable setup with homekit installed over PaperUI or do i have to use a modified version of homekit?

I will post my fresh and clean .item and .thing files.

Hey, i’m totaly desperate. It won’t work. i can add lights as many as possible but WINDOWCOVERING is not working for more then 5 windows. That is realy frustrating. I moved from fhem to try something new because i like the HabPanel und PanelUI but never mind that it is so complicated to simple add more than 5 Blinds which are working over the controlpanel to get working in homekit addon.

:-1:

if you still want to try with openhab, please try a different orders of blinds. homekit is extremely picky about many things, maybe the name of the blind number 6 has some wrong in the configuration. so, move it to the end and try another blind as number 6.
as i mentioned, i have 12 blinds working with homekit since more than 1 year without any issues…

Hey,

i still try to get it working. What i figured out is that is realy shutter dependend . But i did not find the failure. I also checked my KNX configuration and can’t find a failure. I manualy read out the GA’s and checked the positions’s and also controlled my blinds.

But here we go:

knx.things

Bridge knx:ip:MDT_IPG [  
    ipAddress="10.0.0.10", 
    type="TUNNEL", 
    portNumber=3671, 
    readingPause=50, 
    responseTimeout=10, 
    readRetriesLimit=3, 
    autoReconnectPeriod=1,
    localSourceAddr="0.0.0"
]{
    Thing device MDT_Schaltaktor_20Fach_1 "Schaltaktor 1"@"KNX" [
        address="1.1.3",
        fetch=false,
        pingInterval=300,
        readInterval=0
    ]{
        Type switch : S_Ch_A     "Kanal A"       [ ga="1/1/0+<1/1/1" ]
        Type switch : S_Ch_B     "Kanal B"       [ ga="1/1/5+<1/1/6" ]
        Type switch : S_Ch_C     "Kanal C"       [ ga="1/1/10+<1/1/11" ]
        Type switch : S_Ch_D     "Kanal D"       [ ga="1/1/15+<1/1/16" ]
        Type switch : S_Ch_E     "Kanal E"       [ ga="1/1/20+<1/1/21" ]
        Type switch : S_Ch_F     "Kanal F"       [ ga="1/1/25+<1/1/26" ]
        Type switch : S_Ch_G     "Kanal G"       [ ga="1/1/30+<1/1/31" ]
        Type switch : S_Ch_H     "Kanal H"       [ ga="1/1/35+<1/1/36" ]
        Type switch : S_Ch_I     "Kanal I"       [ ga="1/1/40+<1/1/41" ]
    }
    Thing device MDT_Jalousieaktor_8Fach_1 "Rolladenaktor 1"@"KNX" [
        address="1.1.6",
        fetch=false,
        pingInterval=300,
        readInterval=0
    ] 
    {
        Type rollershutter : R_CH_A "HWR Links"     [ upDown="3/1/0", stopMove="3/1/1", position="5.001:3/1/6+<3/1/3" ]
        Type rollershutter : R_CH_B "HWR Rechts"    [ upDown="3/1/10", stopMove="3/1/11", position="5.001:3/1/16+<3/1/13" ]
        Type rollershutter : R_CH_C "Kueche"        [ upDown="3/1/20", stopMove="3/1/21", position="5.001:3/1/26+<3/1/23" ]
        Type rollershutter : R_CH_D "Essen Links"   [ upDown="3/1/30", stopMove="3/1/31", position="5.001:3/1/36<+3/1/33" ]
        Type rollershutter : R_CH_E "Essen Rechts"  [ upDown="3/1/40", stopMove="3/1/41", position="5.001:3/1/46<+3/1/43" ]
        Type rollershutter : R_CH_H "Gaeste Rechts" [ upDown="3/1/80", stopMove="3/1/81", position="5.001:3/1/86<+3/1/83" ]
    }
    
    Thing device MDT_Jalousieaktor_8Fach_2 "Rolladenaktor 2"@"KNX" [
        address="1.1.7",
        fetch=fasle,
        pingInterval=300,
        readInterval=0
    ] 
    {
        Type rollershutter : R_CH_I "Gaeste Links"  [ upDown="3/1/70", stopMove="3/1/71", position="5.001:3/1/73+<3/1/76" ]
        Type rollershutter : R_CH_J "Gaeste WC"     [ upDown="3/1/90", stopMove="3/1/91", position="5.001:3/1/93+<3/1/96" ]
    }
}

knx.items


Switch  HWR_Licht                "HWR Decke Licht [%s]"           <light> (Erdgeschoss_Beleuchtung)  ["Lighting"]    { channel="knx:device:MDT_IPG:MDT_Schaltaktor_20Fach_1:S_Ch_A" }
Switch  Flur_Licht               "Flur Decke Licht [%s]"          <light> (Erdgeschoss_Beleuchtung)  ["Lighting"]    { channel="knx:device:MDT_IPG:MDT_Schaltaktor_20Fach_1:S_Ch_B" } 
Switch  Kueche_Licht_1           "Küche Decke Licht [%s]"         <light> (Erdgeschoss_Beleuchtung)  ["Lighting"]    { channel="knx:device:MDT_IPG:MDT_Schaltaktor_20Fach_1:S_Ch_C" }
Switch  Kueche_Licht_2           "Küche Arbeitsplatte Licht [%s]" <light> (Erdgeschoss_Beleuchtung)  ["Lighting"]    { channel="knx:device:MDT_IPG:MDT_Schaltaktor_20Fach_1:S_Ch_D" }
Switch  Wohnzimmer_Licht_links   "Wohnzimmer Licht Links [%s]"    <light> (Erdgeschoss_Beleuchtung)  ["Lighting"]    { channel="knx:device:MDT_IPG:MDT_Schaltaktor_20Fach_1:S_Ch_E" }
Switch  Wohnzimmer_Lichts_rechts "Wohnzimmer Licht Rechts [%s]"   <light> (Erdgeschoss_Beleuchtung)  ["Lighting"]    { channel="knx:device:MDT_IPG:MDT_Schaltaktor_20Fach_1:S_Ch_F" }
Switch  Gaestezimmer_Licht       "Gästezimmer Decke Licht [%s]"   <light> (Erdgeschoss_Beleuchtung)  ["Lighting"]    { channel="knx:device:MDT_IPG:MDT_Schaltaktor_20Fach_1:S_Ch_G" }
Switch  Bad_Licht_1              "Bad Decken Licht [%s]"          <light> (Erdgeschoss_Beleuchtung)  ["Lighting"]    { channel="knx:device:MDT_IPG:MDT_Schaltaktor_20Fach_1:S_Ch_H" }
Switch  Bad_Licht_2              "Bad Spiegel Licht [%s]"         <light> (Erdgeschoss_Beleuchtung)  ["Lighting"]    { channel="knx:device:MDT_IPG:MDT_Schaltaktor_20Fach_1:S_Ch_I" }



Rollershutter EG_Hausw_a "HWR Links [%d %%]"    ["WindowCovering"] { channel="knx:device:MDT_IPG:MDT_Jalousieaktor_8Fach_1:R_CH_A" }
Rollershutter EG_Hausw_b "HWR Rechts [%d %%]"   ["WindowCovering"] { channel="knx:device:MDT_IPG:MDT_Jalousieaktor_8Fach_1:R_CH_B" }
Rollershutter EG_Kueche  "Kueche [%d %%]"       ["WindowCovering"] { channel="knx:device:MDT_IPG:MDT_Jalousieaktor_8Fach_1:R_CH_C" }
Rollershutter EG_Essz_a  "Essen Links [%d %%]"  ["WindowCovering"] { channel="knx:device:MDT_IPG:MDT_Jalousieaktor_8Fach_1:R_CH_D" }
Rollershutter EG_Essz_b  "Essen Rechts [%d %%]" ["WindowCovering"] { channel="knx:device:MDT_IPG:MDT_Jalousieaktor_8Fach_1:R_CH_E" }
Rollershutter EG_Gast_b  "Gaeste Rechts [%d %%]"["WindowCovering"] { channel="knx:device:MDT_IPG:MDT_Jalousieaktor_8Fach_1:R_CH_H" }
Rollershutter EG_Gast_a  "Gaeste Links [%d %%]" ["WindowCovering"] { channel="knx:device:MDT_IPG:MDT_Jalousieaktor_8Fach_1:R_CH_I" }
Rollershutter EG_Bad     "Gaeste WC [%d %%]"    ["WindowCovering"] { channel="knx:device:MDT_IPG:MDT_Jalousieaktor_8Fach_1:R_CH_J" }

What i figured out is, R_CH_A, R_CH_B and R_CH_C are working perfect. The other one not. In the Home App is showing the blinds but they are showing the hole time Refreshing.

May be there is a homekit guru and can help?!

Best Regards

Sebastian

config looks good. so, in home app you see all blinds but only 3 of them are working, right? or you see only 3?
which IOS version you have?

and one more thing to try:
could you put R_CD_D on the same knx channel as R_CH_C, i.e.
Type rollershutter : R_CH_D "Essen Links" [ upDown="3/1/20", stopMove="3/1/21", position="5.001:3/1/26+<3/1/23" ]

would it make “Essen Links” work?

Hey Eugen, thanks for your reply. We are making progress. After i post my config yesterday i restarted openhab and now R_CH_A, R_CH_B and R_CH_C are working. D, E and H not. I and J (other device) also working.

your questions:

  • All Devices are shown in Home App.
  • IOS 13.1.3

I put D to channel C… not working! (Essen Links is not working)

D, E and H are also the 3 which are not working. Very Very strange. I can control the 3 ones over Paper UI but the status is not shown. Open and Close is shown in the Home App, but i can not control them over the Home App. I think there is going something totaly wrong.

Is there a way to see what is going on there? like a debug output?

Best Regards

Sebastian

Hey Sebastian,
have you solved the issue?
if not, i have an idea.
pay attention to “<” in your config

working one have
position=“5.001:3/1/26+<3/1/23”

not working one have
position=“5.001:3/1/36<+3/1/33”

i.e. put “+” first and than “<”

best regards
eugen

Hey Eugen, you got it. :joy: what a stupid mistake. I kill the hole setup and create a new one. First of all without HomeKit. But i still have the failure because i copied the config. :joy::joy::joy:

Will try to integrate the other blinds now and if everything is working on sitemap and paper ui i activate homekit again. Btw, is there a good tutorial of setting up a dev enviroment to compile HomeKit yourself?

Thank you very much dir your help so far.

Beat Regards.

Sebastian

Can somebody help me on this too? I can see the my 4 blinds in Home Kit but they they do not open or close when I change them. In OpenHab App they work as expected. They also show the percentage and receive the percentage value when i open or close the the shutter in openhab app. E.g. if I stop the shutter at 50%, HomeKit shows 50%
My thing for a roller shutter is:

Type rollershutter : rolloEsszimmer1 "Rollo bei Küche" [ upDown="1/0/0", stopMove="1/0/1", position="1/0/8+<1/0/13" ]

Any my item

Rollershutter   rolloEsszimmer1     "Rollo Küche [%d %%]"               <rollershutter>     (EG_Kueche, gShutters)             ["WindowCovering"]   { channel="knx:device:bridge:generic:rolloEsszimmer1" }

Can someone explain the knx group addresses position=“1/0/8+<1/0/13”
What should be the first group address (1/0/8)
What should be the second group address (1/0/13)
What does the < mean?

I also have a switch for a light, this works perfekt.

I have installed misc-homekit - 2.5.3 and iOS 13.4

The first GA is the absolute position of your rollershutter.
So if you set it to 15% in openhab, the actuator will rotate your shutter to 15%.

The second GA (including the < ) is to update the position value of your OpenHAB Rollershutter item.
This GA should be bound to the position feedback channel of your actuator.
So if you open/close your shutter (via OpenHAB or knx switch or any way else) the position of the shutter will be broadcasted via the feedback channel.
This way OH is always in sync with the actual position.

AFAIK: the < sign means that it is an incoming (status) value

1 Like