I started receiving an error about a week ago when entering / leaving my “home” zone on home assistant. The message is “Unable to send zone event to Home Assistant”. This is happening on android, phone is a Samsung S20+
Has anyone else seen this? I’m hesitant to post my logs here as it also has my location.
Unfortunately there is no log entry to this message in the app logs. I am referring to App Configuration → Show and Share Logs. But the logs are rather old there and get overwritten every day. Is there a possibility to see older logs? Generally. Should this work without Home Assistant Cloud?
your device needs a way to send data back home, whether its HA cloud or your own setup…without having your instance externally accessible you should not expect the app to be able to send data back home
The nebu casa cloud isn’t required for sending data back to your home assistant instance. If your home assistant instance is not open outside of your own network, then yes, your phone won’t be able to send zone updates to home assistant. If you can manage your home assistant instance outside of your network, then you should be able to send zone updates back to home assistant.
Now before this topic gets too full of unrelated information: I modified my location sensors in the home assistant app on my phone and something seems to have fixed it, I think it was enabling single accurate location, even though background location was enabled and location zone was enabled, however enabling this setting has caused considerable battery drain.
Edit: Actually may have been enabling high accuracy mode that caused the battery drain. I need to play around with it more but I think it’s going to creep out my neighbors walking back and forth down the street.
that log message is incomplete, look at the one above that with the complete traceback
06-11 20:47:25.479 32089 18902 E LocBroadcastReceiver: Could not update location.
06-11 20:47:25.479 32089 18902 E LocBroadcastReceiver: io.homeassistant.companion.android.common.data.integration.IntegrationException: java.net.ConnectException: Failed to connect to hooks.nabu.casa/54.160.54.138:443
06-11 20:47:25.479 32089 18902 E LocBroadcastReceiver: at io.homeassistant.companion.android.common.data.integration.impl.IntegrationRepositoryImpl.updateLocation(IntegrationRepositoryImpl.kt:183)
06-11 20:47:25.479 32089 18902 E LocBroadcastReceiver: at io.homeassistant.companion.android.common.data.integration.impl.IntegrationRepositoryImpl$updateLocation$1.invokeSuspend(Unknown Source:15)
06-11 20:47:25.479 32089 18902 E LocBroadcastReceiver: at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
06-11 20:47:25.479 32089 18902 E LocBroadcastReceiver: at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:104)
06-11 20:47:25.479 32089 18902 E LocBroadcastReceiver: at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:571)
06-11 20:47:25.479 32089 18902 E LocBroadcastReceiver: at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:750)
06-11 20:47:25.479 32089 18902 E LocBroadcastReceiver: at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:678)
06-11 20:47:25.479 32089 18902 E LocBroadcastReceiver: at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:665)
06-11 20:47:25.479 32089 18902 E LocBroadcastReceiver: Caused by: java.net.ConnectException: Failed to connect to hooks.nabu.casa/54.160.54.138:443
06-11 20:47:25.479 32089 18902 E LocBroadcastReceiver: at okhttp3.internal.connection.RealConnection.connectSocket(RealConnection.kt:297)
06-11 20:47:25.479 32089 18902 E LocBroadcastReceiver: at okhttp3.internal.connection.RealConnection.connect(RealConnection.kt:207)
06-11 20:47:25.479 32089 18902 E LocBroadcastReceiver: at okhttp3.internal.connection.ExchangeFinder.findConnection(ExchangeFinder.kt:226)
06-11 20:47:25.479 32089 18902 E LocBroadcastReceiver: at okhttp3.internal.connection.ExchangeFinder.findHealthyConnection(ExchangeFinder.kt:106)
06-11 20:47:25.479 32089 18902 E LocBroadcastReceiver: at okhttp3.internal.connection.ExchangeFinder.find(ExchangeFinder.kt:74)
06-11 20:47:25.479 32089 18902 E LocBroadcastReceiver: at okhttp3.internal.connection.RealCall.initExchange$okhttp(RealCall.kt:255)
06-11 20:47:25.479 32089 18902 E LocBroadcastReceiver: at okhttp3.internal.connection.ConnectInterceptor.intercept(ConnectInterceptor.kt:32)
06-11 20:47:25.479 32089 18902 E LocBroadcastReceiver: at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
06-11 20:47:25.479 32089 18902 E LocBroadcastReceiver: at okhttp3.internal.cache.CacheInterceptor.intercept(CacheInterceptor.kt:95)
06-11 20:47:25.479 32089 18902 E LocBroadcastReceiver: at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
06-11 20:47:25.479 32089 18902 E LocBroadcastReceiver: at okhttp3.internal.http.BridgeInterceptor.intercept(BridgeInterceptor.kt:83)
06-11 20:47:25.479 32089 18902 E LocBroadcastReceiver: at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
06-11 20:47:25.479 32089 18902 E LocBroadcastReceiver: at okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.kt:76)
06-11 20:47:25.479 32089 18902 E LocBroadcastReceiver: at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
06-11 20:47:25.479 32089 18902 E LocBroadcastReceiver: at io.homeassistant.companion.android.common.data.HomeAssistantRetrofit$special$$inlined$-addInterceptor$1.intercept(OkHttpClient.kt:1089)
06-11 20:47:25.479 32089 18902 E LocBroadcastReceiver: at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
06-11 20:47:25.479 32089 18902 E LocBroadcastReceiver: at okhttp3.internal.connection.RealCall.getResponseWithInterceptorChain$okhttp(RealCall.kt:201)
06-11 20:47:25.479 32089 18902 E LocBroadcastReceiver: at okhttp3.internal.connection.RealCall$AsyncCall.run(RealCall.kt:517)
06-11 20:47:25.479 32089 18902 E LocBroadcastReceiver: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
06-11 20:47:25.479 32089 18902 E LocBroadcastReceiver: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
06-11 20:47:25.479 32089 18902 E LocBroadcastReceiver: at java.lang.Thread.run(Thread.java:923)
06-11 20:47:25.479 32089 18902 E LocBroadcastReceiver: Suppressed: java.net.SocketException: Software caused connection abort
06-11 20:47:25.479 32089 18902 E LocBroadcastReceiver: at java.net.SocketInputStream.socketRead0(Native Method)
06-11 20:47:25.479 32089 18902 E LocBroadcastReceiver: at java.net.SocketInputStream.socketRead(SocketInputStream.java:119)
06-11 20:47:25.479 32089 18902 E LocBroadcastReceiver: at java.net.SocketInputStream.read(SocketInputStream.java:176)
06-11 20:47:25.479 32089 18902 E LocBroadcastReceiver: at java.net.SocketInputStream.read(SocketInputStream.java:144)
06-11 20:47:25.479 32089 18902 E LocBroadcastReceiver: at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.readFromSocket(ConscryptEngineSocket.java:945)
06-11 20:47:25.479 32089 18902 E LocBroadcastReceiver: at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.processDataFromSocket(ConscryptEngineSocket.java:909)
06-11 20:47:25.479 32089 18902 E LocBroadcastReceiver: at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.access$100(ConscryptEngineSocket.java:731)
06-11 20:47:25.479 32089 18902 E LocBroadcastReceiver: at com.android.org.conscrypt.ConscryptEngineSocket.doHandshake(ConscryptEngineSocket.java:241)
06-11 20:47:25.479 32089 18902 E LocBroadcastReceiver: at com.android.org.conscrypt.ConscryptEngineSocket.startHandshake(ConscryptEngineSocket.java:220)
06-11 20:47:25.479 32089 18902 E LocBroadcastReceiver: at okhttp3.internal.connection.RealConnection.connectTls(RealConnection.kt:379)
06-11 20:47:25.479 32089 18902 E LocBroadcastReceiver: at okhttp3.internal.connection.RealConnection.establishProtocol(RealConnection.kt:337)
06-11 20:47:25.479 32089 18902 E LocBroadcastReceiver: at okhttp3.internal.connection.RealConnection.connect(RealConnection.kt:209)
06-11 20:47:25.487 32089 18902 E LocBroadcastReceiver: ... 19 more
06-11 20:47:25.487 32089 18902 E LocBroadcastReceiver: Caused by: java.net.ConnectException: failed to connect to hooks.nabu.casa/54.160.54.138 (port 443) from /:: (port 0) after 10000ms: connect failed: ENETUNREACH (Network is unreachable)
06-11 20:47:25.487 32089 18902 E LocBroadcastReceiver: at libcore.io.IoBridge.connect(IoBridge.java:142)
06-11 20:47:25.487 32089 18902 E LocBroadcastReceiver: at java.net.PlainSocketImpl.socketConnect(PlainSocketImpl.java:142)
06-11 20:47:25.487 32089 18902 E LocBroadcastReceiver: at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:390)
06-11 20:47:25.487 32089 18902 E LocBroadcastReceiver: at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:230)
06-11 20:47:25.487 32089 18902 E LocBroadcastReceiver: at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:212)
06-11 20:47:25.487 32089 18902 E LocBroadcastReceiver: at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:436)
06-11 20:47:25.487 32089 18902 E LocBroadcastReceiver: at java.net.Socket.connect(Socket.java:621)
06-11 20:47:25.487 32089 18902 E LocBroadcastReceiver: at okhttp3.internal.platform.Platform.connectSocket(Platform.kt:120)
06-11 20:47:25.487 32089 18902 E LocBroadcastReceiver: at okhttp3.internal.connection.RealConnection.connectSocket(RealConnection.kt:295)
06-11 20:47:25.487 32089 18902 E LocBroadcastReceiver: ... 20 more
06-11 20:47:25.487 32089 18902 E LocBroadcastReceiver: Caused by: android.system.ErrnoException: connect failed: ENETUNREACH (Network is unreachable)
06-11 20:47:25.487 32089 18902 E LocBroadcastReceiver: at libcore.io.Linux.connect(Native Method)
06-11 20:47:25.487 32089 18902 E LocBroadcastReceiver: at libcore.io.ForwardingOs.connect(ForwardingOs.java:94)
06-11 20:47:25.487 32089 18902 E LocBroadcastReceiver: at libcore.io.BlockGuardOs.connect(BlockGuardOs.java:138)
06-11 20:47:25.487 32089 18902 E LocBroadcastReceiver: at libcore.io.ForwardingOs.connect(ForwardingOs.java:94)
06-11 20:47:25.487 32089 18902 E LocBroadcastReceiver: at libcore.io.IoBridge.connectErrno(IoBridge.java:173)
06-11 20:47:25.487 32089 18902 E LocBroadcastReceiver: at libcore.io.IoBridge.connect(IoBridge.java:134)
06-11 20:47:25.487 32089 18902 E LocBroadcastReceiver: ... 28 more
Edit: In fact this is the first traceback we see, all other errors are missing the traceback which suggests this is the main error, device is unable to send data to the expected location
I’m not sure if you have solved your problem yet, but here is a possible solution:
If you don’t want to use a remote access to HA, just use your wifi connection to detect your presence.
you can use Bluetooth too, but the range is lesser.
( ASUSWRT, DD-WRT, Bluetooth Tracker, etc)
if you manage to have a remote access to HA don’t forget to turn on your 3G if you want to send info to HA
So I never figured out what the issue was. I ended up factory resetting my phone and it works as expected now. I have no idea what setting or change caused the issue for me.
location tracking is working very well for many users, it would be more helpful to know what you have tried to do to fix the device tracker provided by the android app.
Uninstalled the app, reinstalled the app, cleared app data, changed ALL location settings by turning them on and off and then testing, changed app location settings. I think at one point I created a new user and tested with the same results. Completely unaware of what cause the underlying issue and only a factory reset fixed it.