Wear OS: Can't connect to Home Assistant instance over Bluetooth
See original GitHub issueHome Assistant Android version:
WearOS version beta-1626-edc4142
Phone version beta-1626-edc4142-full
Android version:
WearOS 2.33
Android 11
Phone model:
OnePlus 7 Pro
Home Assistant version:
core-2021.11.2
Last working Home Assistant release (if known):
None.
Description of problem:
Wear OS can’t find my Home Assistant instance. It neither shows up in the list nor lets me manually connect. Works fine on WiFi (with disabled Bluetooth) or with the phone and other devices in my network.
Traceback (if applicable, to get the logs you may refer to: https://companion.home-assistant.io/docs/troubleshooting/faqs/#android-crash-logs): unavailable
Screenshot of problem: unavailable - there is a sad cloud icon with the message “Could not connect” but it vanished too fast to screenshot
Additional information
No public instance, i.e. no Nabu Casa
Not using a VPN - neither phone nor watch
After a successful log in over WiFi and switching back to Bluetooth, the list of buttons is empty and it just shows the titles.
Update for version beta-1626-edc4142
: After a successful log in over WiFi and switching back to Bluetooth, there is a title “Loading” and a primary button “Please wait while we load your entities” but nothing ever happens.
Issue Analytics
- State:
- Created 2 years ago
- Comments:130 (41 by maintainers)
Top GitHub Comments
I was having this issue too. I managed to get some logs, but didn’t see anything relevant. Unfortunately, life got in the way, and in the meantime I lost the logs (I could try again if need be).
However, a little research lead to a possible explanation: When the watch is connected to a phone via Bluetooth, the phone proxies all network requests, but for some reason connection requests to IPs on the local subnet can fail, while requests to internet IPs work fine.
An example: https://stackoverflow.com/questions/46696280/android-wear-2-wifi-local-network-access/48411322
Coincidentally at the time I was also starting to trail using Home Assistant Cloud. And indeed using the cloud URL on my watch works fine over Bluetooth, yet a direct local connection fails.
But assuming all that is accurate, I don’t understand why everyone isn’t hitting this bug. It could be a difference in subnet routing tables on different phones.
I don’t have a background in coding for Android or WearOS, but given what I’ve read, the possible solutions I’ve seen are:
I realise the aim for the WearOS app is to be a standalone app (which I applaud), but for anyone to hit this issue they have to be already relying on a connection to their phone at the time anyway.
Due to requirements for the login, it is no longer completely standalone. After logging in, the app can be used without a connected phone.