Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.
USB problems are not exactly related with the Bluetooth problems that people are having on the thread.

Big Sur has very poor support for legacy USB controllers, both problems exist and you can solve the BT issue with BootROM clean-up/reconstruction while for USB you have to upgrade to OC 0.6.7 and 11.2.2, where things are a little better with legacy USB support.
I upgraded the WiFi/BT module + OC 0.6.7 / 11.2.3 updates and no longer have the USB issue. It all seems to be working OK now, except for the occasional prohibited icon during boot (after a restart). Cold boot is fine 100% of the time :) Even hot swapping devices on the legacy USB ports works properly now.
 
@djtransa I don't know what setup you have but if you run Mojave on Sata1 and Big Sur on an NVMe blade, every time you alternate booting the OS and you are coming back to Big Sur from Mojave, Bluetooth will not be functional. Rebooting again into Big Sur will fix the issue. After that, you can restart Big Sur one million times, Bluetooth will work fine.

BTW, I'm running a Broadcom BCM943602CDPAX iMac official card, which supports Bluetooth 4.2.
 
  • Like
Reactions: startergo
@djtransa I don't know what setup you have but if you run Mojave on Sata1 and Big Sur on an NVMe blade, every time you alternate booting the OS and you are coming back to Big Sur from Mojave, Bluetooth will not be functional. Rebooting again into Big Sur will fix the issue. After that, you can restart Big Sur one million times, Bluetooth will work fine.

BTW, I'm running a Broadcom BCM943602CDPAX iMac official card, which supports Bluetooth 4.2.
I need to check the config.plist & make sure the legacy bluetooth modules are set to false. I run BS on a SATA drive in bay 1, no NVME etc. It's only from rebooting from BS back in to BS it hangs on the prohibited symbol. BS to Windows, no problem, Windows to BS no problem. Really strange.
 
@djtransa I don't know what setup you have but if you run Mojave on Sata1 and Big Sur on an NVMe blade, every time you alternate booting the OS and you are coming back to Big Sur from Mojave, Bluetooth will not be functional. Rebooting again into Big Sur will fix the issue. After that, you can restart Big Sur one million times, Bluetooth will work fine.

BTW, I'm running a Broadcom BCM943602CDPAX iMac official card, which supports Bluetooth 4.2.
@TECK Thank you for this post!! I've been struggling with upgrade from Catalina to Big Sur (amongst other common issues, especially endless boots and prohibitory errors) and was experiencing the same issues w/ loss of BT between Mojave and Big Sur. I was getting ready to give up and roll back to Catalina when i saw this post earlier. I too have Broadcom BCM943602CDP (BT 4.2), Mojave on Sata1, Big Sur NVMe blade and after discovering post, decided to try downgrading to BCM94360CD (BT 4.0) and worked! Now able to boot between Mojave and Big Sur successfully w/o BT loss!

In addition, it resolved a conflict error I had with Apogee Ensemble FW not initializing in Big Sur, as well as crash-and-reboot when power cycling on/off. After downgrading BT I now have stable connectivity.

Saved me a ton of grief! thanks again!
 
Now able to boot between Mojave and Big Sur successfully w/o BT loss!
Thank you for confirming, if I would've known, I would've purchased also a BCM94360CD card, as it was cheaper compared with BCM943602CDP. At least others will know they will not have issues in Big Sur.

Hopefully, this could give the smart people some indications what we need to look into, in order to fix this bug. @tsialex any thoughts?
 
Last edited:
  • Like
Reactions: foojitsu1
Indeed, I don't have Bluetooth issues when I initially booth from Windows to Big Sur, only Mojave to Big Sur.
Mix in to that, the random loss of 5Ghz WiFi from this same module, it seemingly comes on and off as it likes. Not established a pattern to it yet - possibly if Windows was the last OS I use, then power off, next time I boot in to BS it connects to the 5Ghz channel?! Also unlock with Apple Watch randomly started working after I was unable to activate it at first. But that has stayed working without issue - the mind boggles.
1619080464979.png
 
