As a note, I run a C-7 w/ 2.3.8.140. The other site is also a C-7 on the beta releases.
I have to say that after some reboots I too have problems that HK does not work anymore, Also most of the time after a power outage probably because my stupid router takes so long to boot up (need to change that ASAP but $$).
Since it's just a part of my presence sensing, it's not 100% necessary at the moment but we do like having a few lights available on there like outside lights, gazebo, etc. Nice to be able to just open the phone and having access rapidly to these without having to go back to the switch inside or opening the Hubitat app and going through all switches or selecting the right dashboard.
Just to add a data point, I have 3 hubs, (all C-8 now, but one was a C-7 until recently) all connected to HomeKit (running on an Apple TV) using the Hubitat integration. Sharing hundreds of devices of all types including real and virtual switches, sensors of all types (motion, contact, humidity, presence, temperature, illuminance, etc.), garage door openers and thermostats and I have not had any issues. (Yet…?)
I wonder what could be causing issues in your case… maybe some problematic device drivers?
Myself as well.
Totally valid, it works for a number of people, maybe most. That makes it more frustrating for me. There is no way for me to know why it breaks so often without changes.
Not sure if it’s just wishful thinking, but after weeks of “No Response” and HE reboots, I haven’t had the issue for several days.
While trying to debug this issue, I created a “is HomeKit connected” rule.
I created two virtual switches, pingHome and pingAck, and shared them with HomeKit.
I added a simple HomeKit Automation that turns on pingAck whenever pingHome is turned on.
In the rule, I first turn off both switches and delay for a couple of seconds.
Then I turn on pingHome and wait for pingAck to be turned on, with a 20 second timeout.
Then I check if pingAck is on (or if it timed out.)
I log the result.
The rule is triggered each minute.
Well, I got timeouts, but the next attempt one minute later ALWAYS succeeded.
Checking the logs revealed no suspicious activity.
So, I put two of the “both off, delay, pingHome, check for pingAck” sequences in a row and only checked if the second one failed. It hasn’t yet, and the No Response issue hasn’t returned.
I have recently moved the check to once every 15 minutes and I only log failure (none yet).
I’m a happy camper for now.
Nice, so maybe the people who do not have problems have much more activity on a regular basis? Seems like you just sending out those keep alive checks might be enough to keep it going.
Many people might have things like temp sensors shared which send out frequent updates, do you have any of that or only switches and other normally idle devices?
I only have a few but they only update on delta change. Most everything else are lights, doors, etc.
To @Hubitat_Staff : If we had debugging or logging on HomeKit Integration, it would make these issues much easier to understand and solve.
I am not sure, I pretty much open/close my garage door 2-3 times a day.
Yeah I was thinking more of at least hourly. Maybe something like @TArman setup just like flipping a switch back and forth once an hour (or every 30 minutes) would be enough to keep it alive.
Currently ping it every 15 minutes but will try 30 to see if works.
As @TArman said, we need to be able to diagnose what's happening with the Homekit integration. The only thing we have is whether something is connected to it (and I think that's the Home Hub that provides external access to HomeKit, an AppleTV in my case)
I have devices on three hubs connected to HomeKit. Two of the hubs have fairly frequent updates as they have thermostats with temp/humidity sensors. The third hub however, has no regular updates at all. It can be weeks between HomeKit making requests of this hub. However there are still no problems commanding these devices when requested.
@jtp10181 Looking at mine, it's mostly lutron switches, door locks, and some outlets and a thermostat. No sensors. Not sure if any keep alive checks are being sent.
FWIW, if I were looking for a potential difference between those that work and those that don't, the first place I would look is to the device(s) managing HomeKit. In my case, I have two AppleTV 4Ks that provide the management, and have no HomePod devices at all.
I would also look to confirm that each and every Apple device that shares the Home has been upgraded to current version of Home (management by AppleTV/HomePod). If any of them are older devices that cannot be upgraded to the current version, they should be removed from Home. If you have any "ghost" Home devices, they should be removed as well. Be sure to reboot all the management devices following this.
Hopefully @Hubitat_Staff gathers that info to help with debugging.
I have a 1080p ATV on one site and a 4k ATV on the other, latest TvOS on both. No Homepods. All sites are upgraded to the "newer" Homekit. No ghost home device. Everything has been rebooted a thousand times.
Here it’s:
HomePod Mini 17.5 (21L5558d)
I have several possible hubs. To be perfectly honest, I don’t know if this was the active hub when I had all the issues.
Home seems to prefer a Mini and as far as I know it only switches when I update the Mini’s firmware.
I have 3 minis and 3 4K ATVs. All on 17.5 latest beta. Since connecting the ATVs to Ethernet, an ATV is always the Home hub. Zero issues
Good point. I forgot to mention my AppleTVs are connected via Ethernet. Hubs as well.
Even with 2 4K Apple TVs on Ethernet, HomeKit will always choose one my two HomePod Minis.
Also, tickling the HomeKit interface every 30 minutes is (appears to be) keeping it happy.
I will try hourly soon.