Geofences battery impact

Hi guys, I'm creating some geofence-based macros and I have some questions about their "cost-efficiency":

1 → What is the impact of a geofence check on battery drain? Is it really noticeable if the checks occur at 5-minute intervals?

2 → I have many geofences, and it seems like each one can have a different update rate. Is this true, or is the update rate the same for all geofences, being set when we configure the last one?

3 → In the case of multiple geofences, does MacroDroid update just once, and then use the collected location data for all the geofences, or does it update every geofence separately?

4 → If I'm using a location-based app such as Google Maps or Waze, which updates location very quickly and frequently, does MacroDroid "borrow" this location data "free of charge" from them, or does it also drain some battery to obtain its own location data?

Thanks a lot for anyone who can help me with this! 😀
 

dhj49er

Well-known member
I'm not able to provide answers to your questions, as I don't know how MD has implemented this feature.
However, i can provide an insight to how I use Geofences and I have very good battery life.
Like you I have many Geofences including a few abroad (I live in the UK) but only have 1 or 2 active at any one time.
When I'm at home, I disable all Geofence macros.
When I leave home (loss of wifi) I enable Home Geofence.
I have calendar events for activities where I will be at a know location eg Dentist, Relatives, theatre, camping to name a few, all of which have matching Geofence macros.
A control macro for each of the above triggers on the specified calendar event and enables the matching geofence macro. The control macro also triggers at the end of the specified event and the matching geofence macro is disabled.
I find this works well.
For example, I put a dentist appointment in my calendar, which i always do. On the day of the appointment the control macro triggers ( I set) 1 hour before the appointment and enables the Dentist Geofence macro. When I reach the dentist the Dentist Geofence macro entry fires and this mutes the phone. Likewise when I leave the dentist the Dentist Geofence macro exit fires and this unmutes the phone. At ( I set) 1 hour after the end of the calendar event the control macro runs and disables Dentist Geofence macro.
I expect your use case will be different, but the above might be useful and it avoids excessive checking of Geofence macros.
 

Dm114

Well-known member
I'm not able to provide answers to your questions, as I don't know how MD has implemented this feature.
However, i can provide an insight to how I use Geofences and I have very good battery life.
Like you I have many Geofences including a few abroad (I live in the UK) but only have 1 or 2 active at any one time.
When I'm at home, I disable all Geofence macros.
When I leave home (loss of wifi) I enable Home Geofence.
I have calendar events for activities where I will be at a know location eg Dentist, Relatives, theatre, camping to name a few, all of which have matching Geofence macros.
A control macro for each of the above triggers on the specified calendar event and enables the matching geofence macro. The control macro also triggers at the end of the specified event and the matching geofence macro is disabled.
I find this works well.
For example, I put a dentist appointment in my calendar, which i always do. On the day of the appointment the control macro triggers ( I set) 1 hour before the appointment and enables the Dentist Geofence macro. When I reach the dentist the Dentist Geofence macro entry fires and this mutes the phone. Likewise when I leave the dentist the Dentist Geofence macro exit fires and this unmutes the phone. At ( I set) 1 hour after the end of the calendar event the control macro runs and disables Dentist Geofence macro.
I expect your use case will be different, but the above might be useful and it avoids excessive checking of Geofence macros.
Very smart! 👍
 

MacroDroidDev

Administrator
Staff member
The Geofence trigger uses Google's implementation for this functionality. In theory it should be fairly battery friendly but your experiences may vary.

Any update values used in the Geofence are advisory only and the Geofence library decides exactly when to update. In cases where you are actively updating the location regularly (such as during navigation) then I would generally expect the Geofence to update more quickly than during normal operation.

For further technical info please see here: https://developer.android.com/develop/sensors-and-location/location/geofencing
 
Top