【Hackintosh】macOS Tahoe AirDrop 修復教學:Broadcom 網卡完整解法
家裡幾台黑蘋果主機這次 OTA 升級到 macOS Tahoe 之後,AirDrop 通通壞給你看,登入 iCloud 就完全抓不到裝置,這個坑 Kent 花了不少時間在三台不同的主機上反覆測試才抓出比較穩定的解法。這篇文章把整個測試過程、踩過的雷,還有最後驗證有效的完整流程都記錄下來,如果你也是 Broadcom 網卡的黑蘋果主機升級 Tahoe 之後 AirDrop 壞掉,可以直接照著這篇的流程走一遍。
測試環境
這次總共在三台配置不同的主機上測試,全部都成功修復:
ASUS B760M(成功)
- Intel i7-14700
- AMD RX5500XT
- Broadcom BCM94360CS2
- SMBIOS:MacPro7,1
ASUS Z790(成功)
- Broadcom BCM94360CS2
- SMBIOS:MacPro7,1
HP EliteDesk 800 G6 DM(成功)
- Intel UHD630
- Broadcom BCM94360Z4
- SMBIOS:iMac20,1
三台機器的網卡都是 Broadcom BCM94360 系列,SMBIOS 選的機型不同,但最後套用的修復流程是一致的。
EFI 製作
開始之前先把 Windows 11 裝好,接著用 OpCore-Simplify 自動產生 OpenCore EFI,這套工具會依照你的硬體自動判斷需要哪些 Kext 和 SSDT,比手動兜 EFI 省事很多,強烈建議直接拿來用。
EFI 產生之後,如果要手動微調 config.plist,Kent 是用 OCAT(OC Auxiliary Tools) 這套 GUI 工具,等於是把過去要分開用的 ProperTree(編輯 plist)、GenSMBIOS(產生序號)這些功能整合在同一個介面,主要會用到的功能有:
- 編輯 config.plist — 樹狀結構直接點選修改,不用像純文字編輯器那樣自己找縮排、抓 Key 的位置,改 Boot Args、Kernel Block 這類設定特別方便。
- 產生 SMBIOS 序號 — 選好機型(例如這次用的 MacPro7,1、iMac20,1)就能一鍵產生序號、UUID、ROM,直接貼回 plist,不用再另外開 GenSMBIOS。
- 管理 Kexts / SSDT — 可以看到目前 EFI 裡裝了哪些 Kext、版本是不是最新,AirportBrcmFixup、USBMap.kext 這些之後要更新版本時用這個工具檢查最方便。
- 比對 OpenCore 版本 — 開啟後會提示目前的 OpenCore 版本是否落後,適合拿來確認要不要跟著升級。
整體來說 OCAT 比較適合拿來做「EFI 做好之後的微調與長期維護」,跟負責從零產生 EFI 的 OpCore-Simplify 是互補的關係,不是拿來取代它。
USB Port 對應:USBToolBox
黑蘋果另一個常被忽略、但影響很大的設定是 USB Port 對應。沒對應好的話,USB 3.0 裝置可能會被系統誤判成 USB 2.0(速度變慢),或是某些 Port 完全沒反應,尤其接行動硬碟、讀卡機這種吃頻寬的裝置感受特別明顯。
Kent 是用 USBToolBox 這套工具在 Windows 裡對應 USB Port,流程大致如下:
STEP 1
到 USBToolBox Releases 下載最新版的 Windows.exe(如果防毒軟體誤判,可以改用 Windows.zip)並執行。
STEP 2
逐一插入手邊會用到的 USB 裝置(隨身碟、鍵盤滑鼠接收器、行動硬碟等)到主機板每一個實體 Port,讓工具記錄每個 Port 的位置與傳輸類型(USB2 / USB3)。
STEP 3
注意 15 個 Port 的上限:macOS 對單一 USB Controller 能對應的 Port 數量預設只有 15 個,主機板實體 Port 數常常超過這個數字(尤其是主機板前後 Type-A、Type-C 全部加起來),超過的部分系統會直接忽略。所以要先想清楚哪些 Port 是實際會用到的(例如鍵盤滑鼠、常用的隨身碟孔),優先勾選這些,內建藍牙/Wi-Fi 模組佔用的內部 Port 也要算進這 15 個名額裡。
STEP 4
確認好要保留的 Port 之後,匯出 UTBMap.kext。要注意的是,這個匯出的檔案本身只是「對應表」,還需要另外下載 USBToolBox.kext 這個驅動本體,兩個 Kext 一起放進 EFI 的 EFI/OC/Kexts 資料夾,並在 config.plist 的 Kernel -> Add 裡都加入,缺一個都不會生效。
STEP 5
直接匯出的 UTBMap.kext 裡的 Info.plist 格式在新版 macOS 上可能會有相容性問題,Kent 是用 USBMap 這個專案裡的 USBMapInjectorEdit.command 腳本,把 Info.plist 轉成 Tahoe 也能正常吃的格式,轉完之後再覆蓋回 UTBMap.kext 裡即可。
設定完成開機之後,可以用系統資訊裡的 USB 頁籤確認每個 Port 的實際傳輸速度,確保跟原本 Windows 上量到的速度一致,才算是對應成功。
RTL8125 網卡相容性修正
如果主機板內建的是 RTL8125(ASUS 主機板很常見),這裡有一個坑:不修的話 Tahoe 安裝程式連安裝畫面都進不去。
解法是打開 config.plist,進到 Kernel -> Block,新增以下設定:
| Key | Value |
|---|---|
| Identifier | com.apple.driver.AppleEthernetRL |
| Strategy | Exclude |
| MinKernel | 25.0.0 |
排除掉 AppleEthernetRL 之後 Tahoe Installer 才能正常開機進入安裝流程。
Sequoia 設定:AirportBrcmFixup 與 Boot Args
在升級 Tahoe 之前,先確保 macOS Sequoia 上的 Wi-Fi 跟 AirDrop 是正常的,這一步很重要,後面會解釋為什麼。
先安裝最新版 AirportBrcmFixup(要選支援 Tahoe 的版本),然後在 Boot Args 加上:
brcmfx-country=#a這個參數 Kent 實測過兩種設定:
brcmfx-country=TW
- AirDrop 正常
- 但 Wi-Fi 容易連到訊號較遠的 AP,家裡多台 AP 漫遊體驗不好
brcmfx-country=#a
- AirDrop 正常
- Wi-Fi Roaming 也正常,會自動切換到訊號較好的 AP
兩相比較之下,建議直接用 brcmfx-country=#a,AirDrop 一樣正常,Wi-Fi 漫遊反而更順。
Sequoia 驗證流程
設定完 Boot Args 之後,先確認以下項目都正常再往下一步:
- Wi-Fi 正常
- Bluetooth 正常
- iCloud 正常
- AirDrop 正常
接著執行一次 OCLP Mod Root Patch,再次確認 AirDrop 依然正常,確認沒問題之後把 Root Patch Revert 掉,恢復乾淨狀態再進行 OTA。
OTA 升級 Tahoe
這一步沒有什麼特別的地方,直接在系統設定裡走 OTA 升級到 Tahoe 就可以,不需要重新製作安裝 USB。
Time Machine 還原注意事項
這裡是 Kent 踩最久的一個坑:如果先把 Tahoe 裝完,開機進系統之後才用「遷移輔助程式」還原 Time Machine 備份,實測經常只會還原到部分資料,有些 App 設定、桌面檔案會不見。
正確做法是:第一次開機的設定精靈裡,馬上選擇「從 Time Machine 備份還原」,不要先跳過進系統再用遷移輔助程式,這樣資料才會完整還原。
FileVault 注意事項
FileVault 的狀態也會影響後面 OCLP 的操作順序:
若 Sequoia 安裝時沒有啟用 FileVault,OTA 完成後系統通常也不會自動開始加密,這種情況可以直接安裝 KDK 並執行 OCLP Mod Root Patch。
若 OTA 之後系統自動啟用了 FileVault,就必須照順序來:
- 等待加密完成
- 關閉 FileVault
- 等待解密完成
- 再執行 OCLP Mod Root Patch
千萬不要在加密進行到一半時就動 Root Patch,容易搞出更多問題。
OCLP Mod Root Patch
OTA 完成、FileVault 狀態也處理好之後,接著執行:
STEP 1
到 KdkSupportPkg 安裝對應 Tahoe 版本的 KDK(Kernel Debug Kit)。
STEP 2
用 OCLP-Mod 執行 Mod Root Patch。
STEP 3
重新開機。
AirDrop 實測結果比較
這裡是整篇最關鍵的部分,Kent 測試了兩種不同的升級路徑,結果差很多。
路徑一:Tahoe 全新安裝
流程:Tahoe 全新安裝 → 還原 Time Machine → 登入 iCloud
結果:
- 登入 iCloud:AirDrop 失敗
- 登出 iCloud:AirDrop 恢復
也就是說只要一登入 iCloud,AirDrop 就直接壞掉,完全無法使用。
路徑二:Sequoia 先確認正常,再 OTA 升級 Tahoe
流程:
- macOS Sequoia 安裝完成
- 安裝 AirportBrcmFixup
- 確認 AirDrop 正常
- 執行 OCLP Mod Patch
- Revert Root Patch
- OTA 升級 Tahoe
- 安裝 KDK
- 執行 OCLP Mod Patch
- 登入 iCloud
結果:AirDrop 正常,登入 iCloud 之後也完全沒問題。
兩條路徑唯一的差別就是有沒有先在 Sequoia 上跑過一次「AirDrop 正常 → Root Patch → Revert」的循環,結果卻是天差地遠,這也是這次測試最大的發現。
FileVault 加密/解密驗證
中途 Kent 也懷疑過是不是 FileVault 加密再解密的過程「順便」修復了什麼系統狀態,所以另外拿 Z790 做了一組對照測試:
Tahoe → FileVault Encrypt → FileVault Decrypt → 測試 AirDrop
結果:沒有修復,AirDrop 依然是壞的。
所以目前沒有證據顯示單純跑一次 FileVault 加密解密可以修好 AirDrop,關鍵還是在於「先在 Sequoia 建立正常狀態,再 OTA」這個順序上。
最終成功流程
整理一下三台機器都驗證過、目前最穩定的完整流程:
- 安裝 Windows 11
- 用 OpCore-Simplify 產生 EFI
- 安裝 macOS Sequoia
- 安裝 AirportBrcmFixup
- Boot Args 設定
brcmfx-country=#a - 確認 AirDrop 正常
- 執行 OCLP Mod Root Patch
- 再次確認 AirDrop 正常
- Revert Root Patch
- OTA 升級 Tahoe
- 安裝 KDK
- 執行 OCLP Mod Root Patch
- 登入 iCloud
- 確認 AirDrop 正常
照這個順序走完,三台機器(B760M、Z790、HP EliteDesk 800 G6 DM)AirDrop 全部正常。
結論
- OpCore-Simplify 可以正常建立 Tahoe 可用的 EFI。
- 主機板是 RTL8125 網卡的話,記得在
Kernel -> Block排除AppleEthernetRL,不然連安裝畫面都進不去。 - Boot Args 建議用
brcmfx-country=#a,AirDrop 跟 Wi-Fi 漫遊都會正常。 - Time Machine 一定要在第一次開機的設定精靈裡直接還原,不要先進系統再用遷移輔助程式,不然資料容易還原不完整。
- 單純跑 FileVault 加密/解密沒辦法修復 AirDrop。
- 先在 Sequoia 確認 AirDrop 正常,再 OTA 升級 Tahoe,是目前測試下來最穩定的流程。
目前最重要的觀察
依照 B760M、Z790、HP EliteDesk 三台機器的測試結果:
對使用 Broadcom BCM94360 系列網卡的黑蘋果主機來說,先在 macOS Sequoia 建立正常的 AirDrop/iCloud 狀態,再透過 OTA 升級到 macOS Tahoe,AirDrop 的相容性明顯比直接全新安裝 Tahoe 好上不少。
目前還沒辦法確認到底是哪一項系統狀態被保留下來才讓 AirDrop 正常運作,所以這個結論目前只能算是實測下來的最佳實務流程,並不是 Apple 官方公開的行為,如果之後版本更新有新的發現 Kent 會再回來更新這篇文章。
延伸閱讀
👉 Intel NUC 10 MacOS 安裝教學
👉 21:9 寬螢幕如何在 MacOS 上開啟 HiDPI?
👉 新手必看!! 10個 MacOS 常用軟體推薦
👉 最速傳檔神器 – LANDrop 支援5種系統的跨平台檔案傳輸工具
👉 【部落格架設】告別 WordPress,用 Astro 重建部落格的完整紀錄