The Bluetooth bug is still present with OC 0.6.9 and Big Sur 11.3.1, see #560 upgrade details.
 
I have a Asus - BT400 USB dongle,
With BrcmPatchRAM kexts I get random loss with AirPod Pro when listening to music or while a device is connected and I open the Bluetooth Preferences (Hackintosh gets discoverable), Bluetooth will be disconnected.

Chipset: 20702A3
Firmware Version: v14 c5563
Vendor ID: 0x0B05
Product ID: 0x17CB
HCI Revision: 0x15BB


But I removed All its Kexts and after some days I test it with another headphone and an iPhone again and it was fine and very stable.
I checked the BT info, these two changed:
Firmware Version: v14 c4096!!!!!!
HCI Revision: 0x1000

I installed the Kexts again and got the issues same as before.
After removing the Kexts, the Version is still c5563. How could I upload that Firmware again?
 
I am using a BCM94360CD on Big Sur. No bluetooth. I tried all these BCM fixes, but the documentation on how to incorporate that into the config are sparse. On the GitHub page it says something about including the AirPortBrcm4360_Injector.kext from the new PlugIns folder, but the next line it reads to remove or block that kext. I am thoroughly confused and nothing works. I mean Wi-Fi does. Also everyone and their USB dongles and PCIe cards confuse me further. I installed this like the regular AirPort cards do.
Using Martin's Package.

I have changed the config in all types of variations to no avail.
I removed the Mojave related IOH injections. In case that's only meant for older cards than this one.

Up til now I had my original BT and AirPort card working. It must have slowed down the system greatly though. I could feel the difference right after the removal.

Code:
<dict>
                <key>BundlePath</key>
                <string>AirportBrcmFixup.kext</string>
                <key>Comment</key>
                <string></string>
                <key>Enabled</key>
                <true/>
                <key>ExecutablePath</key>
                <string>Contents/MacOS/AirportBrcmFixup</string>
                <key>MaxKernel</key>
                <string></string>
                <key>MinKernel</key>
                <string></string>
                <key>PlistPath</key>
                <string>Contents/Info.plist</string>
        </dict>
        <dict>
            <key>BundlePath</key>
            <string>AirportBrcmFixup.kext/Contents/PlugIns/AirPortBrcm4360_Injector.kext</string>
            <key>Comment</key>
            <string></string>
            <key>Enabled</key>
            <true/>
            <key>ExecutablePath</key>
            <string></string>
            <key>MaxKernel</key>
            <string></string>
            <key>MinKernel</key>
            <string></string>
            <key>PlistPath</key>
            <string>Contents/Info.plist</string>
    </dict>
    <dict>
        <key>BundlePath</key>
        <string>AirportBrcmFixup.kext/Contents/PlugIns/AirPortBrcmNIC_Injector.kext</string>
        <key>Comment</key>
        <string></string>
        <key>Enabled</key>
        <true/>
        <key>ExecutablePath</key>
        <string></string>
        <key>MaxKernel</key>
        <string></string>
        <key>MinKernel</key>
        <string></string>
        <key>PlistPath</key>
        <string>Contents/Info.plist</string>
