Jump to content

Geofence Application


pjjameso

Recommended Posts

Using Geofency app to indicate whether Im home or not to send a post command to set a state variable (1 Home, 0 Away).  Would like to have the alarm turned off when I arrive but not interfere when im setting the alarm and leaving the house. I believe the following program will work but was wondering if there was a more eloquent method you may suggest.

 

Paul Away - [iD 0049][Parent 004A]
 
If
        Elk Area 'The Jameson's' 'Arm Up State' is Armed with Exit Timer
 
Then
        Wait  5 minutes 
        Enable Program 'Paul Home'
 
Else
 - No Actions - (To add one, press 'Action')
 
        
 
Paul Home - [iD 0048][Parent 004A][Not Enabled]
 
If
        $sPaul.Is.Home is 1
    And Elk Area 'The Jameson's' 'Armed State' is Armed Away
 
Then
        Set Scene 'Welcome Home' On
        Set Elk Area 'The Jameson's' Disarm
        Wait  5 minutes 
        Set '1st Floor / Kitchen / Camera On-Off Bot' Off
        Disable Program 'Paul Home'
 
Else
   - No Actions - (To add one, press 'Action')
 
 
 

 

Link to comment

That method gives you a fixed 5 minute window to get out of the geofence before chancing disabling the alarm. There is the possibility that the phone/isy will miss the fence exit as well.  Here is what I do for some of my proximity based features:

 

Define 2 fences: Home (a small radius around the house), Neighborhood (a larger radius centered on the house but extending out maybe 250 yds)

Define an integer variable as a flag:  i.ArrivedHome  This gets set to 1 when you enter your home fence area and 0 when you exit the larger neighborhood fence area.  I do this mostly due to my phone drifting in/out of the smaller area and defined the larger area to exceed the nominal drift by a margin.

 

Then have your program take the var into account:

 

If 

   $sPaul.Is.Home is 1

   and $i.ArrivedHome is 0

 

Then

   Disarm

   $i.ArrivedHome = 1

 

Here is the prog to manage the integer var:

 

If

   $sNeighborhoodFence is 0

 

Then

   $i.ArrivedHome = 0

 

 

This way, you have to leave the larger neighborhood fence then come home again before it will auto disarm.  There is still the possibility that it will miss fence crossings but in this scenario it fails secure rather than insecure.

 

Hope this helps.

 

-Xathros

Link to comment

Hi Guys,

 

For those with ISY Portal and 5.0.10 firmware:

http://wiki.universal-devices.com/index.php?title=ISY_Portal_Node_Server_Occupancy_%26_Locative_app_Instructions

 

With kind regards,

Michel

 

Hi Michel,

 

Yep!  I switched over to using portal nodes for my geofence applications a while back.  I love the simplicity and using the portal for all of my external interfaces keeps my ISY happily behind the firewall and secure.  Still, the weak link appears to be the phone and geofence tracking in iOS.  I often have a node stuck true because I had weak cell service when I exited the fence or was transitioning between WiFi and LTE or whatever.  When I was using state vars to track my fences, I was able to rest all other locations when entering/leaving a fence so if one of the others was previously missed it could be updated.  With the nodes, I have no way to reset a locations status without leaving/re-entering or entering/leaving that nodes fence again.  It would be nice if we could set the true/false status of the node under program control as a workaround but that seems to go against the ISY's design philosophy I think.  I suppose I could write some network resources to call the other nodes in/out URL's at the portal from the ISY but this just seems silly.

 

Your thoughts on this are most welcome. :)

 

-Xathros

Link to comment

That method gives you a fixed 5 minute window to get out of the geofence before chancing disabling the alarm. There is the possibility that the phone/isy will miss the fence exit as well.  Here is what I do for some of my proximity based features:

 

Define 2 fences: Home (a small radius around the house), Neighborhood (a larger radius centered on the house but extending out maybe 250 yds)

Define an integer variable as a flag:  i.ArrivedHome  This gets set to 1 when you enter your home fence area and 0 when you exit the larger neighborhood fence area.  I do this mostly due to my phone drifting in/out of the smaller area and defined the larger area to exceed the nominal drift by a margin.

 

Then have your program take the var into account:

 

If 

   $sPaul.Is.Home is 1

   and $i.ArrivedHome is 0

 

Then

   Disarm

   $i.ArrivedHome = 1

 

Here is the prog to manage the integer var:

 

If

   $sNeighborhoodFence is 0

 

Then

   $i.ArrivedHome = 0

 

 

This way, you have to leave the larger neighborhood fence then come home again before it will auto disarm.  There is still the possibility that it will miss fence crossings but in this scenario it fails secure rather than insecure.

 

Hope this helps.

 

-Xathros

Xathros,

 

