[RELEASE] Presence Plus - Creates a combined presence device

Introducing 'Presence Plus'
Creates a combined presence device that can be used with BPTWorld Apps, Google Assistant, Rule Machine and More!

This is a simple way to combine presence sensors. Built with other BPTWorld apps in mind, this will make it easier to expand the functions of other BPTWorld apps that rely on 'Last activity' data.

Features:

  • Combine sensors to make one unique device reflecting presence
  • Uses Presence, Motion, Contact Sensors and IP Ping (C7 only) to determine Presence
  • Ability to use different sensors to detect present or not present
  • Ability to choose 'or' or 'and' when selecting multiple sensors to combine
  • When using 'and' you can set the number of sensors required to change status. ie. 3 sensors picked but only any 2 required to change status
  • Advanced Arrival section giving users a second set of arrival options
  • Automatically creates new unique device virtual device
  • App runs anytime a sensor changes state
  • App also has a 'Failsafe' that will check every X minutes
  • Parent/Child App structure
  • Create as many child apps as needed

Apps can be found on my GitHub or by using the Hubitat Package Manager.
(HPM is highly recommended)

When reporting problems...

  • Be sure you are on the latest version. I won't troubleshoot an older version.
  • Turn on debug and screenshot the issue happening in the log. One line or just the error doesn't cut it. I need a log.
  • Post the screenshot of the log with an explanation of the problem.

Thanks

4 Likes

Thanks for this. Can you elaborate on what the purpose of the switch is? If i manually turn off the switch it sets "not present". Will this override stay in effect perpetually? Or just until the next event? (My use use, if it works thusly, is to turn off presence indefinitely to prevent accidental arrivals.)

It's mainly for use with Google Assistant. I haven't tried yet but it should make it easier to setup Google routines based on this switch (presence sensor). But it can be used to trigger just about anything.

Oh and it will reset on the next 'check'.

Thanks

1 Like

Wait, there is now finally the option to create GA routines triggered by presence sensor? I want that too, but wasn´t ever been able to do that :confused:

I'm using Homekit/Homebridge to flip a virtual switch in HE when I arrive/leave home. I can't use a virtual presence sensor, as homekit sees sensors as a read only device. Consider adding an option to track switches as well, for this sort of situation.

(Unless there's a better way to do what I'm doing, then your eager pupil awaits!)

Have you considered using @ogiewon's Virtual Presence with Switch. It is described here.

I use it with the Alexa app, in which it can be used as a switch; changes in the state of this switch result in a corresponding change in presence at the Hubitat end.

3 Likes

Hmm, that could work. Thanks.

I'm not sure what I could be doing wrong, but I'm not having any luck with this.
After switching to a different driver for my homekit derived virtual presence, I added both that device and the hubitat app based iphone presence device to presence plus last night for everyone in my family. From what I can tell though, Presence Plus doesn't seem to be working at all. It doesn't update when either of the source devices' presence changes, for any of us.

Would need to see a log...

Sorry, took a bit to get a somewhat concise log while reproducing the issue. Does this help?

Like @aaiyar mentioned you should consider using @ogiewon's Virtual Presence with Switch. It works well with with the Home app to trigger presence in HE.

Are you saying that the driver I'm using is the issue here? I did switch to a different driver, and while it's not the exact one linked to, it's very similar, but with a bit more logging and such. That virtual presence sensor is working just fine, but Presence Plus doesn't seem to see it change.

It does! Notice at 19:04 it has ArrTriggerType: null. That's a problem, lol.

Do me a favor and go back into the app and under 'Arrival Options' toggle the 'Trigger and/or' option and retest.

Thanks

New version on Github...

Child:
V1.0.1 - 12/05/19 - Tightening up some code.

Now it seems to be updating.

So is that toggle switch actually backwards? It should take both input devices changing in order to change the output device with the toggle turned on, right?

Great!

No, it just wasn't working correctly.

Ahh, I see now - Having toggled just the arrival option to AND, it was effectively working as if both arrival and departure were set to OR.

2 Inputs Present
1 changes to NOT present, triggering departure
1 changes back to present - This triggers arrival, not because 1 changed, but because both are present again.

I'm trying to figure out if this is possible but I don't see a way to do it with just the single and/or toggle (I was using presence governor before but that wasn't seeming to work at all for me, it never set anything to not present)...

if iPhone = present -> Present
else if Life360 and Hubitat App = present -> Present

If Life360 and Hubitat App != present -> Not Present

I can't see a way to do this.

Sorry, this won't do that either

Hi, thanks for the app!

Would you consider adding an arrival/departure delay before the status is updated? Might cut down on the number of child app status changes (present/not present) when using devices like a WiFi presence sensor.

Download the Hubitat app