</dict>
            <dict>
                <key>BundlePath</key>
                <string>BrcmBluetoothInjector.kext</string>
                <key>Comment</key>
                <string></string>
                <key>Enabled</key>
                <true/>
                <key>ExecutablePath</key>
                <string></string>
                <key>MaxKernel</key>
                <string></string>
                <key>MinKernel</key>
                <string></string>
                <key>PlistPath</key>
                <string>Contents/Info.plist</string>
        </dict>
        <dict>
                <key>BundlePath</key>
                <string>BrcmFirmwareData.kext</string>
                <key>Comment</key>
                <string></string>
                <key>Enabled</key>
                <true/>
                <key>ExecutablePath</key>
                <string>Contents/MacOS/BrcmFirmwareData</string>
                <key>MaxKernel</key>
                <string></string>
                <key>MinKernel</key>
                <string></string>
                <key>PlistPath</key>
                <string>Contents/Info.plist</string>
        </dict>
        <dict>
                <key>BundlePath</key>
                <string>BrcmPatchRAM3.kext</string>
                <key>Comment</key>
                <string></string>
                <key>Enabled</key>
                <true/>
                <key>ExecutablePath</key>
                <string>Contents/MacOS/BrcmPatchRAM3</string>
                <key>MaxKernel</key>
                <string></string>
                <key>MinKernel</key>
                <string></string>
                <key>PlistPath</key>
                <string>Contents/Info.plist</string>
        </dict>
 
Last edited:
I am using a BCM94360CD on Big Sur. No bluetooth. I tried all these BCM fixes, but the documentation on how to incorporate that into the config are sparse. On the GitHub page it says something about including the AirPortBrcm4360_Injector.kext from the new PlugIns folder, but the next line it reads to remove or block that kext. I am thoroughly confused and nothing works. I mean Wi-Fi does. Also everyone and their USB dongles and PCIe cards confuse me further. I installed this like the regular AirPort cards do.
Using Martin's Package.

I have changed the config in all types of variations to no avail.
I removed the Mojave related IOH injections. In case that's only meant for older cards than this one.

Up til now I had my original BT and AirPort card working. It must have slowed down the system greatly though. I could feel the difference right after the removal.

Code:
<dict>
                <key>BundlePath</key>
                <string>AirportBrcmFixup.kext</string>
                <key>Comment</key>
                <string></string>
                <key>Enabled</key>
                <true/>
                <key>ExecutablePath</key>
                <string>Contents/MacOS/AirportBrcmFixup</string>
                <key>MaxKernel</key>
                <string></string>
                <key>MinKernel</key>
                <string></string>
                <key>PlistPath</key>
                <string>Contents/Info.plist</string>
        </dict>
        <dict>
            <key>BundlePath</key>
            <string>AirportBrcmFixup.kext/Contents/PlugIns/AirPortBrcm4360_Injector.kext</string>
            <key>Comment</key>
            <string></string>
            <key>Enabled</key>
            <true/>
            <key>ExecutablePath</key>
            <string></string>
            <key>MaxKernel</key>
            <string></string>
            <key>MinKernel</key>
            <string></string>
            <key>PlistPath</key>
            <string>Contents/Info.plist</string>
    </dict>
    <dict>
        <key>BundlePath</key>
        <string>AirportBrcmFixup.kext/Contents/PlugIns/AirPortBrcmNIC_Injector.kext</string>
        <key>Comment</key>
        <string></string>
        <key>Enabled</key>
        <true/>
        <key>ExecutablePath</key>
        <string></string>
        <key>MaxKernel</key>
        <string></string>
        <key>MinKernel</key>
        <string></string>
        <key>PlistPath</key>
        <string>Contents/Info.plist</string>
</dict>
            <dict>
                <key>BundlePath</key>
                <string>BrcmBluetoothInjector.kext</string>
                <key>Comment</key>
                <string></string>
                <key>Enabled</key>
                <true/>
                <key>ExecutablePath</key>
                <string></string>
                <key>MaxKernel</key>
                <string></string>
                <key>MinKernel</key>
                <string></string>
                <key>PlistPath</key>
                <string>Contents/Info.plist</string>
        </dict>
        <dict>
                <key>BundlePath</key>
                <string>BrcmFirmwareData.kext</string>
                <key>Comment</key>
                <string></string>
                <key>Enabled</key>
                <true/>
                <key>ExecutablePath</key>
                <string>Contents/MacOS/BrcmFirmwareData</string>
                <key>MaxKernel</key>
                <string></string>
                <key>MinKernel</key>
                <string></string>
                <key>PlistPath</key>
                <string>Contents/Info.plist</string>
        </dict>
        <dict>
                <key>BundlePath</key>
                <string>BrcmPatchRAM3.kext</string>
                <key>Comment</key>
                <string></string>
                <key>Enabled</key>
                <true/>
                <key>ExecutablePath</key>
                <string>Contents/MacOS/BrcmPatchRAM3</string>
                <key>MaxKernel</key>
                <string></string>
                <key>MinKernel</key>
                <string></string>
                <key>PlistPath</key>
                <string>Contents/Info.plist</string>
        </dict>


