Fairphone 6 e os not updating device loction

Hi forum,

Any fairphone 6 /e/os users out there? I’m having a bit of a nightmare with device_tracker updating and I must have read Location | Home Assistant Companion Docs 20 times now…!

Symptoms
In the companion app > troubleshooting > location tracking logs I see:

  • often “not accurate enough” (~9000 values reported here)
  • often it doesn’t appear to even try to send a location - hours go by without an attempt
  • zones work well - if I’m in a zone it seems accurate

My settings
Android settings: location enabled, all of the time, using precise location
Companion app sensors:

  • background location enabled (minimum accuracy 200, location sent: exact)
  • high accuracy mode off
  • geocoded location enabled
  • single accurate location enabled
  • location zone enabled

Not sure what else to try. My only suspicion from the docs is the reliance on Google services, which /e/os might be blocking…?

Any help much appreciated, if anyone’s had a similar experience.

Matt

I have a Fairphone 3 with e/os, but I haven’t been using location. I’ll copy your settings and give it a try.

I notice that Single accurate location and Geocoded location have an “include in sensor update” toggle. What have you done with those?

The Geocoded location sensor says that it uses Google’s Location API.

Is your Geolocation exposed in Advanced Privacy?

Are you using the full companion app or a minimal one?
The light one does not support geolocation and other stuff, which is typically also mentioned in the app description.

Full companion app.

@jackjourneyman i have the toggle for sensor updates enabled.
Geolocation in Advanced Privacy is exposed (e OS thing, for other readers :slight_smile: )

you should read this entire section as it goes over everything, keep reading after checking the configuration as it goes into detail about what else you may need to change

https://companion.home-assistant.io/docs/troubleshooting/faqs/#device-tracker-is-not-updating-in-android-app

OK. So I’ve duplicated your settings and let it run for 24 hours…

  • I am also getting a lot of “not accurate enough” in the log
  • When it works, location appears to be sent successfully about once a minute
  • Where send fails and I am at home the gaps are only 4-5 minutes
  • When I was out yesterday afternoon I had a continuous stream of “not accurate enough” lasting about three hours.
  • I notice that the value of the geocoded location sensor in HA is GB-DOR. This never changes.

Looks as if “GB-DOR” is a placeholder supplied by e/os to replace the location from Google - which means that HA’s geocoded location sensor on these phones is never going to work.

My understanding is that even with geolocation exposed, e/os uses a different service (beaconDB.net?).

Still, that was the point of getting a Fairphone, right? :grin:

Appreciate the effort @jackjourneyman
Indeed, that was the point. Was hoping for some private location tracking between e/OS and homeassistant, but perhaps not :slight_smile:

whats the reported accuracy for the skipped reports? have you considered changing that setting per the docs linked?

also if you see gaps in the logs thats actually google not telling the app when it got an update, but the app should attempt to re-register every 15 minutes or so

I did have a play increasing the minimum accuracy, but that meant I was getting less accurate updates (of course) which were not really useful.

The updates skipped because they’re not accurate enough can be huge - values ~9000 seen.

so those values are what we get back from Googles services, not much we can do there unfortunately. Have you tried maybe calibrating the GPS on teh device? I also find using google maps for a second may also help make things better

same, I found using maps app gave it a bit of a ‘kick’ :slight_smile:

It’s been interesting learning about the dependency on google here. I thought the device could establish its location itself (GPS, wifi, bluetooth, etc) then just send over to homeassistant server.

I also find the dependency interesting given homeassistant’s stance on privacy… but maybe that’s another topic :wink:

1 Like

Location and geocoded location are not the same.
Geocoded location needs to look up the location in a database somewhere.

My understanding is that e/os doesn’t just block Google, it actually spoofs some data that Android needs to work. Sounds like that’s what happening here - Google is getting what it considers to be valid data, but it’s meaningless when returned to HA.

Indeed. :thinking: