I setup the geofencing on 2 phones. My iphone and wife's android.
Hubitat app installed on both phones, both have separate hubitat accounts logged in. Both phones are set to "always on" for the Hubitat app location. The geofence on both phones is set correctly and identically.
We tested it driving out today together. With both phones open on the Hubitat app with the geofencing screen. When my wife's android showed her location move outside the ring, it switched to "out of geofence"
On my iphone when my location moved outside the ring it stayed in "inside of geofence" and wouldn't update even miles away. I had a rule setup that checks for a change of mode (away vs home) that gets set by the Hubitat geofencing rules that sends me an SMS when the hub switches modes (home vs away).
That message didn't get triggered until I shut down the Hubitat app on my iphone and restarted it. It then showed me outside the geofence and I got the message from the hub the mode changed when it saw both phones gone.
So it looks like it isn't just the app screen that isn't being updated, it actually wasn't even sending the out of geofence message to the hub until I restarted the app.
Is there something in my setup that I should be looking at?
I have never got my iPhone 12 (ios 14.4) to work as a reliable presence within Hubitat. (it was a bit flaky in ST as well). In fact, as I recall, I dont think it ever worked.
Within Home Assistant (HA) it is/was dead on. I swear if I put one foot outside the geofence it would trigger. Ok, I exaggerate, however....
Anyway, having it work within HA doesn't help me within Hubitat so I simply have HA update the Hubitat iPhone presence . This is working so well I haven't bothered to find out why it isn't triggering within Hubitat. Given that my HA installation is on its last legs, I am keeping an eye on this thread to hear what the pros have to say.
I think all the geofencing apps are all a bit flaky because of the way ios / android deals with background apps. I have tried many and none have managed to be even close to 50% reliability, even with multiple apps running, I can't even guaranty that it will be reliable.
The only thing I found that was 100% spot on are Zigbee key FOBs but they do use up a batteries fast (need to change them every 3 months or so). In some cases, like on my boat, I have it hardwired on the boats battery, just before I get to the docks, dock lights dim up and the backyard lights turn on for a safe docking.
After taking my wife out for a test I found out she almost always leaves her gps disabled. That and she's not on speaking terms with Alexa. So for her I'm going to have to just make a custom dashboard. And probably scrap the geofencing. I already have alexa triggers to put the home in away mode when we leave and to put it in home mode when get back.
I have both an ST hub and a HE hub.
iOS presence works very reliably on the ST hub, but not on the HE hub.
Makes me wonder if it’s a HE issue, not just an iOS issue.
So for my purposes, I get the ST hub to report my presence to HE, via hubconnect.
This is a temporary solution...until mobile presence works reliably on HE (if it ever does).
Yes, fobs tend to work well...if you remember to take them with you when you leave the house (mine used to be attached to my keys, which I wouldn’t necessarily take out with me!)
I've also found presence to be flaky with the Hubitat iOS app. Because of that, I combine it with another method to increase reliability. I have a HomeBridge instance set up, so I'm exposing a virtual switch to that, and I created an automation in HomeKit to turn the switch on and off when I arrive and leave home. This still misses things on occasion, but I think it's because my HomeKit Hub is an iPad and might be aggressively power-conserving. I'm going to see if switching to another device helps.
In any case, this is something I've seen lots of people do, and the idea is that you can combine multiple presence devices into one (via a custom app or a rule; I'm just using a rule) with whatever logic you want. My rule just changes my "proxy" device to the state of any "real" device if that device changes, since my problem is that the real devices occasionally don't actually change. This would be a poor solution if you were trying to solve the problem of dealing with phantom/spurious changes.
Besides HomeKit, other things I've seen people use are Life360, an Alexa presence routine, SmartThings, or webCoRE. But yes, it would be ideal if the app worked 100% of the time. This is something I'm doing until that day comes, if it does.
I turned off the geofencing using both phones to flip it into away mode. And only have it setup with the arrival presence detecting either phone returning home. That should handle things when one phone has its gps turned off or its flaky and only used to turn things back on and its no big deal if it doesn't trigger coming home.
Then I added a couple virtual switches with Alexa triggers for "Alexa, we're leaving" or Alexa, we're home" which sets the mode to Away or Home. Then I'll have more immediate feedback walking in/out if the mode got set.
Then the rest of the HE triggers will fire as they should based on the presence change and mode.
And the dashboards on the phones have the mode change button as well.
FYI, I have noticed after taking a few trips out to test the geofencing on the iphone. When I have the Hubitat app running so I can look at the geofencing circle and when it says I'm in or out of it. It never detects I've left or returned.
If I have the app shut down it detects I've left and returned right when I get out of the circle. I have the Hubitat app settings to "always on" in the iOS settings.
I have a RM rule that when it detects the hub has set Away or Home mode it fires of an SMS text message with Twilio so I can tell when the detection happens.
I've had a similar problem but with android phones. My wife and I have the same phone. Android 9 on mine hers Android 10. My phone shows presence correctly. Her phone does not seem to update her presence unless she starts the Hubitat app. When installed I chose the option to be "always on"
Not sure what is causing the problem.