Fixed it myself by using https://github.com/chris1111/Kext-Droplet-Big-Sur to load the kexts.
My card is one from china 0x111.
I think OC on my machine has issues loading some kexts, I don't know why.
Or maybe my config was wrong. This is it now, anyways:

Code:
<dict>
                    <key>BundlePath</key>
                    <string>AirportBrcmFixup.kext/Contents/PlugIns/AirPortBrcmNIC_Injector.kext</string>
                    <key>Comment</key>
                    <string></string>
                    <key>Enabled</key>
                    <true/>
                    <key>ExecutablePath</key>
                    <string></string>
                    <key>MaxKernel</key>
                    <string></string>
                    <key>MinKernel</key>
                    <string></string>
                    <key>PlistPath</key>
                    <string>Contents/Info.plist</string>
            </dict>
        <dict>
                    <key>BundlePath</key>
                    <string>BrcmBluetoothInjector.kext</string>
                    <key>Comment</key>
                    <string></string>
                    <key>Enabled</key>
                    <true/>
                    <key>ExecutablePath</key>
                    <string></string>
                    <key>MaxKernel</key>
                    <string></string>
                    <key>MinKernel</key>
                    <string></string>
                    <key>PlistPath</key>
                    <string>Contents/Info.plist</string>
            </dict>
            <dict>
                    <key>BundlePath</key>
                    <string>BrcmFirmwareData.kext</string>
                    <key>Comment</key>
                    <string></string>
                    <key>Enabled</key>
                    <true/>
                    <key>ExecutablePath</key>
                    <string>Contents/MacOS/BrcmFirmwareData</string>
                    <key>MaxKernel</key>
                    <string></string>
                    <key>MinKernel</key>
                    <string></string>
                    <key>PlistPath</key>
                    <string>Contents/Info.plist</string>
            </dict>
            <dict>
                    <key>BundlePath</key>
                    <string>BrcmPatchRAM3.kext</string>
                    <key>Comment</key>
                    <string></string>
                    <key>Enabled</key>
                    <true/>
                    <key>ExecutablePath</key>
                    <string>Contents/MacOS/BrcmPatchRAM3</string>
                    <key>MaxKernel</key>
                    <string></string>
                    <key>MinKernel</key>
                    <string></string>
                    <key>PlistPath</key>
                    <string>Contents/Info.plist</string>
            </dict>
 
Not sure what changed but after latest Windows update done few days ago, combined with OC 0.7.1+macOS 11.4 gives me zero Bluetooth issues. My OC config.
 
Not sure what changed but after latest Windows update done few days ago, combined with OC 0.7.1+macOS 11.4 gives me zero Bluetooth issues. My OC config.
I wonder if it will be the same on macOS 11.5.1? :)
Going from 11.4 to 11.5 is when my Bluetooth trouble started (hardware dongle not recognize in macOS anymore – fine in Windows 10).


Forget it!
Reverting back to OC 0.7.0 from @h9826790 enabled Bluetooth back on for me in Big Sur 11.5.1.
 
Last edited:
I wonder if it will be the same on macOS 11.5.1? :)
Going from 11.4 to 11.5 is when my Bluetooth trouble started (hardware dongle not recognize in macOS anymore – fine in Windows 10).


