[RELEASE] Combined Presence

I'm still having weird issues with the combined presence. Nothing has changed from the screenshots I posted above. Currently, both GPS and WiFi are showing as not present, but the standard combiner for me is still showing present.

I examined the code to find any pathway that could explain the logs you posted, and honestly I'm stumped. My last ditch option: have you tried deleting the combiner and re-creating it?

ooh, one last thing: Just to double-check, you don't have anything else that could be setting the value of the output sensor?

Not yet. I'll try that later.

you don't have anything else that could be setting the value of the output sensor?

Nope.

Just to say thanks @jwetzel1492 for this app (and the Wifi presence one).

You pointed me to these in another thread where I was having a frustrated moan about HE’s inbuilt ‘presence’ functionality, or lack-of.

Lockdown means that I haven’t had the opportunity to test your app extensively yet, but it seems to do the job well on the few occasions I, or my partner, and both of us, have left/arrived.

I am using the Advanced Combiner to combine HE (mobile) presence, ST (mobile) presence and Wifi presence (ANY for arrival, but only ANY of HE and ST for departure...because, as we know, wifi presence ying-yangs every few minutes when at home).

What it has also allowed me to easily compare is HE vs ST presence. As I stated in the other thread, I am finding that my Smartthings iPhone presence is very solid, whilst the HE presence is completely unreliable...for me at least. I’d like to understand why. (IPhone settings: location, background refresh, mobile data, etc, settings are the same for both).

I’d would like to find another presence method to combine (and remove HE presence from my combiner)
Alexa is not an option (as geofencing not available in UK), life360 has not been working well....so, I’ll have to try and get my head around Homebridge in order to use HomeKit. (I won’t pay for a geofencing app). I do have a couple of ST fobs at the back of a drawer somewhere...haven’t used them for years as they were chewing through batteries, plus I don’t need any extra bulk on my, already bulky, bunch of keys. But perhaps they are due a resurrection.

When we are less confined to the house again...that’s when the real testing will start. That’s when the false ‘positives and negatives’ might start emerging, although I am assuming (partly based on experience) that I’m unlikely to experience false arrivals...just a lack of (timely) departures.

I’m also yet to play a bit more with the ALL and ANY combinations...although what I have so far seems to do the trick.

Thank you!

1 Like

Excellent! I'm glad it helped.

Fantastic.
Here is mine as well, similar model which really helps debuging. In particular the combo of Homekit + Wifi has made my system SUPER accurate.

As you can see, I have two overrides.

  1. "Someone is Home" is a single device (presence & switch) which I represent twice here, which let's me override if for some reason things are wrong. I can force everyone is gone or someone is present
  2. Guest override - if a baby sitter/dog sitter, grandmother, friend, whatever is here alone, I don't want my 'away' automatons kicking in.
1 Like

I'm a fairly new user that moved over from SmartThings a couple of weeks ago. After struggling with the Geofencing/Presence detection in the Hubitat app, I found your excellent Combined Presence and switched to Homekit, Locative and your iPhone WiFi Presence on all the family's iPhones.

Things were working great, but over the last two nights, my iPhone has shown several false exits that last less then a minute. This exit/return cycle causes several routines to fire.

The weird thing is that it's happened with both Locative and Homekit. Two nights ago, Locative acted up and showed that I left and returned around 1 AM and then again at around 6AM. Today I woke up to find that Homekit showed a false exit a few minutes before midnight and then again this morning at around 7:30 AM. Checking the other inputs during this time show they they all remained present.

I'm using the standard combiner and on both days it set my primary presence to away and then present for each of the false exits. I checked my logs and it seems that my WiFi presence was present during that time.

I have a couple of questions:

  • Is there any method for setting a delay in Combined Presence, so I can ignore these location glitches? If not, would you consider adding one?

  • Should my combined presence output have been set to away if my WiFi Presence was present?

  • Is there something I could do with the Advance Combiner to eliminate these glitches?

Again, thanks so much for the tool! I played around with the geofence options on Locative yesterday I've restarted my phone after this morning, so hopefully that will take care of the false exits, but hope that I can use the logic to prevent it from impacting my routines if it happens again.

Ok, so it sounds like your phone gps glitched out. And Combined Presence takes geofence departures as gospel. For my case, I tuned my geofencing radiuses to eliminate false departures. However, I also live out in the middle of a field. I've heard geofencing can be more dicey in a city with tall buildings.

