Mobile App Location sensors Minimum Accuracy

Hello,
Can someone please explain how exactly does the setting “Minimum Accuracy” function in the mobile app’s location sensor settings.

The option is present in most location subcategories: Background Location, Location Zone, Single Accurate Location.
The description is the same in all 3 categories: “The Minimum Accuracy setting will allow you to decide how accurate the device location (in meters) has to be in order to send to Home Assistant” but I don’t fully understand what they are trying to say.
For example my device is reporting the gps_accuracy of around 20, so does that mean that any values above 20 will constantly trigger since the device accuracy is under the setting? Or is the setting really about a maximum distance my phone has to move before reporting location update?
If someone could please explain how the settings functions (on all 3 categories, if they differ) I would really appreciate it.

Always start with the docs

@dshokouhi I have of course read the docs (I should have mentioned that in the first post), but there is no mention (much less an explanation) of this parameter. Am I missing something?

edit: ok to be fair there is an mention of it on the site Sensors | Home Assistant Companion Docs :

Android users will have a sensor setting for the minimum required accuracy, that defaults to 200m. Users may adjust this to fit their own needs if they find inaccurate reports or not enough reports. This sensor requires either Background Location or Fine Location permissions, depending on what version of Android you run.

but it does not explain it at all.

2 Likes

Looks like you totally missed and didnt read the section of the docs that I linked to.

Android users can find custom sensor settings for location tracking under Configuration > Companion App > Manage Sensors > Location Sensors. The settings allow you to adjust the minimum required accuracy for the location to be reported to Home Assistant. You can adjust this setting independently from Zone Tracking, Background Location and Single Accurate Location (first request we send). This will allow you to get faster zone detection while also being accurate when the app is in the background

Every location report that gets sent from Google to the app has a reported accuracy rating. If the minimum accuracy is set to 200 so any value under that will be accepted, any value over the minimum will not be accepted. You can look at the logs for location troubleshooting if you feel you are getting accurate reports skipped.

On the page that I linked to that describes how location tracking works we talk about the various attributes of the entity like accuracy:

And if you keep reading we mention:

If you want to know more about the specifics of these attributes, please refer to the relevant documentation of your operating system: You can then follow a link to documentation from Google on what it does as well.

Following that link you can see accuracy mentioned here: Location  |  Android Developers

Not sure how I missed that paragraph, I even used a search for keyword “minimum” :man_facepalming:

Ah so that’s how it works, thanks for the explanation. So I need to increase the value to get better accuracy / not got discarded reports.

I’ve implemented that high accuracy with zone constraint as described in the docs but was still getting unsatisfactory results, maybe it really was due to the fact that I had a lower than default Minimum accuracy value.
I’ll also check out the log the next time I feel the zone transition detection is not accurate.

(Also thanks for the android doc link. Interesting that it’s still only 68% confidence of position within an accuracy radius circle.)

1 Like