BrcmPatchRAM.kext星辰云资源搜集到的黑苹果博通蓝牙补丁,最新的附件中包含以下驱动
- BrcmBluetoothInjector.kext
- BrcmBluetoothInjectorLegacy.kext
- BrcmFirmwareData.kext
- BrcmFirmwareRepo.kext
- BrcmNonPatchRAM.kext
- BrcmNonPatchRAM2.kext
- BrcmPatchRAM.kext
- BrcmPatchRAM2.kext
- BrcmPatchRAM3.kext
- BlueToolFixup.kext
概述
大多数博通 USB 蓝牙设备都使用称为 RAMUSB 的系统。 RAMUSB 允许动态更新设备的固件,但是在关闭计算机时,先前应用的任何更新都会丢失。
博通 Windows 驱动程序将在每次启动时将固件上载到博通蓝牙设备中,但是对于 macOS,此功能不可用。 BrcmPatchRAM kext 是一个 macOS 驱动程序,适用于基于博通 RAMUSB 的设备的 PatchRAM 更新。 每次启动/唤醒时,它将固件更新应用于博通蓝牙设备,与 Windows 驱动程序相同。 应用的固件是从 Windows 驱动程序中提取的,并且功能应与 Windows 相同。
请注意,白苹果的博通蓝牙设备不是 RAMUSB 设备,因此没有相同的固件机制。
安装
「注意」以下方法不适用于白苹果系统。
根据 macOS 版本安装 BrcmPatchRAM.kext 或 BrcmPatchRAM2.kext 或 BrcmPatchRAM3.kext 三者其中之一,不能三者都安装。可使用 OpenCore 或 Clover 等引导工具注入,不推荐修改 S/L/E 目录。
- BrcmPatchRAM.kext:适用于 10.10 或更早版本
- BrcmPatchRAM2.kext:适用于 10.11-10.14
- BrcmPatchRAM3.kext:适用于 10.15 或更高版本
另外,根据安装位置安装一个固件 kext BrcmFirmwareData.kext 或 BrcmFirmwareRepo.kext,不能同时使用。
- BrcmFirmwareData.kext:最适合使用引导程序注入,这是推荐配置。
- BrcmFirmwareRepo.kext:安装到/System/Library/Extensions(在 10.11 及更高版本上为 /Library/Extensions)。 该 kext 的内存效率比 BrcmFirmwareData.kext 略高,但是不能由引导程序注入系统。
- 高级用户:对于自定义固件注入器,请安装注入器以及 BrcmFirmwareRepo.kext。 这可以从 /System/Library/Extensions 或通过引导程序注入工作。
- 「可选」用户可以从 BrcmFirmwareRepo.kext/Contents/Resources 中删除所有固件。 如果通过引导程序使用注入器,则必须将 BrcmFirmwareRepo.kext 中的 Info.plist 中的 IOProviderClass 从disabled_IOResources 更改为 IOResources。
另外,如果您有非 PatchRAM 设备(或者不确定),请安装 macOS 版本的 BrcmNonPatchRAM.kext 或 BrcmNonPatchRAM2.kext 之一,不要同时安装两者。尽管这些 kext 不安装任何固件(这些设备内置了固件),但它们仍依赖 BrcmPatchRAM.kext/BrcmPatchRAM2.kext。
- BrcmNonPatchRAM.kext:适用于 10.10 或更早版本
- BrcmNonPatchRAM2.kext:适用于 10.11 或更高版本
其它安装细节
- BrcmPatchRAM.kext 或 BrcmPatchRAM2.kext 或 BrcmPatchRAM3.kext 可以通过引导加载程序 kext 注入安装,也可以放置在 /System/Library/Extensions(在10.11及更高版本中为 /Library/Extensions)中。 根据系统版本,注意每次只能选择其一安装。
- BrcmFirmwareRepo.kext 不适用于使用引导程序注入,除非使用特定于设备的固件注入器; BrcmFirmwareData.kext 可以与引导程序注入使用。
- BrcmPatchRAM 包含 2 个部分:
- BrcmPatchRAM 本身与受支持博通蓝牙 USB 设备(在 Info.plist 中配置)进行通信,并检测它们是否需要固件更新。如果需要固件更新,则匹配的固件数据将被上载到设备并重置设备;
- BrcmFirmwareStore(由 BrcmFirmwareData.kext 或 BrcmFirmwareRepo.kext 实现)是共享资源,其中包含用于不同博通蓝牙 USB 设备的所有已配置固件;
- 另外,可以通过引导加载程序或通过 BrcmPatchRAM 与 Continuity Activation Patch 结合使用 BT4LEContinuityFixup,OpenCore 用户可以使用 config.plist 中的 Kernel → Quirk 参数 ExtendBTFeatureFlags 进行修补。
注入器
BrcmBluetoothInjector.kext 是一个无代码内核扩展,它使用plist注入蓝牙硬件数据; 它不包含固件上载器。 用于 macOS 10.11 或更高版本,对于较旧的系统,请使用 BrcmBluetoothInjectorLetacy.kext;使用 BrcmPatchRAM3.kext 还需要 BrcmBluetoothInjector.kext,因为 macOS Catalina 10.15 中的更改要求使用单独的注射器注入到 kext。 这是由于删除了以下 IOCatalogue 方法:
因此,为了使设备(BroadcomBluetoothHostControllerUSBTransport)加载本地蓝牙驱动程序,应使用 IOProbeScore 稍低于 BrcmPatchRAM3 的 plist 进行注入,因此它不会在固件上传之前进行探测。
请勿在此 kext 上使用 BrcmPatchRAM 或 BrcmPatchRAM2。
BrcmBluetoothInjector 支持的设备:
支持的设备
BrcmPatchRAM 支持任何基于 BCM20702 芯片组的博通 USB 蓝牙设备(可能也支持其他芯片组,但是未经过测试)。「标注 * 号的为已测试成功」,目前支持以下设备:
非 PatchRAM 设备(BrcmPatchRAM 用于加速睡眠后的恢复):
经过测试的 PatchRAM 设备:
Windows 软件包中的所有固件都存在于 kext 中,并自动与其 供应商/设备ID(Vendor-id 和 Device-id)关联,固件已更新到版本 12.0.1.1105。
故障排除
安装 BrcmPatchRAM 之后,即使蓝牙图标出现,也可能是固件未正确更新的状态。可通过转到系统信息并在蓝牙信息面板下检查蓝牙固件版本号来验证固件是否已更新,如果版本号为 4096,则意味着设备没有更新固件,因此可能无法正常工作。可以通过在终端中运行以下命令来验证系统日志中的任何错误:
如果固件上传失败并显示错误,请尝试安装 BrcmPatchRAM 的 debug 版本,以便在日志中获取更多详细信息。
更新日志 · 历史版本
- 20220707
- 添加了macOS Ventura 13系统版本的支持
- 20220706
- 为 12.4 Beta 3 和更高版本添加了跳过地址检查补丁
- BrcmPatchRAM.kext v2.6.1
- BrcmPatchRAM.kext v2.6.0
- BrcmPatchRAM.kext v2.5.9
- BrcmPatchRAM.kext v2.5.8
- BrcmPatchRAM.kext v2.5.7
- BrcmPatchRAM.kext v2.5.6
- BrcmPatchRAM.kext v2.5.5
- BrcmPatchRAM.kext v2.5.4
- BrcmPatchRAM.kext v2.5.3
- BrcmPatchRAM.kext v2.5.2
- BrcmPatchRAM.kext v2.5.1
- BrcmPatchRAM.kext v2.5.0
下载地址
资源下载
评论(0)