USBToolBox kext 黑苹果USB驱动
USBToolBox kext 是一个旨在使 USB 映射的常见操作更容易的 kext。它支持 El Capitan 及更高版本,尽管只有 Catalina 及更高版本已经过测试。
特征
- 附加到控制器实例或父设备,允许更多方式匹配
- 忽略 ACPI 中的端口定义以强制 macOS 手动枚举所有端口
- 绕过一些 Ryzen 主板和 400 系列 Intel 主板上的 ACPI
- 替代 SSDT-RHUB
- 覆盖基于 SMBIOS 和控制器名称附加的任何内置 Apple USB 映射
- 无需在 ACPI 补丁中重命名控制器
- 不需要在 USB 映射中指定型号标识符(如果知识兔连接到 PCI 设备)
- 与现有的 USB 映射非常兼容(端口格式相同)
- 与 USBInjectAll 不同,不会对任何端口映射进行硬编码
这不会修补端口限制。
配置
USBToolBox 支持使用引导参数、属性或在地图中进行配置。您可以在 PCI 设备或AppleUSBHostController
实例上设置属性。
除非另有说明,否则属性可以是任何类型,并且知识兔只检查是否存在,而不检查类型。
-utboff
(属性utb-off
):完全禁用 USBToolBox-utbacpioff
(属性utb-acpi-off
):禁用从 ACPI 平面删除 RHUB(borked ACPI 删除)-utbappleoff
(属性utb-apple-off
):禁用现有ports
和port-count
删除-utbmapoff
(属性utb-map-off
):禁用自定义地图(用于测试)utbwait=XXX
(属性utb-wait
,类型号):自定义延迟waitForMatchingService
,知识兔以秒为单位。1 到 180 之间的整数(含)。
转换现有地图
转换现有地图相当容易。
- 对于每个 IOKit 个性,更改以下内容:
CFBundleIdentifier
到com.dhinakg.USBToolBox.kext
IOClass
到USBToolBox
IOMatchCategory
到USBToolBox
- 添加一个名为
OSBundleLibraries
根项目的字典。它应该包含com.dhinakg.USBToolBox.kext
, 和 value1.0.0
。
用法
您可以从 GitHub发布选项卡获取最新版本。
zip 包含 2 个 kext: mainUSBToolBox.kext
和UTBDefault.kext
,一个用于将 USBToolBox 连接到所有 PCIe USB 控制器的无代码 kext。这是为在映射之前使用而设计的,因此您可以在映射之前使所有 USB 端口正常工作(假设没有端口限制)。但是,如果知识兔您选择从头开始映射(即从 Windows,知识兔使用 USBToolBox工具),则不需要并且知识兔必须将其删除。
一个基本的全新安装流程如下:
USBToolBox.kext
将和添加UTBDefault.kext
到您的EFI/OC/Kexts
文件夹,并确保更新您的config.plist
.- 安装 macOS。
- 使用 USBToolBox工具映射您的端口。
- 删除
UTBDefault.kext
并添加您新创建的UTBMap.kext
(或任何您的 USB 映射)到EFI/OC/Kexts
. - 重新启动,您应该有一个 USB 映射系统!