Contribute
Register

[Solved] Repair Bluetooth after Xbox360 controller drivers installed

Status
Not open for further replies.
Joined
Sep 18, 2017
Messages
2
Motherboard
MSI H270I GAMING PRO AC
CPU
Intel i3 7100
Graphics
Geforce gtx 1050 Ti Palit KALMX
Mac
  1. Mac mini
I have Broadcom BCM94352Z chip installed (using BrcmFirmwareData.kext, BrcmNonPatchRAM2.kext and BrcmPatchRAM2.kext in my EFI/Clover/kexts/Other folder), and bluetooth and wifi was working until I installed the drivers for xbox 360 controllers.

It has somehow broken my bluetooth. Boot time went from ~30s to couple minutes. The following error is spit out in my console (and similar text when booting with -v).

Code:
...
default    16:33:09.704832 +0100    kextd    Kext rejected due to improper filesystem permissions: <OSKext 0x7fe7621dfc40 [0x7fff836c4980]> { URL = "file:///System/Library/Extensions/IOBluetoothFamily.kext/Contents/PlugIns/BroadcomBluetoothHostControllerUSBTransport.kext/", ID = "com.apple.iokit.BroadcomBluetoothHostControllerUSBTransport" }
default    16:33:09.704873 +0100    kextd    com.apple.iokit.BroadcomBluetoothHostControllerUSBTransport failed security checks; failing.
default    16:33:09.704899 +0100    kextd    String/URL conversion failure.
default    16:33:09.707304 +0100    kernel    BrcmPatchRAM2: Version 2.2.7 starting on OS X Darwin 17.3.
default    16:33:09.707336 +0100    kernel    BrcmPatchRAM2: [0a5c:216f]: USB [184F32F33896 v274] "BCM20702A0" by "Broadcom Corp"
default    16:33:09.733704 +0100    kernel    BrcmPatchRAM2: [0a5c:216f]: Firmware upgrade not needed.
default    16:33:09.738958 +0100    kernel    BrcmPatchRAM2: [0a5c:216f]: Published new IOKit personality.
default    16:33:09.739959 +0100    kernel    BrcmPatchRAM2: Processing time 0.32 seconds.
default    16:33:09.744639 +0100    kextd    Kext rejected due to improper filesystem permissions: <OSKext 0x7fe7621dfc40 [0x7fff836c4980]> { URL = "file:///System/Library/Extensions/IOBluetoothFamily.kext/Contents/PlugIns/BroadcomBluetoothHostControllerUSBTransport.kext/", ID = "com.apple.iokit.BroadcomBluetoothHostControllerUSBTransport" }
default    16:33:09.744679 +0100    kextd    com.apple.iokit.BroadcomBluetoothHostControllerUSBTransport failed security checks; failing.
default    16:33:09.744702 +0100    kextd    String/URL conversion failure.
default    16:33:09.747328 +0100    kernel    BrcmPatchRAM2: Version 2.2.7 starting on OS X Darwin 17.3.
default    16:33:09.747364 +0100    kernel    BrcmPatchRAM2: [0a5c:216f]: USB [184F32F33896 v274] "BCM20702A0" by "Broadcom Corp"
default    16:33:09.773690 +0100    kernel    BrcmPatchRAM2: [0a5c:216f]: Firmware upgrade not needed.
default    16:33:09.779139 +0100    kernel    BrcmPatchRAM2: [0a5c:216f]: Published new IOKit personality.
default    16:33:09.780155 +0100    kernel    BrcmPatchRAM2: Processing time 0.32 seconds.
default    16:33:09.784641 +0100    kextd    Kext rejected due to improper filesystem permissions: <OSKext 0x7fe7621dfc40 [0x7fff836c4980]> { URL = "file:///System/Library/Extensions/IOBluetoothFamily.kext/Contents/PlugIns/BroadcomBluetoothHostControllerUSBTransport.kext/", ID = "com.apple.iokit.BroadcomBluetoothHostControllerUSBTransport" }
default    16:33:09.784681 +0100    kextd    com.apple.iokit.BroadcomBluetoothHostControllerUSBTransport failed security checks; failing.
default    16:33:09.784706 +0100    kextd    String/URL conversion failure.
default    16:33:09.787339 +0100    kernel    BrcmPatchRAM2: Version 2.2.7 starting on OS X Darwin 17.3.
default    16:33:09.787377 +0100    kernel    BrcmPatchRAM2: [0a5c:216f]: USB [184F32F33896 v274] "BCM20702A0" by "Broadcom Corp"
default    16:33:09.813707 +0100    kernel    BrcmPatchRAM2: [0a5c:216f]: Firmware upgrade not needed.
default    16:33:09.818946 +0100    kernel    BrcmPatchRAM2: [0a5c:216f]: Published new IOKit personality.
default    16:33:09.819922 +0100    kernel    BrcmPatchRAM2: Processing time 0.32 seconds.
default    16:33:09.824759 +0100    kextd    Kext rejected due to improper filesystem permissions: <OSKext 0x7fe7621dfc40 [0x7fff836c4980]> { URL = "file:///System/Library/Extensions/IOBluetoothFamily.kext/Contents/PlugIns/BroadcomBluetoothHostControllerUSBTransport.kext/", ID = "com.apple.iokit.BroadcomBluetoothHostControllerUSBTransport" }
default    16:33:09.824800 +0100    kextd    com.apple.iokit.BroadcomBluetoothHostControllerUSBTransport failed security checks; failing.
default    16:33:09.824822 +0100    kextd    String/URL conversion failure.
default    16:33:09.827353 +0100    kernel    BrcmPatchRAM2: Version 2.2.7 starting on OS X Darwin 17.3.
default    16:33:09.827384 +0100    kernel    BrcmPatchRAM2: [0a5c:216f]: USB [184F32F33896 v274] "BCM20702A0" by "Broadcom Corp"
default    16:33:09.853711 +0100    kernel    BrcmPatchRAM2: [0a5c:216f]: Firmware upgrade not needed.
default    16:33:09.859050 +0100    kernel    BrcmPatchRAM2: [0a5c:216f]: Published new IOKit personality.
default    16:33:09.860034 +0100    kernel    BrcmPatchRAM2: Processing time 0.32 seconds.
...

