39

I'm using a Magic Mouse with my MacBook Pro and Mountain Lion. The cursor sometimes start to lag. I figured, the reason for this could be the distance between my Mac and the mouse (about 1.5 meters / 5 foot).

I bought an external USB Bluetooth dongle I want to plug into my monitor on my desk, so the mouse is closer to the controller. However, I can't figure out how to make OS X use the external dongle instead of the built in controller.

When I go into System Prefs > Bluetooth and hold the Option key to display the reception, I see that it is the strongest when it's next to my Mac and not when it's next to the dongle. So what can I do to change that? Thanks!

4
  • What is the model of your USB Bluetooth dongle? Does it come with a driver CD?
    – jaume
    Jun 20, 2013 at 7:11
  • It's a Hama stick, without a CD. I tried turning off Bluetooth in the System Prefs, then plug in the stick, then reactivate Bluetooth and it worked. I had to reconfigure the mouse (and keyboard). But when I restart it seems to use the built-in controller again.
    – DrummerB
    Jun 20, 2013 at 11:03
  • Is your problem fixed? If yes, please mark the right answers, else please add info. to let others fix it.
    – dan
    Jan 31, 2018 at 10:44
  • As of macOS 10.13.6 (probably earlier versions too) all that seems to be necessary is to plug the dongle in and the Mac automatically switches to it (as confirmed by Option clicking on the Bluetooth icon in the menubar)
    – Perry
    Nov 5, 2018 at 0:11

5 Answers 5

32

To force the system to use USB Bluetooth dongle by default, run the following command:

sudo nvram bluetoothHostControllerSwitchBehavior=always

This will modify your boot kernel arguments.

To do opposite, use never. The change would be applied after the reboot. To return to the default, run:

sudo nvram -d bluetoothHostControllerSwitchBehavior
2
  • 1
    While having a GUI, such as with Bluetooth Explorer, is nice, this is the only solution that works across reboots, which is something the OP probably wanted, and I certainly do. Thanks.
    – larryy
    Apr 17, 2019 at 2:53
  • 3
    Thanks for this! It looks like macOS Catalina changes the default for this flag to be "always" instead of "never". As such, I was no longer able to map Bluetooth adapters to my virtual machines with Parallels or VMWare. Setting this to "never" resolved that problem.
    – JacobJ
    Oct 25, 2019 at 20:09
18

I just went through this using this no-name adapter on OS X 10.10: http://www.amazon.ca/dp/B00E38N7QE/ref=pe_386430_30332290_TE_3p_dp_1

The easiest way to use the USB adapter is to reboot. If you hold down the Option key while clicking on the Bluetooth menu icon, the MAC address of the adapter should be different. You can also verify in System Profiler. You'll know it's working if any existing pairings break.

I've found that a BT 4.0 adapter is working better than the built-in adapter in my 2010-era Macbook Pro. Especially with a headset, there's much better sound quality.

The on / off button in System Preferences is a little buggy. Turning off the adapter works fine, but clicking "on" turned the internal adapter back on. I had to unplug the adapter, plug it back in, and then turn Bluetooth back on.

If you want to work around this without rebooting, you can use Bluetooth Explorer from the OS X developer tools. You'll need a (free) developer account. There's a ton of useful tools to debug interference, pairing issues, and so on.

HCI controller menu item

This is now part of a package called "Hardware IO Tools for Xcode V x.x" and can be found at https://developer.apple.com/downloads/

6
  • 1
    Just adding to @user216942 answer, since Xcode 8 the Bluetooth Explorer is under the package named "Additional Tools for Xcode" Nov 1, 2016 at 22:12
  • @FelipePlets there is no 'Bluetooth Explorer' in "Additional Tools for Xcode" package Apr 5, 2021 at 8:02
  • 2
    @thanhbinh84 "Bluetooth Explorer" was removed from "Additional Tools for Xcode" since Xcode 12. Apr 5, 2021 at 13:04
  • @FelipePlets what could we do with 'bluetooth explorer'? when I select HCI Controller selector, there is only 1 device, I have to plug out and in to active external bluetooth adapter. Go to the tool again, still 1 device. I have to plug out/in to active every time computer reboot. 'sudo nvram bluetoothHostControllerSwitchBehavior=always' doesn't help. Apr 6, 2021 at 8:35
8

I've often had the exact same problem! I've found that the following method works consistently to switch to the external adapter. Starting with the external bluetooth dongle unplugged:

  1. Turn off Bluetooth
  2. Wait about three seconds
  3. Plug in dongle
  4. Again, wait about three seconds
  5. Turn on Bluetooth

This works every time for me. No reboots or additional software required!


Additionally, there's a much quicker way to see which bluetooth adapter your mac is currently using. With your external Bluetooth adapter unplugged:

  1. If there's no Bluetooth icon in your menu bar, go to system prefs -> Bluetooth and check "Show Bluetooth in menu bar"
  2. With the external dongle unplugged, option+click on the Bluetooth icon in your menu bar
  3. Note the sequence of letters and numbers after "Address:". This is the name of your computer's internal Bluetooth adapter. (I usually just pay attention to the last two characters)

Now, try to switch to your external adapter, and repeat the above steps. If the address changes, your computer is definitely using the external adapter.

2
2

Looked in here: /Library/Preferences/SystemConfiguration. There i found a bluetooth plist file. I trashed it, rebooted, and then my USB dongle was finally recognized. I did not need to reset any SMC, NVRAM.

2
  • I ended up trashing all com.apple.Bluetooth.* files in /Library/Preferences and reinserted the dongle. I also used "sudo nvram bluetoothHostControllerSwitchBehavior=always" to keep the effect. Mar 23, 2021 at 8:29
  • Create sh script for convenience: "sudo rm -f /Library/Preferences/com.apple.Bluetooth.*" Apr 21, 2021 at 2:10
-5

You shouldn't have that much of a reception issue from 1.5 meters. Even with some interference between the mini and your mouse, BT should be fine so I might be suspect of something else causing the issue rather than the Mac Mini BT card. But yeah, go into System Preferences > Bluetooth and turn it off.

1
  • I understand you are trying to help, but this is not an answer to the question. We should really try and follow the intended purposes for each action
    – Y. Gherbi
    Mar 11 at 23:49

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .