前言
隨著 macOS 系統不斷更新,許多黑果的技術也必須隨著系統也必須不斷的提升。USB3.0端口自定義也必須的,這也是學習黑蘋果最重要的一門課。
當 macOS 進化到 Big Sur+ 時,過去所有的 USB 補丁已完全失效,既使你勾選 OC Kernel -> Quirks -> XhciPortLimit 、包括過去使用的 Hackintool 工具一樣,系統所能辨識出 HSxx USB2.0 而不會出現 SSxx USB3.0,導致無法製作USB 3.0端口自定義的修護文件。所幸某位大神發明了從 Windows 系統中,製作了能夠設定USB端口的工具,以下請繼續看教學。
本教學最主要的目的是教導你如何在Windows 環境下,使用 USBToolBox 工具來自定義 USB 接口。USBToolBox 編輯工具就像 Hackintool 和 USBMap 一樣,用來定義主機板 USB 端口的速率。
測試
我已經通過 dhinakg 測試了這個工具,它在 macOS 和 Windows 上都運行良好。兩個系統的 UTBmap.kext 輸出相同。
到目前為止, UTBMap.kext 與 USBToolBox.kext 必須要一起加載才行。我沒有看到與從Usbmap 命令生成的 USBMap.kext 的差異。USB 端口和睡眠也同樣有效。
USBToolBox 的一個顯著優勢是端口映射與 SMBIOS 模型分離,因此在更改 SMBIOS 時無需修改或替換 USBMap.kexts 或 USBPorts.kext。
自我檢測
如果你有以下的情形,請你改用本次的教學,來制定你的USB3.0端口定義。
Mac:
- 已安裝 Big Sur 11.3+ 以上。
- 檢查EFI文件是否有加載任何已修護的USB 文件,若有請刪除並卸載。
- 使用 Hackintool 工具,檢查 USB 項,查看使否所有的USB 26個端口都有抓到?如果只出現 HSxx 14個端口?或是其他情況時。
- 檢查OC or Clover 是否已加載 USB 補丁?OC 的config.plist 配置文件,是否已勾選?EFI -> OC -> Kernel -> Quirks -> XhciPortLimit
- 若是 USB 補丁 和 XhciPortLimit 已勾選,USB 26 個仍未出現時?
- 系統加載USB 補丁後,卡代碼、當機等情形。
Windows:
- 從未安裝 macOS。
- 已安裝 macOS,但尚未製作USB 端口修護文件。
準備步驟
首先你得下載我提供的文件(文末有)下載好並解壓,如下圖。或是從 GIT 下載最新的工具。USBToolBox-1.1.1-RELEASE.zip 、Windows.exe
解壓裡面的兩個文件,並且打開 Windows 壓縮文件所解壓出來的文件,打開解壓出來的 dist 文件夾中,把Windows 執行檔打開,如下圖:
該文件直接開啟終端機,出現下圖這樣的界面:
輸入D 命令,此時該工具會讀取出你電腦所有USB端口的數量,如下圖:
其中綠色的就代表的是已佔用端口,請準備好USB2.0/3.0的設備(USB隨身碟),只要依序插入USB2.0,USB3.0所有插弄,包括 Type-C 設備,並保持五秒,已確保系統被識別(也可以敲擊回車鍵來加快刷新)。如下圖,所有的USB 端口已經全部識別完成。
輸入B 執行,會回到這個界面
在輸入 S 執行(如果你所識別的USB 端口超過15個,請在輸入 S 完成之後截圖)
輸入K 指令,則會導出端口,並生成驅動,如下圖
此時你可以關閉這個窗口了,驅動是默認生成到我們解壓出來的dist裡面,如下圖
查看端口數目並刪除多餘端口,同時我們也要自定義原本USB端口的速率,如下圖
未完!待續
Kext 加載
OpenCore
使用OpenCore Configurator或者ProperTree在config中加載USBToolBox.kext和UTBMap.kext,如下圖
Clover
直接拖到EFI->CLover->Kext->other下面加載即可