I've run the following terminal command:
Code:
sudo chmod -R 755 /Library/Extensions
sudo chown -R root:wheel /Library/Extensions

Followed by:
Code:
sudo touch /System/Library/Extensions && sudo kextcache -u /

Which sits out:
Code:
IOKitWaitQuiet() timed out.
Kext rejected due to improper filesystem permissions: <OSKext 0x7f80fdc83a50 [0x7fff836c4980]> { URL = "BroadcomBluetoothHostControllerUSBTransport.kext/ -- file:///System/Library/Extensions/IOBluetoothFamily.kext/Contents/PlugIns/", ID = "com.apple.iokit.BroadcomBluetoothHostControllerUSBTransport" }
BroadcomBluetoothHostControllerUSBTransport.kext does not authenticate; omitting.
KernelCache ID: FC4B08CE86F96215DD07BC0846666B04


Running:
Code:
pkgutil --files com.mice.pkg.Xbox360controller
Spits out:
Code:
Library
Library/Application Support
Library/Application Support/MICE
Library/Application Support/MICE/360Daemon.app
Library/Application Support/MICE/360Daemon.app/Contents
Library/Application Support/MICE/360Daemon.app/Contents/Info.plist
Library/Application Support/MICE/360Daemon.app/Contents/MacOS
Library/Application Support/MICE/360Daemon.app/Contents/MacOS/360Daemon
Library/Application Support/MICE/360Daemon.app/Contents/PkgInfo
Library/Application Support/MICE/360Daemon.app/Contents/Resources
Library/Application Support/MICE/360Daemon.app/Contents/Resources/360Control.icns
Library/Application Support/MICE/360Daemon.app/Contents/Resources/Alert.tif
Library/Application Support/MICE/360Daemon.app/Contents/Resources/en.lproj
Library/Application Support/MICE/360Daemon.app/Contents/Resources/en.lproj/InfoPlist.strings
Library/Application Support/MICE/360Daemon.app/Contents/Resources/en.lproj/Localizable.strings
Library/Application Support/MICE/360Daemon.app/Contents/_CodeSignature
Library/Application Support/MICE/360Daemon.app/Contents/_CodeSignature/CodeResources
Library/Extensions
Library/Extensions/360Controller.kext
Library/Extensions/360Controller.kext/Contents
Library/Extensions/360Controller.kext/Contents/Info.plist
Library/Extensions/360Controller.kext/Contents/MacOS
Library/Extensions/360Controller.kext/Contents/MacOS/360Controller
Library/Extensions/360Controller.kext/Contents/PlugIns
Library/Extensions/360Controller.kext/Contents/PlugIns/Feedback360.plugin
Library/Extensions/360Controller.kext/Contents/PlugIns/Feedback360.plugin/Contents
Library/Extensions/360Controller.kext/Contents/PlugIns/Feedback360.plugin/Contents/Info.plist
Library/Extensions/360Controller.kext/Contents/PlugIns/Feedback360.plugin/Contents/MacOS
Library/Extensions/360Controller.kext/Contents/PlugIns/Feedback360.plugin/Contents/MacOS/Feedback360
Library/Extensions/360Controller.kext/Contents/PlugIns/Feedback360.plugin/Contents/Resources
Library/Extensions/360Controller.kext/Contents/PlugIns/Feedback360.plugin/Contents/Resources/English.lproj
Library/Extensions/360Controller.kext/Contents/PlugIns/Feedback360.plugin/Contents/Resources/English.lproj/InfoPlist.strings
Library/Extensions/360Controller.kext/Contents/PlugIns/Feedback360.plugin/Contents/_CodeSignature
Library/Extensions/360Controller.kext/Contents/PlugIns/Feedback360.plugin/Contents/_CodeSignature/CodeResources
Library/Extensions/360Controller.kext/Contents/Resources
Library/Extensions/360Controller.kext/Contents/Resources/English.lproj
Library/Extensions/360Controller.kext/Contents/Resources/English.lproj/InfoPlist.strings
Library/Extensions/360Controller.kext/Contents/_CodeSignature
Library/Extensions/360Controller.kext/Contents/_CodeSignature/CodeResources
Library/Extensions/Wireless360Controller.kext
Library/Extensions/Wireless360Controller.kext/Contents
Library/Extensions/Wireless360Controller.kext/Contents/Info.plist
Library/Extensions/Wireless360Controller.kext/Contents/MacOS
Library/Extensions/Wireless360Controller.kext/Contents/MacOS/Wireless360Controller
Library/Extensions/Wireless360Controller.kext/Contents/Resources
Library/Extensions/Wireless360Controller.kext/Contents/Resources/English.lproj
Library/Extensions/Wireless360Controller.kext/Contents/Resources/English.lproj/InfoPlist.strings
Library/Extensions/Wireless360Controller.kext/Contents/_CodeSignature
Library/Extensions/Wireless360Controller.kext/Contents/_CodeSignature/CodeResources
Library/Extensions/WirelessGamingReceiver.kext
Library/Extensions/WirelessGamingReceiver.kext/Contents
Library/Extensions/WirelessGamingReceiver.kext/Contents/Info.plist
Library/Extensions/WirelessGamingReceiver.kext/Contents/MacOS
Library/Extensions/WirelessGamingReceiver.kext/Contents/MacOS/WirelessGamingReceiver
Library/Extensions/WirelessGamingReceiver.kext/Contents/Resources
Library/Extensions/WirelessGamingReceiver.kext/Contents/Resources/English.lproj
Library/Extensions/WirelessGamingReceiver.kext/Contents/Resources/English.lproj/InfoPlist.strings
Library/Extensions/WirelessGamingReceiver.kext/Contents/_CodeSignature
Library/Extensions/WirelessGamingReceiver.kext/Contents/_CodeSignature/CodeResources
Library/LaunchDaemons
Library/LaunchDaemons/com.mice.360Daemon.plist
Library/PreferencePanes
Library/PreferencePanes/Pref360Control.prefPane
Library/PreferencePanes/Pref360Control.prefPane/Contents
Library/PreferencePanes/Pref360Control.prefPane/Contents/Info.plist
Library/PreferencePanes/Pref360Control.prefPane/Contents/MacOS
Library/PreferencePanes/Pref360Control.prefPane/Contents/MacOS/Pref360Control
Library/PreferencePanes/Pref360Control.prefPane/Contents/Resources
Library/PreferencePanes/Pref360Control.prefPane/Contents/Resources/360Control.icns
Library/PreferencePanes/Pref360Control.prefPane/Contents/Resources/Assets.car
Library/PreferencePanes/Pref360Control.prefPane/Contents/Resources/DriverTool
Library/PreferencePanes/Pref360Control.prefPane/Contents/Resources/en.lproj
Library/PreferencePanes/Pref360Control.prefPane/Contents/Resources/en.lproj/InfoPlist.strings
Library/PreferencePanes/Pref360Control.prefPane/Contents/Resources/en.lproj/Localizable.strings
Library/PreferencePanes/Pref360Control.prefPane/Contents/Resources/en.lproj/Pref360ControlPref.nib
Library/PreferencePanes/Pref360Control.prefPane/Contents/Resources/pref360controlpref.tiff
Library/PreferencePanes/Pref360Control.prefPane/Contents/_CodeSignature
Library/PreferencePanes/Pref360Control.prefPane/Contents/_CodeSignature/CodeResources