Not currently. This would be a sort of "debouncing". That's the common term in electronics, for example if you require a firm press on a button before it registers.

I think if I were to build a debouncer, I would not build it directly into Combined Presence. I'd make a debouncer app that takes one presence sensor as input, and outputs to another virtual presence sensor. That way, if you had one geofencing presence sensor that was less reliable, you could apply debouncing to just it. And use the debounced virtual sensor as input for Combined Presence.

Yes, that is by design. WiFi presence can take a while to change to "not present". And if your geofencing sensors are working well, we want to trigger departure as soon as one of them departs.

No, it doesn't have any option that will help with this.

Thanks for your excellent description of the issues and thoughts on what might be going on. I'm hoping that I was just having GPS hiccups and that the restart will fix it.

However, if I need to create a debouncer, could I feed the physical presence sensor(s) though WebCORE (or Rule machine) when they trigger, wait for a minute and confirm that it is still not present and set a virtual presence sensor to pass through to Combined Presence? Would that be a valid way to do it?

1 Like

Yes, that would do it. Your piston is basically the same thing as what I was imagining a debouncer app would do.

1 Like

I'd highly suggest before you go and do that though, you dig as deep as you can on what your GPS issue could be, as you want your GPS as reliable as possible even with a debouncer.

1 Like

My Hubitat app location has not been working well. I've been using OR logic to depart if ANY of multiple sensors depart, so when BOTH my wife's presence and my presence departs because HE thinks we depart, the house is going into away mode while we are still home. It's happened twice today already. Granted, I had turned off High Accuracy presence to preserve battery life, so perhaps that has something to do with it. How are people handling Hubitat location from the Hubitat app?

If you're still using HE location in Combined presence, are you using something other than OR logic to address HE location inaccuracy? If so, what?

Or are you not using HE location at all in Combined presence (too inaccurate even with High Accuracy presence on)?

Any input appreciated - need some quick adjustments before the wife tosses all my smart home stuff out the window!

I don't use the presence from Hubitat's app. It hasn't been reliable for me. For geofencing, I use HomeKit and Alexa.

Then I use the Standard Combiners to get a good presence for each person. And boolean OR combiners to get combinations of people such as "Everyone is home".

1 Like

So any chance this feature request might be re-instated? :slight_smile: Would be useful for me...

EDIT: if you'd prefer, I could update and send you a pull request...

EDIT2: I coded it up. Was easy. I will beta test on my own system and send you a pull request when I've confirmed it's working as intended.

Really like the overrides & would like to set up something similar.

Can you explain further please? Thank you in advance!

Yeah, so as you see in that screenshot I have a virtual presence switch I call "Guest is Home", and I've included that as an input sensor into the combined child. So flipping that switch forces my home to know that 'someone is home'.

Here is my child app structure
Pasted_Image_4_5_21__11_23_AM

And here is what the "Someone is Home" combo looks like.

Thanks! I will attempt to set mine up!

1 Like

Yep.
I forgot to mention that "Someone is Home" is also a virtual presence switch, and that has been useful to force presencing being home or gone if one of my GPS sensors is off, knowing that it will self-correct on the next trigger.

For example and my wife and i leave the house, but her phone GPS is stuck, I can force "Someone is Home" to be off, and I know it will "just keep working" when her GPS get's back on track or when we get home. So I can override and forget, where Guest is very different.

Having issues with one of my housemates. We are all using combined presence to handle alarm. How is this scenario possible? All the devices feeding the combined presence show Not Present but the combined presence shows Present. Using "Karla Phone" which is iphone and uses the Hubitat app geo. Virtual WifiPhone is using the virtual wifi community app tied to a static IP. Presence Switch Karla is using IFTT location and hubitat flipping a virtual presence switch. All those feed into a Combined Presence.



There's one way from the logic that this could happen: The wifi sensors can switch output to "Present", but they cannot switch it to "Not Present". So, if the following sequence happened:

  1. Karla starts driving away from the house.
  2. All the inputs (both GPS and Wifi) switch to "Not Present". At this point, the output would become "Not Present".
  3. The wifi gets a tiny signal and switches to "Present". The output switches back to "Present".
  4. The wifi signal is lost for good as she drives away. It becomes "Not Present", but the output stays as "Present".

If this had happened, you'll probably see "Present" -> "Not Present" -> "Present" fairly close together in the logs of the output sensor.

The solution is to ensure that your geofencing boundaries are larger than the effective range of your wifi.

1 Like