if location is disabled on the device or permissions were denied then the location sensors will be disabled. This is why as part of the troubleshooting steps I linked to previously in this thread have you go through the sensors among other things.
I guess you didnt take a moment to read the thread and find the troubleshooting steps I linked to previously, here they are again.
if that fails then continue reading this thread for additional help, we cover a lot here.
as you had the same issue then you should also run through the troubleshooting steps up above, even if you see they didnt work for one user doesnt mean they wont help you as you can see down below another user found the steps helpful.
to anyone else coming here, please make sure you not only read the entire thread but that you also go through the links and try the steps mentioned and if that fails get the logs as mentioned too. We have troubleshooting steps for a reason and we also do extensive logging around location to be as helpful as possible.
Iāve read through the thread, and Iām almost afraid to ask, but here goes. Can you explain to me like Iām five years old, how exactly the 2 sensors, entities, device trackers or w/e it is are different?
I have both of the things on the HA dashboard and walk to work, the geocoded location updates at points I would just love the device tracker to update as well, but that one doesnāt. Why canāt the geocoded location tell the tracker it changed? I just donāt get it.
Right. I took the steps, enabled the locations things in the companion app, and my devicetracker works again like it did before!! Thanks a lot for your efforts!
However, weird that the geocoded location works all the time, and the device tracker stops working for some , to me, unknown reason, and only starts if i enable some āfar away hiddenā options.
So app settings and then managing sensors is considered a far away hidden option? Thats the only place the app can do enabling of sensors.
Has a state that is a physical street address and only updates when sensors are updated and is not based on a subscription because that is not how the geocoded API works from Google.
The other waits for updates from google and only sends GPS coordinates because that is how fused location tracking works.
More details including direct links to Google can be found below.
Because device tracking is dependent on google giving an update, not the other way around. You have to subscribe to google to get updates. You should really look at the links and then look at the logs as mentioned several times in this thread to troubleshoot. There is no magic wand to wave, we have outlined all details but for some reason steps keep getting missed.
I had the same issue. I just got a new phone and it was only tracking my old phone.
I checked everything but nothing seemed to work.
Then I deleted the new phone from " integrations " and uninstalled the app on the phone.
I re-installed the Home Assistant app on my phone (making sure when I gave it its name to check the tracking slide to on) and it now works and shows me my location.
Hi there, the thread title exactly describes the issue I am having with my device tracking ie device tracker not updating but geocoded location working fine. After reading through a lot of the thread (but not all two years of it!) and following the much referred to troubleshooting steps it is still not resolved. However your response here helps me to see what I think my problem is.
First of all my device is a Fairphone 2.0 running āde-googledā /e/ OS which is essentially a fork of Lineage OS with MicroG and made a lot more user friendly to configure (idiot proofed?) than standard LineageOS.
So, if I have understood you correctly you can see what my problem is: I do not have a google subscription so I donāt have access to their servers for fused location tracking to work and hence my Home Assistant Companion app cannot give a device tracking update to my HA server. Does this sound about right?
Assuming it is can you (or anyone else) give me a hand or refer me to any information that would allow me to use the less accurate, address based geocoded location for my person or device tracking for when I am away from home? Or any other non-google alternative? Iāve got the WiFi IP device tracking working and can probably use my various ESP32s for Bluetooth tracking at home but Iād love to be able to setup some zones around my local area so my HA server can track me away from home.
Secondly can you or anyone else give me some suggestions/references/terminology I could use to request a feature from /e/ Foundation/MicroG to support the fused location tracking functionality in some way? I would put my hand up to look at this but Iām a systems integrator/network engineer not a coder so Iād probably be more of a hindrance.
Thanks for helping me to achieve some sort of clarity.
Thanks @Hellis81, I had a look and as you say it seems to harvest data although they say they donāt on-sell it even though their privacy policy allows itā¦ But then I discovered the OwnTracks integration. It requires another app on my phone but itās open source, only seems to communicate with my HASS server and sounds like it is written with data security/privacy as a priority. It sets up a new device tracker which I can attach to my person entity. Working so far - nice to finally see my person entity on the map!
#I have the same problem. The thread got very long, so sorry if I missed some information. However I think this is NOT an app problem, as in Home Assistant, the correct location can be seen in the geocoded_location entitiy. However, this is not reflected to the device_tracker entity.
Thank you, but those actions all aim on an app not recieving / sending location updates. However, my location is updated fine in the geocoded location entity - Home Assistant is just not using that information.
I will try to completely remove the devices from HA and reinstall the app like somebody here suggested.
the stepās are specifically for a device_tracker entity not updating. Notice how the words āgeocodedā was never used. Please follow the steps outlined as they are designed to help you out.
Ok, I will try that as soon as my wife is at home. However I donāt get it: There is always the correct location in the geocoded_location entity, which is submitted by this very same app - and you ask me to troubleshoot the settings of the phones app. Thats not really logical as the app is already submitting the correct location to Home Assistant.
Hi, I have the same problem and went through the troubleshooting as linked but unsuccessfully.
My companion app is not sending the information to my home assistant server, even though I have Remote UI set up and can access HA while not on my home network. I tested it with a fake GPS app. When I am at home on my home Wi-Fi and change my GPS location I trigger my automation based on leaving the home zone while it doesnāt work when being not on my home Wi-Fi. The location log in the companion app indicates that the app isnāt sending any updates while not on my Wi-Fi, and the sending fails while having the correct GPS location.
Here is part of my log, the app tried to send an updated location at 10:55:21
12-28 10:55:21.272 20558 20713 E LocBroadcastReceiver: Could not update location for 1.
12-28 10:55:21.272 20558 20713 E LocBroadcastReceiver: io.homeassistant.companion.android.common.data.integration.IntegrationException: java.net.SocketTimeoutException: failed to connect to192.168.178.69 (port 8123) from /10.36.87.27 (port 49258) after 10000ms
12-28 10:55:21.272 20558 20713 E LocBroadcastReceiver: at io.homeassistant.companion.android.common.data.integration.impl.IntegrationRepositoryImpl.updateLocation(IntegrationRepositoryImpl.kt:265)
12-28 10:55:21.272 20558 20713 E LocBroadcastReceiver: at io.homeassistant.companion.android.common.data.integration.impl.IntegrationRepositoryImpl$updateLocation$1.invokeSuspend(Unknown Source:15)
12-28 10:55:21.272 20558 20713 E LocBroadcastReceiver: at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
12-28 10:55:21.272 20558 20713 E LocBroadcastReceiver: at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
12-28 10:55:21.272 20558 20713 E LocBroadcastReceiver: at kotlinx.coroutines.internal.LimitedDispatcher$Worker.run(LimitedDispatcher.kt:115)
12-28 10:55:21.272 20558 20713 E LocBroadcastReceiver: at kotlinx.coroutines.scheduling.TaskImpl.run(Tasks.kt:103)
12-28 10:55:21.272 20558 20713 E LocBroadcastReceiver: at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:584)
12-28 10:55:21.272 20558 20713 E LocBroadcastReceiver: at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:793)
12-28 10:55:21.272 20558 20713 E LocBroadcastReceiver: at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:697)
12-28 10:55:21.272 20558 20713 E LocBroadcastReceiver: at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:684)
12-28 10:55:21.272 20558 20713 E LocBroadcastReceiver: Caused by: java.net.SocketTimeoutException: failed to connect to /192.168.178.69 (port 8123) from /10.36.87.27 (port 49258) after 10000ms
12-28 10:55:21.272 20558 20713 E LocBroadcastReceiver: at libcore.io.IoBridge.connectErrno(IoBridge.java:235)
12-28 10:55:21.272 20558 20713 E LocBroadcastReceiver: at libcore.io.IoBridge.connect(IoBridge.java:179)
12-28 10:55:21.272 20558 20713 E LocBroadcastReceiver: at java.net.PlainSocketImpl.socketConnect(PlainSocketImpl.java:142)
12-28 10:55:21.272 20558 20713 E LocBroadcastReceiver: at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:390)
12-28 10:55:21.272 20558 20713 E LocBroadcastReceiver: at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:230)
12-28 10:55:21.272 20558 20713 E LocBroadcastReceiver: at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:212)
12-28 10:55:21.272 20558 20713 E LocBroadcastReceiver: at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:436)
12-28 10:55:21.272 20558 20713 E LocBroadcastReceiver: at java.net.Socket.connect(Socket.java:646)
12-28 10:55:21.272 20558 20713 E LocBroadcastReceiver: at okhttp3.internal.platform.Platform.connectSocket(Platform.kt:128)
12-28 10:55:21.272 20558 20713 E LocBroadcastReceiver: at okhttp3.internal.connection.RealConnection.connectSocket(RealConnection.kt:295)
12-28 10:55:21.272 20558 20713 E LocBroadcastReceiver: at okhttp3.internal.connection.RealConnection.connect(RealConnection.kt:207)
12-28 10:55:21.272 20558 20713 E LocBroadcastReceiver: at okhttp3.internal.connection.ExchangeFinder.findConnection(ExchangeFinder.kt:226)
12-28 10:55:21.272 20558 20713 E LocBroadcastReceiver: at okhttp3.internal.connection.ExchangeFinder.findHealthyConnection(ExchangeFinder.kt:106)
12-28 10:55:21.272 20558 20713 E LocBroadcastReceiver: at okhttp3.internal.connection.ExchangeFinder.find(ExchangeFinder.kt:74)
12-28 10:55:21.272 20558 20713 E LocBroadcastReceiver: at okhttp3.internal.connection.RealCall.initExchange$okhttp(RealCall.kt:255)
12-28 10:55:21.272 20558 20713 E LocBroadcastReceiver: at okhttp3.internal.connection.ConnectInterceptor.intercept(ConnectInterceptor.kt:32)
12-28 10:55:21.272 20558 20713 E LocBroadcastReceiver: at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
12-28 10:55:21.272 20558 20713 E LocBroadcastReceiver: at okhttp3.internal.cache.CacheInterceptor.intercept(CacheInterceptor.kt:95)
12-28 10:55:21.272 20558 20713 E LocBroadcastReceiver: at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
12-28 10:55:21.272 20558 20713 E LocBroadcastReceiver: at okhttp3.internal.http.BridgeInterceptor.intercept(BridgeInterceptor.kt:83)
12-28 10:55:21.272 20558 20713 E LocBroadcastReceiver: at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
12-28 10:55:21.272 20558 20713 E LocBroadcastReceiver: at okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.kt:76)
12-28 10:55:21.272 20558 20713 E LocBroadcastReceiver: at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
12-28 10:55:21.272 20558 20713 E LocBroadcastReceiver: at okhttp3.internal.connection.RealCall.getResponseWithInterceptorChain$okhttp(RealCall.kt:201)
12-28 10:55:21.272 20558 20713 E LocBroadcastReceiver: at okhttp3.internal.connection.RealCall$AsyncCall.run(RealCall.kt:517)
12-28 10:55:21.272 20558 20713 E LocBroadcastReceiver: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
12-28 10:55:21.272 20558 20713 E LocBroadcastReceiver: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:644)
12-28 10:55:21.272 20558 20713 E LocBroadcastReceiver: at java.lang.Thread.run(Thread.java:1012)
12-28 10:55:21.284 20558 20558 D LocationTrackingViewMod: Returning PagingSource for history filter: ALL
12-28 10:55:21.438 20558 20558 I ViewRootImpl@3601e1d[WebViewActivity]: onDisplayChanged oldDisplayState=2 newDisplayState=2
12-28 10:55:21.438 20558 20558 I ViewRootImpl@b29bb5f[SettingsActivity]: onDisplayChanged oldDisplayState=2 newDisplayState=2
12-28 10:55:21.944 20558 20558 I BLASTBufferQueue_Java: update, w= 1080 h= 2340 mName = ViewRootImpl@b29bb5f[SettingsActivity] mNativeObject= 0xb400007486114c30 sc.mNativeObject= 0xb4000074960aad90 format= -1 caller= android.view.ViewRootImpl.updateBlastSurfaceIfNeeded:2968 android.view.ViewRootImpl.relayoutWindow:9998 android.view.ViewRootImpl.performTraversals:4056 android.view.ViewRootImpl.doTraversal:3239 android.view.ViewRootImpl$TraversalRunnable.run:11197 android.view.Choreographer$CallbackRecord.run:1650
12-28 10:55:21.944 20558 20558 I ViewRootImpl@b29bb5f[SettingsActivity]: Relayout returned: old=(0,0,1080,2340) new=(0,0,1080,2340) req=(1080,2340)0 dur=2 res=0x0 s={true 0xb4000075d61268b0} ch=false seqId=0
12-28 10:55:21.963 20558 20558 I ViewRootImpl@b29bb5f[SettingsActivity]: registerCallbackForPendingTransactions
12-28 10:55:21.964 20558 24258 I ViewRootImpl@b29bb5f[SettingsActivity]: mWNT: t=0xb400007696090970 mBlastBufferQueue=0xb400007486114c30 fn= 66 caller= android.view.ViewRootImpl$6.onFrameDraw:5539 android.view.ViewRootImpl$2.onFrameDraw:2103 android.view.ThreadedRenderer$1.onFrameDraw:788