I’m using Home Assistant on a Raspberry Pi via the distributed image (e.g. not running in a docker container of my own creation say on a Linux server). That said sometime in the past few months my Apple devices (e.g. iPhone / watch) started getting no response for all bridged devices at some point after restarting Home Assistant.
Reviewing the material found via Google search didn’t help with most people pointing toward issues with the network configuration. In fact in my case I have Cisco enterprise gear, but with a less complex network than many people have at home where I had not made any changes to the network configuration. Thus I was mostly convinced that my network wasn’t the cause. Note it’s not my network as discussed below.
That said using an app known as Discovery (e.g. mDNS browser) running on a Mac attached to the core switch, I could see that Home Assistant stopped advertising HomeKit after a period of time. It was very clear why there was no response on the iPhone Home app…
Adding " zeroconf:" to the HomeAssistant configuration file appears to ensure that HomeKit is advertised over the long term (e.g. not just after HA is restarted). But then I noticed that the container’s IP address is part of the advertisement, thus there was no way to talk to HomeKit given it is a different subnet. Adding "homekit: ip_address: " forced the proper IP address into the advertisement.
Does this solve the problem? I’m still a little skeptical, but with these additions to the configuration file HomeKit is still alive overnight…something that simply hasn’t been the case for months.
My hope is this information might be of use to someone else struggling with a HomeKit integration on HomeAssistant.