MacOS – OSx doesn’t want to activate the Bluetooth dongle

bluetoothmacbook promacos

I recently bought an external bluetooth dongle to add BTLE support to my Macbook Pro 2011. I'm running Yosemite 10.10.2.

I've read different blogs and posts here, indicating how to enable the external dongle, but they don't seem to work. Following the answers to this AD question, I've tried downloading the Bluetooth Explorer found in the HardwareIOTools_Xcode_6.3.dmg package. But when I navigate to Tools->HCI Controller Selector, and choose the Broadcomm dongle and click Activate, the built-in Apple BRCM device remains active, and doesn't activate my external dongle.

enter image description here

I've also tried to update the nvram settings and rebooting:

sudo nvram bluetoothHostControllerSwitchBehavior=always

but that too doesn't have any impact.

What am I missing or doing wrong?

Best Answer

It turns out Bluetooth Explorer has an awkward UI, whether by sloppy design, implementation, or bug. The HCI Controller Selector does not show the active controller in the menu. It shows you the first item of some default menu order, even after you've picked a different item and clicked Activate. But the different controller was activated, even though it doesn't look like it—unless you pay attention to details in the drop-down menu.

It's easiest to see with pictures. Here's what the Bluetooth Explorer HCI Controller Selector looks like when I launch it:

Default state of Bluetooth controller selector

When I click on the menu I see this:

Bluetooth controller selector menu

If I click on the "Cambridge Silicon Radio" item and then click Activate, Bluetooth connectivity is lost for a moment and from the behavior of my connected keyboard and trackpad when it comes back I am certain that the Cambridge radio was indeed made the active controller. However, what the controller selector window looks like at this point is identical to the first image, as if the change was not made, even though it was.

However, if you look closely at that second image showing the pull-down menu opened up, you can see that it says "[ACTIVE]" next to the Cambridge item. That's because I had previously made it active. So there is a way to tell the activation worked; it's just not by looking at what the menu shows when it's collapsed.

So the technique you were trying to use probably worked, even though you had difficulty telling it.

I am still looking for a method to make the change permanent across reboots, but haven't found it. The suggested nvram command doesn't work for that, at least not on my macOS Mojave 10.14.6 system. I have it set to "always", but a reboot always goes back to the default, built-in Apple controller, which is a problem for my setup.