黑苹果修复博通/英特尔蓝牙在macOS Monterey 12.0 正式版中失效的方法
起因
原文「修复蓝牙在macOS 12.0 Monterey中失效的临时解决方法」,现在 Monterey 正式版已发布,方法没有任何变化,这里编辑一下重新发布。
2021 年 6 月初的 WWDC2021 上,苹果发布了下一代 macOS,代号 Monterey(蒙特雷),大版本号 12.0。爱折腾爱尝鲜的黑苹果小伙伴们已经通过各种折腾安装上了新版 macOS。但是很快出现了各种各样的驱动问题,其中比较突出的是蓝牙掉驱动并且卡跑码问题。Monterey 大幅精简了蓝牙框架,原因是 macOS 12.0 砍掉了 2015 年之前机型的支持,另外可能也是为通用控制做准备。
很快,OC 团队做出反应添加了解决方案。说起来也简单,就是新加一个驱动:BlueToolFixup.kext,然后在 macOS 12.0 取消蓝牙 injector(注入器)的加载。
「注意」
- BlueToolFixup.kext 目前是 BrcmPatchRAM 文件包中的一部分,新版本发布会直接包括这个文件,英特尔蓝牙也需要这个驱动;
- 使用奋威 T919 或其它免驱动型网卡的,无需担心蓝牙兼容性问题,在 Monterey 里依旧无需任何驱动。
解决方法
- 将 Lilu 升级到 1.5.7 及以上;
- 博通卡:将 BrcmPatchRAM 升级到 2.6.1 及以上;
- 英特尔:将 IntelBluetoothFirmware 升级到 2.0.1 及以上;
- 关闭 OpenCore 的 XhciPortLimit,位于 config → Kernel → Quirks 区域,在升级或安装 macOS Monterey 之前,建议定制好 USB 接口;
- 将 BlueToolFixup.kext 放到 Clover/OpenCore 对应的 kext 目录
- OpenCore:/EFI/OC/Kexts/
- Clover:/EFI/CLOVER/Kexts/Other/
- 最后,按照下一章节的说明修改 config.plist 文件。
Clover 方法
Clover 使用文件夹名称来区别各个系统加载的 kext,所以可以这么操作:
- 博通卡:把 BrcmBluetoothInjector.kext 从 /EFI/CLOVER/Kexts/Other/ 挪到 /EFI/CLOVER/Kexts/11.0/,将 BlueToolFixup.kext 放到 /EFI/CLOVER/Kexts/12.0/
- 英特尔:把 IntelBluetoothInjector.kext 从 /EFI/CLOVER/Kexts/Other/ 挪到 /EFI/CLOVER/Kexts/11.0/,将 BlueToolFixup.kext 放到 /EFI/CLOVER/Kexts/12.0/
如果没有 11.0/12.0 的文件夹,自己新建就可以。这样一来 Clover 在引导 11.0 时会加载 Injector,但是引导 12.0 时则不会加载 Injector,会加载 BlueToolFixup.kext 。其它 Kext 文件继续放在 Other 目录无影响。
「注意」以上方法如果不起作用,那么在迁移到 Monterey 时,需要手动从 Kext 目录移除 Injector 文件。「提示」如果你没有从 12.0 切换到低版本 macOS 的需求,xxxxInjector .kext 可以直接删除(无论博通和英特尔都一样),无需设置文件夹;
OpenCore 方法
OpenCore 用户推荐使用另一种方法,利用 OpenCore 的最小内核(MinKernel)和最大内核(MaxKernel)特性,给 injector 设置最大内核 20.99.99,也就是对应 macOS Big Sur 11.0,给 BlueToolFixup.kext 设置最小内核 21.0.0,对应 macOS Monterey 12.0。
「提示」如果你没有从 12.0 切换到低版本 macOS 的需求,xxxxInjector .kext 可以直接删除(无论博通和英特尔都一样),也无需设置最大最小内核;
可以直接看图操作:
完成后,记得保存然后重启,如果无效,请关机冷启动,清除 Kext 缓存,或尝试重置 NVRAM。
1. 本站资源收集于网络,仅做学习和交流使用,请于下载后24小时内删除。如果你喜欢我们推荐的软件,请购买正版支持作者。
2. 如有无法下载的链接,联系:admin#heipg.cn,或到QQ群进行反馈,我们将及时进行处理。
3. 本站发布的内容若侵犯到您的权益,请联系站长删除,联系方式:admin#heipg.cn,我们将第一时间配合处理!
黑苹果星球 » 黑苹果修复博通/英特尔蓝牙在macOS Monterey 12.0 正式版中失效的方法
感谢大佬分享
博通网卡蓝牙无效原因是在有些主板上面会使用USB2.0接口 需要先在windows下面定制USB端口 在按照上面的方法打驱动就好了
monterey 可以支持ax200的蓝牙5.1吗,或者买更老板的ax200+蓝牙5.0???这次买ax210上当,ax200选择是5.0还是5.1好
如果是600系主板,它的AX2xx蓝牙出厂默认就是5.2的固件,这个可以试试去windows里降级,也没什么更好的办法
在monterey下ax210蓝牙还是无法驱动
airportitlwm驱动开发团队明确表示5.2蓝牙暂不支持
升级到12.3.1,用的是BCM94360CS2,wifi正常,蓝牙不行
這個驅動文件注入之後,Wi-Fi正常,但是藍牙不正常….Intel 7265ac無線網卡,藍牙無法驅動,系統訊息裡面見到是bcm4350C2,有辦法修復嗎?
按照上面的方法试过了,还是不能用蓝牙。也试过重置NVRAM和清除kext缓存了,系统版本为Monterey 12.1,蓝牙驱动也都是最新的。
Monterey里英特尔的蓝牙有些型号是不支持的,建议直接到驱动页面看说明或者发issue
把最新编译的IntelBluetoothFirmware.kext 3.0.0 文件大小2.9MB、BlueToolFixup.kext 2.6.1 文件大小42KB放到kext就可以了,不用改内核的,IntelBluetoothInjector.kext在12.0.1中直接删除就好了,最新的BlueToolFixup.kext已经修复了在12.0.1版本下蓝牙失效和蓝牙关闭后不能打开的问题
感谢反馈,这么设置内核是为了配置的普适性,如果 BlueToolFixup.kext 可以完全代替 Injector,那就更好了,等一波版本更新,更新完了实测后修改 :)
最新编译的IntelBluetoothFirmware.kext 3.0.0??你好,这个最新版本是2.1吧。能麻烦提供下您的3.0.0版本吗