黑苹果修复博通/英特尔蓝牙在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。

 

 

0. 本站所有资源解压密码均为 heipg.cn
1. 本站资源收集于网络,仅做学习和交流使用,请于下载后24小时内删除。如果你喜欢我们推荐的软件,请购买正版支持作者。
2. 如有无法下载的链接,联系:admin#heipg.cn,或到QQ群进行反馈,我们将及时进行处理。
3. 本站发布的内容若侵犯到您的权益,请联系站长删除,联系方式:admin#heipg.cn,我们将第一时间配合处理!

黑苹果星球 » 黑苹果修复博通/英特尔蓝牙在macOS Monterey 12.0 正式版中失效的方法

12 评论

  1. 博通网卡蓝牙无效原因是在有些主板上面会使用USB2.0接口 需要先在windows下面定制USB端口 在按照上面的方法打驱动就好了

  2. monterey 可以支持ax200的蓝牙5.1吗,或者买更老板的ax200+蓝牙5.0???这次买ax210上当,ax200选择是5.0还是5.1好

    1. 如果是600系主板,它的AX2xx蓝牙出厂默认就是5.2的固件,这个可以试试去windows里降级,也没什么更好的办法

  3. 在monterey下ax210蓝牙还是无法驱动

    1. airportitlwm驱动开发团队明确表示5.2蓝牙暂不支持

  4. 升级到12.3.1,用的是BCM94360CS2,wifi正常,蓝牙不行

  5. 這個驅動文件注入之後,Wi-Fi正常,但是藍牙不正常….Intel 7265ac無線網卡,藍牙無法驅動,系統訊息裡面見到是bcm4350C2,有辦法修復嗎?

  6. 按照上面的方法试过了,还是不能用蓝牙。也试过重置NVRAM和清除kext缓存了,系统版本为Monterey 12.1,蓝牙驱动也都是最新的。

    1. Monterey里英特尔的蓝牙有些型号是不支持的,建议直接到驱动页面看说明或者发issue

  7. 把最新编译的IntelBluetoothFirmware.kext 3.0.0 文件大小2.9MB、BlueToolFixup.kext 2.6.1 文件大小42KB放到kext就可以了,不用改内核的,IntelBluetoothInjector.kext在12.0.1中直接删除就好了,最新的BlueToolFixup.kext已经修复了在12.0.1版本下蓝牙失效和蓝牙关闭后不能打开的问题

    1. 感谢反馈,这么设置内核是为了配置的普适性,如果 BlueToolFixup.kext 可以完全代替 Injector,那就更好了,等一波版本更新,更新完了实测后修改 :)

    2. 最新编译的IntelBluetoothFirmware.kext 3.0.0??你好,这个最新版本是2.1吧。能麻烦提供下您的3.0.0版本吗

发表回复