Xbox controllers
https://github.com/360Controller/360Controller/releases

My Broadcom chip
https://www.ebay.com/itm/Broadcom-B...e=STRK:MEBIDX:IT&_trksid=p2057872.m2749.l2649
 
Okay, for the sake of documenting the solution if someone have a similar problem:


Code:
sudo kextutil -t /System/Library/Extensions/IOBluetoothFamily.kext/Contents/PlugIns/BroadcomBluetoothHostControllerUSBTransport.kext
Told me its Info.plist was not root:wheel.
Code:
[Kext rejected due to improper filesystem permissions: <OSKext 0x7f874a62e290 [0x7fff82913980]> { URL = "file:///System/Library/Extensions/IOBluetoothFamily.kext/Contents/PlugIns/BroadcomBluetoothHostControllerUSBTransport.kext/", ID = "com.apple.iokit.BroadcomBluetoothHostControllerUSBTransport" }

Diagnostics for /System/Library/Extensions/IOBluetoothFamily.kext/Contents/PlugIns/BroadcomBluetoothHostControllerUSBTransport.kext:

Authentication Failures:

    File owner/permissions are incorrect (must be root:wheel, nonwritable by group/other):

        Info.plist


Warnings:

    Personality CFBundleIdentifier differs from containing kext's (not necessarily a mistake, but rarely done):

        MacPro6_1 BRCM20702B0 Hub

        PID 8243 0x2033 VID 2652 0xA5C

    Dependency lacks appropriate value for OSBundleRequired and may not be available during early boot:

        com.apple.iokit.IOBluetoothFamily - Safe Boot

        com.apple.iokit.IOBluetoothHostControllerTransport - Safe Boot

        com.apple.iokit.IOBluetoothHostControllerUSBTransport - Safe Boot

    Personality CFBundleIdentifier names a kext that can't be found:

        'PID 8243 0x2033 VID 2652 0xA5C' -> 'com.apple.iokit.DoNotSupport'

Code:
ls -l /System/Library/Extensions/IOBluetoothFamily.kext/Contents/PlugIns/BroadcomBluetoothHostControllerUSBTransport.kext/Contents/
Verified that Info.plist was not root:wheel.

Code:
sudo chown -R root:wheel /System/Library/Extensions/IOBluetoothFamily.kext/Contents/PlugIns/BroadcomBluetoothHostControllerUSBTransport.kext/Contents/Info.plist
changed the Info.plist to root:wheel and bluetooth started working immediately.
 
Status
Not open for further replies.
Back
Top