Forget it!
Reverting back to OC 0.7.0 from @h9826790 enabled Bluetooth back on for me in Big Sur 11.5.1.
@star-affinity maybe would be good for you to specify in the posts or signature that you have the stock 4,1 WIFI/BT card so that there’s no confusion among different card models for readers.
 
@star-affinity maybe would be good for you to specify in the posts or signature that you have the stock 4,1 WIFI/BT card so that there’s no confusion among different card models for readers.
OK, I'll see if can mange that. :)
Like I mentioned in another thread I just have an external BT 4.0 USB dongle in my MacPro5,1 – I have disconnected the built-in BT 2.1 hardware.
 
  • Like
Reactions: Stex
Have possible similar issues with cMP 5,1 Bluetooth + OpenCore. Installed a RX6600 and did a fresh install of Monterey. Keyboard and mouse are not working randomly, using external hub to solve this issue.

Have installed Windows 11 on another SSD as well, no Bluetooth issues in Windows.
 

Attachments

  • Schermafbeelding 2023-03-17 om 13.25.00.png
    Schermafbeelding 2023-03-17 om 13.25.00.png
    290.1 KB · Views: 61
Last edited:
Some have success with routing the internal bluetooth board usb output via a header cable thru a USB hub.

Still have a USB cable with open wires here to investigate, just needed a hint to remember ;-)
 
I could try a usb stick, I have a flashed CSR8510 laying around, the mouse lags anyway with the MacPro's BT.

Code:
CSR8510 A10:
  Productcode:    0x21e8
  Fabrikantcode:    0x05ac (Apple Inc.)
  Versie:    88.91
  Snelheid:    Maximaal 12 Mb/s
  Locatiecode:    0xfd130000 / 2
  Beschikbare stroom (mA):    500
  Extra stroom in werking (mA):    0
 
Checked with another working Mac Pro 5,1 with OpenCore config done by OCLP and noticed different Kernel settings. OCLP uses Bluetooth-Spoof.kext (patch for BRCM2046 + 2070), wasn't present in the current config. Added manually without success. Ended up using OCLP to build complete OC config and post-install patches. Works out of the box, bluetooth fixed 🥳
 
I could try a usb stick, I have a flashed CSR8510 laying around, the mouse lags anyway with the MacPro's BT.

Code:
CSR8510 A10:
  Productcode:    0x21e8
  Fabrikantcode:    0x05ac (Apple Inc.)
  Versie:    88.91
  Snelheid:    Maximaal 12 Mb/s
  Locatiecode:    0xfd130000 / 2
  Beschikbare stroom (mA):    500
  Extra stroom in werking (mA):    0

tell us more about the flashing tools.

there are loads of CSR8510 with different firmwares, some work, some not.

btw: its way better to disconnect the internal Bluetooth header when using a bt dongle.
 
tell us more about the flashing tools.

there are loads of CSR8510 with different firmwares, some work, some not.

btw: its way better to disconnect the internal Bluetooth header when using a bt dongle.
I was long time ago, guess I used BlueSuite to switch to HCI mode and changed VID and PID to an Apple recognized chipset (VID 0x05ac, PID 0x21e8) . Some info over here provided some help, guess I still have the tool laying around on one of my backups if you might need it.
 
  • Like
Reactions: Macschrauber
I was long time ago, guess I used BlueSuite to switch to HCI mode and changed VID and PID to an Apple recognized chipset (VID 0x05ac, PID 0x21e8) . Some info over here provided some help, guess I still have the tool laying around on one of my backups if you might need it.

CSR removed all BlueSuite releases from the support site some years ago, most are saved here:

 
Hooked a BCM94360CS to an USB cable. Seems to work but range sucks 😕. Probably the WiFi chip needs to switch the RF multiplexer to have output on the RF connectors. Idea was to stick it underneath my desk to have my magic mouse running without lagging. Switched back to the CSR8510 dongle.

1679746079682.png



1679745669841.png
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.