Want to highlight a helpful answer? Upvote!

Did someone help you, or did an answer or User Tip resolve your issue? Upvote by selecting the upvote arrow. Your feedback helps others! Learn more about when to upvote >

Looks like no one’s replied in a while. To start the conversation again, simply ask a new question.

16-inch MacBook Pro Bluetooth issue

I bought the new 16-inch MacBook Pro when it first came out and was happily using it until a week later my bluetooth stopped discovering devices, in particular my Magic Mouse and iPhone. I tried everything from resetting nvram, smc, resetting the bluetooth module, removing bluetooth.plist, downloaded bluetooth explorer and reset a bunch of settings etc and even went to the extent of completely formatting the computer and installing osx from scratch to no avail. Hardware diagnostics showed no hardware issues as well. The bluetooth device was showing up fine in System Report but it just wasn't discovering anything. I have a work laptop (2017 MacBook Pro) which I use side by side and it was working fine.


Long story short, I was able to replace the device at the Apple store I bought it at since it was within the 14 day return policy window. So I put it down to just being unlucky.


It's been a few weeks since then and I now have the same issue with the replacement laptop. This time though I think I know what triggered it.


I have a CalDigit dock that I use for my work laptop and occasionally have a usb bluetooth device attached to it for some work I do in virtual machines. The issue occurred when I connected my new MacBook to the dock along with the bluetooth dongle. The usb bluetooth dongle worked fine however when I disconnected the thunderbolt dock from the MacBook I noticed the bluetooth icon in the top right hand corner changed to an icon with a zigzag across it, obviously due to bluetooth device being disconnected.


Since disconnecting the external bluetooth device I'm having the same issue as I had previously, my MacBook Bluetooth device won't find any devices and is not recognized by other bluetooth devices like my iPhone/other MacBooks. I've gone through the whole process as before, and have resorted to a clean install of osx to no avail. I've even compared bluetoothd console logs between the working MacBook I have and the now broken one, the only difference is the working MacBook is able to detect devices when they are advertised, whereas the MacBook Pro 16-inch does not.


Digging into this, it seems as though OSX by default switches to any attached USB bluetooth device when it's plugged in and then when disconnected, it reverts back to the onboard device. This works fine on my old MacBook as I've been using the USB dongle for a while now without any issues. I initially thought that there may be a software issue with the internal bluetooth device not switching back properly but I would have thought a clean install would have fixed it so there must be some sort of hardware issue specifically with the new MacBook Pro 16-inch.


I'm pretty frustrated now as I've now gone through two 16-inch MacBook Pro's with bricked bluetooth devices that I'm fairly certain was caused by connecting an external bluetooth dongle via thunderbolt. I'm pretty sure onboard devices shouldn't die just because a third party device was connected/disconnected.


Has anyone come across this yet with the new MacBook Pro 16-inch? I'm going to visit the Apple store tomorrow to see what they can do but I'd prefer if I didn't have to send my laptop away and just find a fix myself if there is one. If not, I thought it'd be good to post my experience here in case anyone else comes across this.

MacBook Pro 16", macOS 10.15

Posted on Dec 14, 2019 2:09 AM

Reply
Question marked as Best reply

Posted on Jul 6, 2020 5:25 AM

Here is a summary of the whole thread:


TL;DR:


  • It's apparently possible to unfix the problem with a BT 2.0 dongle
  • For those that are scared to break it again (after logic board replacement OR BT 2.0 fix), they can run a NVRAM command to never switch BT controllers again (need to re-run after NVRAM reset):


sudo nvram bluetoothHostControllerSwitchBehavior="never"


Might be best to put that in a startup script and only change if needed.


  • It seems to have to do with Power Management and seemingly a EFI firmware bug introduced in Catalina as it's not possible to break Mojave in the same way.


So in summary it's several factors that came together here to create this bug:


  • a) A likely firmware bug in the EFI in Catalina.
  • b) A pretty unsafe default for switching Bluetooth controllers - which most users likely don't want anyway.
  • c) Maybe: A CSR USB controller using the exact same chip as the internal one. (if I am able to unbreak my device, I will try to re-break with a Broadcom 4.0 device, too)


Long version:


I have been bitten by the Bluetooth bug, too that breaks the internal Bluetooth module on Mac Book Pro 16inch if you accidentally plug in an USB CSR 4.0 Bluetooth dongle.


  • It seems to not happen on Mojave - so it's also related to a driver bug in Catalina regarding power management.
  • It happens in the first place because the nvram default behavior is to switch over to external Bluetooth by default.


The symptom is:


  • The Bluetooth chip gets too little power and hence fails to connect to devices and if it does connection is spotty. While on MacBook Pro 16inch it completely fails, other Macs can have bad Bluetooth behavior that is "spotty".


  • The solution of AppleRepair so far has been to completely replace the logic board, which fixes it till the next Dongle is plugged in and obviously is quite costly for a pure software bug.


Several observations:


  • The current theory is that the internal firmware mixes up the external CSR chip for it's own and saves the power requirement of the external chip (which is less as its powered by BT) and then uses this for the internal chip.


  • a) It is highly debatable to make the switch over to external dongle the default for all users if the functionality is usually only wanted by a handful of developers that develop Bluetooth LE applications. In fact it also breaks it for iOS developers and everyone that wants to use a Dongle to use with a VM:



  • Fortunately that is easily remedied with a nvram command to change the behavior. It would be great if Apple changed this in the next minor Catalina release by default to not switch over to external Bluetooth automatically, but make it an option to select the Controller (like you can do with Bluetooth Explorer). The setting could be stored and automatically be applied after every reboot to what the user configured. That would prevent the bug in probably most user cases until a proper fix can be found.


  • b) It is unclear if a pure software fix could fix this as per the reports the issue remains once it has happened even if you boot into Windows / Bootcamp. However it is seemingly possible (per the above accepted answer) to unfix that issue with an older CSR Bluetooth 2.0 dongle. This probably helps, because it has a different power requirement as it predates Bluetooth LE and hence the MacBook FW gives the internal Bluetooth chip more power again.


  • c) Someone tried to port the Bluetooth drivers from Catalina to Mojave and it did not work.This points to the fact that it likely is an EFI / soft FW update that broke this in Catalina and not a pure software bug.


Overall it seems Apple would have several ways to fix / work around this:


  • Fix the EFI to fix the PM bug. (that gives hope that it can be fixed 100% and also restored affected devices without logic board replacement)
  • If that fix takes a while to do, at least change the default and put out a changelog for those few that need to use an external Bluetooth dongle to replace the internal one.
  • Create a program that does whatever the diagnostics on the Apple Wifi in the repair shop does to reset the firmware to sane values.
  • Create a device to emulate the USB behavior of a 2.0 Bluetooth device to fix broken devices [unlikely as that is].


In theory VirtualHere + ZeroTier could be used to share a BT 2.0 dongle from one machine on the internet to another one and unbreak something remotely. (not sure if that would work in practice though as emulation is not perfect. Though I know that Bluetooth over Internet works well as that is ironically how I broke my BT in the first place as I needed a dongle for bluetooth-over-internet)

Similar questions

341 replies

16-inch MacBook Pro Bluetooth issue

Welcome to Apple Support Community
A forum where Apple customers help each other with their products. Get started with your Apple ID.