HomeKit integration breaks approximately every day

Hi,

Platform version: 2.3.9.158
Hardware version: C-7

I'm using the Apple HomeKit integration app. I've found all the devices go "No Response" nearly every day. This is true despite me enabling the "restart hourly" option. I've found I have to restart the entire Hubitat device for it to recover from this failure mode.

This has become a serious drag. Is there anything to do?

Here is a possible work around. I think after playing with it more he has it doing the ping test only every 6 hours now and still working. Its possibly overly complicated what he came up with, might be as easy as having a virtual switch you just flip on and off every hour to keep the connection alive.

1 Like

I’m having this exact same issue on both my C7 and C8 Pro hubs. Will try the ping trick and report back.

@thebearmay wrote a small device driver that allows you to schedule a HomeKit service restart whenever you like. I run it at 4:30am everyday via RM. I found the hourly option in HE caused more issues than it solved, and my feedback to the team that every 24 hours was ideal, apparently fell on deaf ears.

https://raw.githubusercontent.com/thebearmay/hubitat/main/hkRestart.groovy

1 Like

Been running the “ping” every 6 hours since April 30 (see link above) and have had ZERO “no response” issues.

The daily service restart solved it for me too.

This has got me thinking. I have never had issues with unresponsive Hubitat devices on either of my hubs in Apple Home, but I have about a dozen automations setup in Apple home. They’re mostly for virtual presence sensors, but I have 4 kids and someone is always coming or going. I wonder if you could get away with only having the switch automation in the Home app.

We use SIRI a lot to control lights, garage door, locks, etc., but still got regular “no response” lockups until started the ping/ack. YMMV

Same for us.

The only automation I have in HK is for the presence-related virtual switch for me & the wife, and there are stretches were we're both home for a couple/few days, so those switches don't see guaranteed daily use.

I've never had a HK unresponsive event (that I know of!), so I'm definitely curious to hear what finally resolves this for folks.

1 Like

Another data point to drive you all crazy. I have 7 hubs with HomeKit Integration. None of them get in the unresponsive state. None of them have the 1 hour restart enabled.

:exploding_head:

Hi @dJOS,
I am having the same problems and I am attempting to use your fix and mirror what you have.
That being said I am not seeing anything listed under actions that would allow me to use push() on HomeKit Restart Service.

Did you add a virtual switch to make that appear?
Also under the local variables I am not showing a device in the drop down for the type and the closest thing I was able to get was string.

I am clearly doing something wrong and am new to the habitat/smart home world

Thanks!

1 Like

The button device type is actuator.

Just use the “Run custom action” option Rule Machine.

Looks like this should be fixed now - I’ve turned off my service restart and will see what happens.

  • Added periodic push to the HomeKit integration to keep AppleTV/HomePod connections alive.

They have not sad how much overhead this will be? Is any better than using homebridge?

It’s unlikely to be noticeable or measurable at all, it’s just a simple, scheduled keep alive message.

I haven’t used the Hubitat HomeBridge integration for quite some time, so I really can’t compare the two any more. Once the Hubitat HomeKit integration did everything I need it to, I ditched the integration. I do still run HomeBridge, but only for camera integration to thethe Home app.

1 Like

Thank heavens! I hope this fixes it!!! I will turn off my hourly reboot to see if this fixes it too, @dJOS! I really hope so! Rebooting my hubitat every two hours (and that still wasn't enough) was tiresome!

BTW: This is how I hacked to reboot (crontab on my Mac):

# Reboot Hubitat
###10 * * * * /opt/local/bin/curl -X 'POST' 'http://hubitat.local./hub/reboot' 1>/dev/null 2>&1

If that’s what you needed, I’d suggest you had a much bigger problem. Have you asked @bobbyD or @support-agent to take a look at your engineering logs?

I haven’t had my HomeKit integration fall over since upgrading to .162, so the keep alive messaging seems to be working well.

Same here. The PING is dead, long live the Keep-Alive!

2 Likes