Thank you so much for the enhancement!  Makes sense, will give it a go when Im back home long enough to play (program!)  Curious as to why Michaels method using nodes would be any better than setting a state variable.  What am I missing (not that i have v 5 installed)? 

Link to comment

Xathros,

 

Thank you so much for the enhancement!  Makes sense, will give it a go when Im back home long enough to play (program!)  Curious as to why Michaels method using nodes would be any better than setting a state variable.  What am I missing (not that i have v 5 installed)? 

 

Happy to help!

 

Using the portal and occupancy nodes on V5.xx makes for a simpler setup.  Otherwise the functionality is mostly the same with one exception that it makes it a little harder to correct for missed fence transitions when using the nodes vs variables.

 

-Xathros

Link to comment

I assume that this works better than the Mobilinc Geofencing.  Can anyone confirm that?  Thanks

 

I have no hard data but it seems to be about the same to me.  Biggest issue I have with geofence using my phone is that my phone will often miss a fence transition (mostly exit) due to weak cell service or because I'm transitioning from WiFi to cell as I leave the fence.  Using Mobilinc or state vars called from Locative via the portal allows for me to update the other fences status whenever another boundary is crossed (If, I'm here, I'm not in the other places...).  With the Nodes, that update is not currently as easy.  Now, if Locative or some other geofence application could update all of the fences with each fence transition or even on a timed basis, that would be a better solution in my opinion.  Any iOS coders out there wanna build a better mouse trap geofence app?

 

-Xathros

Link to comment

Problem is, all geofence apps rely on IOS APIs. So, all are going to behave about the same...

 

On Android, I'm holding out for Agave to add a geofence function (registering the device against ISY Portal as well as managing locations to fence).

 

Another option, now the Locative app is open source, any IOS developer should be able to take that and add ISY Portal registration and location management to make it a better product. However, basic reliability likely won't change because it all depends on device APIs.

Link to comment

Problem is, all geofence apps rely on IOS APIs. So, all are going to behave about the same...

 

On Android, I'm holding out for Agave to add a geofence function (registering the device against ISY Portal as well as managing locations to fence).

 

Another option, now the Locative app is open source, any IOS developer should be able to take that and add ISY Portal registration and location management to make it a better product. However, basic reliability likely won't change because it all depends on device APIs.

 

I understand the limitations of the apps based on the APIs but there are some things that could be done in-app to improve the functionality.  Specifically, remember the state of each geofence and if it's state is wrong when transitioning a different fence, update the state and call whatever web hook/notification/action is associated with it.  I'm doing this to some extent in the ISY right now.  If I enter a geofence and the ISY shows that I'm still in a fence that does not overlap with the one I just entered, this means that I missed the exit notification from the other fence and it needs to be updated to show me NOT there. An option like "Exit non-overlapping fences when entering a fence." would suffice.  Earlier this week I had a situation where the ISY saw me at Home, Work and the supermarket all at the same time.  The home and work fences are 10 miles apart with the supermarket roughly half way between.  Both home and work often miss the exit as both are in weaker cell coverage areas and I'm often making the transition from WiFi to Cell at the time of exit.  The supermarket fence in a good coverage area hasn't failed once that I'm aware of.  More likely because I'm  not switching between networks as I come and go from there.

 

-Xathros

Link to comment
  • 8 months later...

Hello everyone,

Just wanted to let you know and Geo Fencing V2 is now live on ISY Portal. This will allow you to control the geo fencing nodes from the Admin Console (or other clients) in addition to Geo Fencing apps. 

Also, thanks to Fernando (@OneClicktoControl) , we now have an Android version of our own Geo Fencing app for Android. For those interested in testing, please send your request to support@universal-devices.com for instructions. 

With kind regards,
Michel

Link to comment
  • 1 month later...
  • 3 months later...

Has anyone tried locative with iOS 12?  I have tried locative, it locates where I am, but never goes green.  Tried resetting phone, etc...no luck.  Made the radius as big as it will go, but still no green....

Are there any other options available?

Thanks 

Kevin

Link to comment

Thanks PurdueGuy,

When you go into the geofence that you added, does map show a red or green ring around the pin?

i was under the impression that when you are ‘home’ in your geofence, it would turn green... mine is always red...

My ‘get’ tests work fine...

Thanks

kevin

 

Link to comment

Ya, so weird...it just doesn’t work....

i have tried setting gps to ‘always’ and that still does nothing.

i am using an iPhone 6...but I can’t see why that would make a difference.

The testing through the app works fine, so I know it’s setup correctly.  

I may try some different iPhones.

Link to comment

Archived

This topic is now archived and is closed to further replies.


  • Recently Browsing

    • No registered users viewing this page.
  • Forum Statistics

    • Total Topics
      36.9k
    • Total Posts
      370.2k
×
×
  • Create New...