-
Notifications
You must be signed in to change notification settings - Fork 477
Work Around with Bluetooth
Steve Z edited this page Jun 21, 2025
·
58 revisions
Thanks to zxystd for providing IntelBluetoothFirmware, which let the native Intel Bluetooth work. However, the current Intel BT driver does not support some Bluetooth devices. Here are some suggestions for better BT experience:
- Insert a USB Bluetooth / Disable the original one
- Solder D+ and D- wires to the WLAN_LTE slot
- Solder D+ and D- wires to the fingerprint slot
- Buy and insert a supported BT dongle model from BrcmPatchRAM README
-
For Clover users:
- Replace
/CLOVER/ACPI/patched/SSDT-USB.amlwithSSDT-USB-USBBT.aml - Delete
BlueToolFixup.kext,IntelBTPatcher.kext,IntelBluetoothFirmware.kext, andIntelBluetoothInjector.kextin/CLOVER/kexts/- These steps are for disabling the internal Bluetooth
-
Download and add
BlueToolFixup.kext(macOS12),BrcmBluetoothInjector.kext(< macOS12),BrcmFirmwareData.kext, andBrcmPatchRAM3.kextto/CLOVER/kexts/Other/(Don't need to do this step if you just want to disable the embedded Intel Bluetooth) - Rebuild kextcache and restart
- Replace
-
For OC users:
- Add
SSDT-USB-USBBT.amlto/OC/ACPI/ -
Download and add
BrcmBluetoothInjector.kext(< macOS12),BrcmFirmwareData.kext, andBrcmPatchRAM3.kextto/OC/Kexts/(Don't need to do this step if you just want to disable the embedded Intel Bluetooth) - Open
/OC/config.plist, change the following code:
- Add
<dict>
<key>Comment</key>
<string>USB ports customization(Native Bluetooth)</string>
<key>Enabled</key>
- <true/>
+ <false/>
<key>Path</key>
<string>SSDT-USB.aml</string>
</dict>- And then change the following code:
<dict>
<key>Comment</key>
<string>USB ports customization(Disable native Bluetooth)</string>
<key>Enabled</key>
- <false/>
+ <true/>
<key>Path</key>
<string>SSDT-USB-USBBT.aml</string>
</dict>- Don't forget to disable Intel Bluetooth kexts, change the following code:
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>BundlePath</key>
<string>BlueToolFixup.kext</string>
<key>Comment</key>
<string>Force BlueTool to skip firmware update on Monterey</string>
<key>Enabled</key>
- <true/>
+ <false/>
<key>ExecutablePath</key>
<string>Contents/MacOS/BlueToolFixup</string>
<key>MaxKernel</key>
<string>25.9.9</string>
<key>MinKernel</key>
<string>21.0.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>BundlePath</key>
<string>IntelBTPatcher.kext</string>
<key>Comment</key>
<string>A Lilu base patcher that fix Intel Bluetooth</string>
<key>Enabled</key>
- <true/>
+ <false/>
<key>ExecutablePath</key>
<string>Contents/MacOS/IntelBTPatcher</string>
<key>MaxKernel</key>
<string>25.9.9</string>
<key>MinKernel</key>
<string>16.0.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>BundlePath</key>
<string>IntelBluetoothFirmware.kext</string>
<key>Comment</key>
<string>Bluetooth</string>
<key>Enabled</key>
- <true/>
+ <false/>
<key>ExecutablePath</key>
<string>Contents/MacOS/IntelBluetoothFirmware</string>
<key>MaxKernel</key>
<string>25.9.9</string>
<key>MinKernel</key>
<string>16.0.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>BundlePath</key>
<string>IntelBluetoothInjector.kext</string>
<key>Comment</key>
<string>Bluetooth</string>
<key>Enabled</key>
- <true/>
+ <false/>
<key>ExecutablePath</key>
<string></string>
<key>MaxKernel</key>
<string>20.9.9</string>
<key>MinKernel</key>
<string>16.0.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>- Also, add these code into
Kernel - Addsection: (Don't need to do this step if you just want to disable the embedded Intel Bluetooth)
<dict>
<key>Arch</key>
<string>x86_64</string>
<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>20.9.9</string>
<key>MinKernel</key>
<string>14.0.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<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>25.9.9</string>
<key>MinKernel</key>
<string>14.0.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<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>25.9.9</string>
<key>MinKernel</key>
<string>19.0.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>- For macOS12, re-enable
BlueToolFixupis necessary: (Don't need to do this step if you just want to disable the embedded Intel Bluetooth)
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>BundlePath</key>
<string>BlueToolFixup.kext</string>
<key>Comment</key>
<string>Force BlueTool to skip firmware update on Monterey</string>
<key>Enabled</key>
- <false/>
+ <true/>
<key>ExecutablePath</key>
<string>Contents/MacOS/BlueToolFixup</string>
<key>MaxKernel</key>
<string>25.9.9</string>
<key>MinKernel</key>
<string>21.0.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>- Buy and insert a supported internal wireless card(e.g. BCM943602CS) in M.2 slot
- Carefully solder D+ and D- wires to the WLAN_LTE slot as #7
- Go to Windows, run
Device Managerto check whether the soldering is success or not -
For Clover users:
- If success, replace
/CLOVER/ACPI/patched/SSDT-USB.amlwith SSDT-USB-WLAN_LTEBT.aml - Delete
BlueToolFixup.kext,IntelBTPatcher.kext,IntelBluetoothFirmware.kext, andIntelBluetoothInjector.kextin/CLOVER/kexts/
- If success, replace
-
For OC users:
- Add SSDT-USB-WLAN_LTEBT.aml to
/OC/ACPI/ - Open
/OC/config.plist, change the following code:
- Add SSDT-USB-WLAN_LTEBT.aml to
<dict>
<key>Comment</key>
<string>USB ports customization(Native Bluetooth)</string>
<key>Enabled</key>
- <true/>
+ <false/>
<key>Path</key>
<string>SSDT-USB.aml</string>
</dict>- And then change the following code:
<dict>
<key>Comment</key>
<string>USB ports customization(WLAN_LTE Bluetooth)</string>
<key>Enabled</key>
- <false/>
+ <true/>
<key>Path</key>
<string>SSDT-USB-WLAN_LTEBT.aml</string>
</dict>- Don't forget to disable Intel Bluetooth kexts, change the following code:
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>BundlePath</key>
<string>BlueToolFixup.kext</string>
<key>Comment</key>
<string>Force BlueTool to skip firmware update on Monterey</string>
<key>Enabled</key>
- <true/>
+ <false/>
<key>ExecutablePath</key>
<string>Contents/MacOS/BlueToolFixup</string>
<key>MaxKernel</key>
<string>25.9.9</string>
<key>MinKernel</key>
<string>21.0.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>BundlePath</key>
<string>IntelBTPatcher.kext</string>
<key>Comment</key>
<string>A Lilu base patcher that fix Intel Bluetooth</string>
<key>Enabled</key>
- <true/>
+ <false/>
<key>ExecutablePath</key>
<string>Contents/MacOS/IntelBTPatcher</string>
<key>MaxKernel</key>
<string>25.9.9</string>
<key>MinKernel</key>
<string>16.0.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>BundlePath</key>
<string>IntelBluetoothFirmware.kext</string>
<key>Comment</key>
<string>Bluetooth</string>
<key>Enabled</key>
- <true/>
+ <false/>
<key>ExecutablePath</key>
<string>Contents/MacOS/IntelBluetoothFirmware</string>
<key>MaxKernel</key>
<string>25.9.9</string>
<key>MinKernel</key>
<string>16.0.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>BundlePath</key>
<string>IntelBluetoothInjector.kext</string>
<key>Comment</key>
<string>Bluetooth</string>
<key>Enabled</key>
- <true/>
+ <false/>
<key>ExecutablePath</key>
<string></string>
<key>MaxKernel</key>
<string>20.9.9</string>
<key>MinKernel</key>
<string>16.0.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>- Buy and insert a supported internal wireless card(e.g. BCM943602CS) in M.2 slot
- Carefully solder D+ and D- wires to the fingerprint slot as #246
- Go to Windows, run
Device Managerto check whether the soldering is success or not -
For Clover users:
- If success, replace
/CLOVER/ACPI/patched/SSDT-USB.amlwithSSDT-USB-FingerBT.aml - Delete
BlueToolFixup.kext,IntelBTPatcher.kext,IntelBluetoothFirmware.kext, andIntelBluetoothInjector.kextin/CLOVER/kexts/
- If success, replace
-
For OC users:
- Add
SSDT-USB-FingerBT.amlto/OC/ACPI/ - Open
/OC/config.plist, change the following code:
- Add
<dict>
<key>Comment</key>
<string>USB ports customization(Native Bluetooth)</string>
<key>Enabled</key>
- <true/>
+ <false/>
<key>Path</key>
<string>SSDT-USB.aml</string>
</dict>- And then change the following code (If you can't find it, please add manually):
<dict>
<key>Comment</key>
<string>USB ports customization(Fingerprint Bluetooth)</string>
<key>Enabled</key>
- <false/>
+ <true/>
<key>Path</key>
<string>SSDT-USB-FingerBT.aml</string>
</dict>- Don't forget to disable Intel Bluetooth kexts, change the following code:
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>BundlePath</key>
<string>BlueToolFixup.kext</string>
<key>Comment</key>
<string>Force BlueTool to skip firmware update on Monterey</string>
<key>Enabled</key>
- <true/>
+ <false/>
<key>ExecutablePath</key>
<string>Contents/MacOS/BlueToolFixup</string>
<key>MaxKernel</key>
<string>25.9.9</string>
<key>MinKernel</key>
<string>21.0.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>BundlePath</key>
<string>IntelBTPatcher.kext</string>
<key>Comment</key>
<string>A Lilu base patcher that fix Intel Bluetooth</string>
<key>Enabled</key>
- <true/>
+ <false/>
<key>ExecutablePath</key>
<string>Contents/MacOS/IntelBTPatcher</string>
<key>MaxKernel</key>
<string>25.9.9</string>
<key>MinKernel</key>
<string>16.0.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>BundlePath</key>
<string>IntelBluetoothFirmware.kext</string>
<key>Comment</key>
<string>Bluetooth</string>
<key>Enabled</key>
- <true/>
+ <false/>
<key>ExecutablePath</key>
<string>Contents/MacOS/IntelBluetoothFirmware</string>
<key>MaxKernel</key>
<string>25.9.9</string>
<key>MinKernel</key>
<string>16.0.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>BundlePath</key>
<string>IntelBluetoothInjector.kext</string>
<key>Comment</key>
<string>Bluetooth</string>
<key>Enabled</key>
- <true/>
+ <false/>
<key>ExecutablePath</key>
<string></string>
<key>MaxKernel</key>
<string>20.9.9</string>
<key>MinKernel</key>
<string>16.0.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>