[Huawei Watch] kev.r:
My experience with this

Wow, this is a big problem, a glaring oversight by Google here as from my experience and in my opinion after spending half a day messing with this, it's CLEARLY an OS problem with Android and Android Wear. Google needs to fix this - I almost returned my Hauwei Watch because this is a deal breaker for me. Granted this problem is compounded by the different behavior of individual bluetooth devices, it still comes down to an OS problem plain and simple. Read on to see why I firmly believe this.

OK Google: (You listening??) Here’s the problems in a nutshell:

1) There should be a more obvious way of allocating Bluetooth device priority besides "the order in which they're added" (which DOES work, btw)

2) The watch WILL NOT give up the appropriate bluetooth phone profiles to the higher priority device, e.g. HFP, HSP, and PBA/PBAP.

3) The watch's bluetooth connection is so persistent that it prohibits other devices from connecting to the phone and taking over the profiles.

TLDR; The workaround for this problem is cumbersome and unreliable and the solution rests squarely on Google’s shoulders.

Here's my experience on a OnePlus X, Huawei Watch, and a Pioneer SPH-DA120 car stereo. All devices are up to date. The OnePlus X is, for all intents and purposes, running vanilla Android.

The Pioneer would connect but no services were available. I removed and re-added the devices to re-order the priority, placing the Pioneer at the top of the list. After that, media audio would stream, but call audio would still remain on the watch.

After researching, I tried the BlueTooth Auto Connect app but it appeared to do *nothing*. I then found the solution suggested earlier in this thread using Tasker and Secure Settings.

I want to make the observation that Tasker is buggy and inconsistent in the activation of its profiles. I spent the better part of two hours just fiddling with Tasker to get to the point where I was getting predictable results. I even set up a simple test profile to display a dialog when the screen was unlocked and it worked inconsistently (it DID NOT work more often than it worked) and important to note, the profile NEVER worked when Tasker was the frontmost app. I had to exit to the homescreen or another app before any profiles would activate. This is complicated IMO by the unclear difference between a profile being ENABLED vs. ACTIVE. But I digress, that’s an issue for the app developer. I cleared the app's data and that helped. I was getting closer to an 80% success rate after that. It seemed that once a profile activated a couple times, it then became consistent. After awhile (with no intervention) I was getting a 100% success rate in activating a profile. (WTF?) It was an entirely frustrating experience.

A couple other observations at this point:

1) The Android Wear’s bluetooth connection is EXTREMELY persistent. When manually disconnected from bluetooth settings on my phone, the watch would reconnect itself in ~ one second.

2) The ONLY way I could find to get the watch to give up the phone profile (if it was already connected) was to turn off the "phone audio to watch" setting on the watch itself via its bluetooth settings.

3) Once the watch gave up the profiles via turning them off in Android Wear’s settings, the only way to get the Pioneer to pick them up was to disconnect and reconnect.

4) About 10 seconds after powering up, the Pioneer tries twice to auto-connect with acquisition of the phone profiles with about a 2 sec pause between attempts. If it cannot establish a Bluetooth connection at all, it gives up and throws an error dialog notifying of the failure and asking to attempt again. If it can connect but cannot obtain the phone profiles, no error is thrown and the connection is established without the phone profiles.

5) The Pioneer will connect even with the watch connected, but the phone profiles will not be available; only the media audio profile. In this case I receive no dialog and it appears to be connected until I go to make a phone call and find the phone unavailable.

6) Once the Pioneer has had the connection, the watch will not attempt a reconnect even if bluetooth is available (after the Pioneer is off). If a phone call is initiated on the watch in this state, the watch says call audio won't work and defers to the phone. On the next attempt, it will connect and all is normal. This has been inconsistent; sometimes it says call audio is unavailable but then routes to the watch anyway.

The "BT Near" profile would not activate with the Pioneer. I was able to get the “BT Connected” profile to activate when the Pioneer would attempt its first auto connect, and again with it's second. In between attempts, it would activate the "exit" function of Tasker's profile. It will also activate the exit function when disconnecting when the car is turned off.

I set up a task to disconnect the watch upon BT Connected, and another to connect the watch on profile exit, as the watch does not appear to attempt to reconnect after the Pioneer has been connected, even if the BT connection becomes available. Since the bluetooth connection is initiated from the Pioneer, this would both activate the profile and allow the Pioneer to connect once the watch was disconnected - IF it could sneak in between reconnect attempts made by the watch. It was like a battle between the two devices for which one would take over the connection first! About half the time, the Pioneer will connect on the first try, thus locking out the watch and taking over the phone profiles. Most of the rest of the time it will connect on the second try (the second attempt will re-activate the Tasker profile and repeat the race). About 1 in 5 times, the watch will win. In this case, the Pioneer will connect but not be able to use the phone profiles. When that happens, I can go into the Pioneer's bluetooth settings, select the phone and disconnect/reconnect, which would once again trigger Tasker's profile and repeat the race. This manual step has had a 100% success rate.

This is a ridiculous and wonky workaround for something that should work out of the box. I’m historically an Apple guy but decided to try an Android phone after iOS started to feel cumbersome. I have to admit that Google has completely won me over with Android and Android Wear, and I’m now an enthusiastic convert. I realize AW is a new OS and a work in progress, but this is a huge bug, one on which I hope Google will place priority since it just rolled out the 6.0 update to enable the speakers in AW devices. A typical user wouldn’t even recognize what's going on, much less go to this much trouble to fix it. They would probably end up returning the watch because "it doesn't work" with the car, and end up walking away disappointed with (or even disgusted by) their Android Wear device experience.