1. 程式人生 > >【黑蘋果教程】Airport-miniPCIe 無線網絡卡驅動

【黑蘋果教程】Airport-miniPCIe 無線網絡卡驅動

更新說明

  • 2016/11/3 - 10.12.1 WiFi 注入失效

WiFi + BT 支援情況

  1. BCM94360HMB/AzureWave AW-CB160H, 參見 [Guide] Airport - PCIe Half Mini v2, credit: Skvo, Post #758
  2. BCM94360CD/BCM9331CD 原生 Airport (WiFi) 和 BT4LE (PCIe 1x, 非 HM)
    1. 4331 - 10.10 白名單
  3. BCM94352 HMB/AzureWave AW-CE123H 支援 Airport 和 BT4LE
  4. BCM943224 HMB 支援 Airport 和 BT3
  5. 對於沒有原生藍芽驅動支援的Wi-Fi網絡卡,建議參看以下文章
    1. Dual Mode USB 4.0 Bluetooth Dongle (BCM20702 Chipset) | GMYLE
      1. 10.10 Handoff installation, see BT Handoff below
      2. Continuity and Handoff Capable Apple Mini Cards + PCIe and mini-PCIe Adapters, Credit: minihack, #69

前提條件

  1. 10.8.5 或者更新的系統(本教程不對10.8.4或更早的系統提供支援)
  2. 支援Vendor/Device_ID

使用者需要提供

  1. 受支援的網絡卡(一般來說)
  2. 天線(必須)
  3. Mini PCIe to PCI/PCIe 轉接卡(不建議)
    1. 轉接卡必須包含主機板的USB匯流排介面,否則藍芽不能工作

Airport PCIe Mini 半高源

toleda/wireless_half-mini
對於wireless_half-mini的DSDT修改,用以下URL設定MaciASL/Preferences/Sources

https://raw.github.com/toleda/wireless_half-mini/master

Airport/WiFi/藍芽 驅動安裝

  • 第1步:驅動WiFi
    • OS X 版本
    • WiFi
    • 白名單(4331/4353)
  • 第2步:驅動藍芽(WiFi是否驅動不重要)
    • OS X 版本
    • 藍芽
  • 第3a步:驅動Handoff(WiFi或藍芽已經驅動;94352參見步驟 3b)
    • OS X 版本
    • Handoff
  • 第3b步:驅動94352 5GHz/Handoff(前提是WiFi和藍芽已經驅動)
    • OS X 版本
    • 94352 5GHz/Handoff

第一步:驅動 WiFi

Airport/WiFi注入方法(10.12/10.11/10.10 全版本支援,選擇其中一個方法,注意:94352的5 GHz需要打補丁)

  1. 編輯kext的Info.plist,參見[Guide] airport_pcie-hm_plist_edits.pdf (在源中)
    1. 94352,參見config-bcm94352-120.plist (在源中)
      1. 10.11-BCM94352-0x43b114e4-Info.plist-bpresles
      2. 將補丁中的檔案貼上到config.plist/KernelAndKextPatches/KextsToPatch
  2. 如果你是AMI的UEFI,需要編輯DSDT,參見[Guide] airport_pcie-hm_dsdt_edits.pdf (在源中)
  3. 如果你是AMI的UEFI,需要新增SSDT使能器,參見ssdt_enabler資料夾(在源中)
    1. 94352參見 ssdt_enabler 資料夾(在源中)
      1. 通過Wi-Fi裝置名稱驗證IOreg/RP0X
  4. 編輯Clover/config.plist(10.12以上版本不再有效)
    1. ACPI/DSDT/Fixes(受支援的device-id)
      1. AddDTGP_0001/YES
      2. FixAirport_4000/YES
    2. Devices/FakeID/0x0(受支援的device-id)

ROW/WiFi 國家程式碼(10.12/10.11/10.10全版本)

  1. 要求具有的國家程式碼
    1. Native: US/FCC (Hex: 55 53),可以在系統資訊/WiFi下檢視
    2. 如果不是 US/FCC, 參見下方的 Sebinouse, #2 below
    3. 特殊情況:#a,參見[Guide] Airport - PCIe Half Mini v2, jaymonkey, Post # 2084
      1. 解決了喚醒之後WiFi效能問題
  2. [Guide] Airport - PCIe Half Mini v2, credit: Sebinouse, Post #1159
  3. 安裝(選擇其中一種方式)
    1. config-bcm94352…plist (在源中)
      1. 編輯5GHz-US/Replace/55 53 (US) 為 xx xx (CC)
      2. ASCII/HexBase64轉換, 參見 ASCII to Hex
    2. wireless_bcm94352…command
      1. CC prompt
      2. 注意:不支援 #a 這種情況

Airport/WiFi/白名單(10.12/10.11/10.10全版本)

  1. 白名單(WiFI)- Airport - PCIe Half Mini, credit: Skvo #115
    1. 只能應用在下方標註的BCM device-id之中
    2. AirPortBrcm4360.kext/Whitelist/Supported Device IDs
      1. 0x4331 (BCM94331xx)
      2. 0x4353 (BCM943224xx)
    3. AirPortBrcm4360.kext/Whitelist/Supported Board IDs
      1. 參見上面的連結
    4. 關閉白名單檢查 - Credit: RehabMan, Post #1728/Page 173
  2. 補丁(以ASCII或者Hex的方式來編輯,不要同時使用)
    1. 0x4331
      1. 二進位制補丁:AirPortBrcm4360
        1. 尋找 (iMac14,3): Mac-C6EFA63962FC6EA0 或者
        2. 4d 61 63 2d 43 36 45 46 41 36 33 39 36 32 46 43 36 45 41 30
        3. 替換為 (ex., iMac14,2): Mac-27ADBB7B4CEE8E61 或者
        4. 4d 61 63 2d 32 37 41 44 42 42 37 42 34 43 45 45 38 45 36 31
    2. 0x4353
      1. 二進位制補丁:AirPortBrcm4360
        1. 尋找 (MacBookAir5,2): Mac-2E6FAB96566FE58C 或者
        2. 4d 61 63 2d 32 45 36 46 41 42 39 36 35 36 36 46 45 35 38 43
        3. 替換為 (ex., iMac14,2): Mac-27ADBB7B4CEE8E61 或者
        4. 4d 61 63 2d 32 37 41 44 42 42 37 42 34 43 45 45 38 45 36 31
  3. 安裝(選擇其中一種方法)
    1. 適用於BCM94352的FakePCIID
      1. 參見Airport/WiFi 注入方法/1. kext 使能器
    2. Kext二進位制補丁
      1. [Guide] Airport - PCIe Half Mini v2 - Page 71, Skvo, Post #701
      2. HexEdit, Hex Fiend, 0xED, etc. (edits above)
    3. Clover的kext補丁
      1. 下載config-bcm94352-100.plist.zip
      2. 把1中的補丁貼上到config.plist/KernelAndKextPatches/KextsToPatch
      3. 將Replace編輯為恰當的Board-ID

第二步:驅動藍芽(WiFi是否驅動不重要)

Bluetooth 4LE (10.12/10.11 - 全版本)

  1. 藍芽注入 - RehabMan/OS-X-BrcmPatchRAM (需要2個kext)
  2. 安裝(使用1或者2,不要同時使用)
    1. Clover/Chameleon - 使用 kext 安裝器
      1. System/Library/Extensions/
      2. Library/Extensions
  3. 工作狀態
    1. Asus BCM94352 (0b05/17cf)
    2. Azurewave CE-123H (13d3/3404)

Bluetooth 4LE (10.10 - 全版本)

Bluetooth 4/3 (10.9 - 全版本)

第3a步:驅動Handoff(WiFi或藍芽已經驅動;94352參見步驟 3b)

Handoff (10.12/10.11 - 全版本)

  1. 需要AirPortBrcm4360 WiFi 和 BT4LE支援
  2. 補丁Credit: lisai9093 (選擇其中一種)
    1. 10.11 以及更新版本, Handoff (有效)/Hotspot (未測試)
      1. 二進位制補丁: IOBluetoothFamily
        1. Find: 48 85 FF 74 47 48 8B 07
        2. Replace: 41 BE 0F 00 00 00 EB 44

Handoff (10.10 - 全版本)

  1. 需要AirPortBrcm4360 WiFi 和 BT4LE支援
  2. 補丁Credit: Dokterdok (選擇其中一種)
    1. 10.10.2 以及更新版本, Handoff (有效)/Hotspot (未測試)
      1. 二進位制補丁: IOBluetoothFamily
        1. Find: 48 85 C0 74 5C 0F B7 48
        2. Replace: 41 BE 0F 00 00 00 EB 59
    2. 10.10 和 10.10.1, Handoff/Hotspot
      1. 二進位制補丁: IOBluetoothFamily
        1. Find: 8B 87 8C 01 00 00
        2. Replace: B8 0F 00 00 00 90

Handoff - 暫無解決方案 (10.9 - 全版本)

第3b步:驅動94352 5GHz/Handoff(前提是WiFi和藍芽已經驅動)

BCM94352 5 GHz/Handoff (10.12 - 全版本)

  1. 需要AirPortBrcm4360 WiFi 和 BT4LE支援
  2. 補丁Credit: Dokterdok (選擇其中一種)
    1. 10.10.2 以及更新版本
      1. 二進位制補丁: AirPortBrcm4360
        1. 如果是US/FCC: the-darkvoid #1, [FIX] macOS Sierra DP1 BCM94532Z WiFi
          1. Find: 81 F9 52 AA 00 00 75 29
          2. Replace: 81 F9 52 AA 00 00 66 90
        2. 如果不是 US/FCC, 參見上方 ROW/WiFi 國家程式碼
    2. “Airport Extreme” (可選) - Credit: Skvo
      1. 二進位制補丁: AirPortBrcm4360
        1. Find: 6B 10 00 00 75 0D
        2. Replace: 6B 10 00 00 90 90
    3. Handoff/Hotspot, 參見上方Handoff
  3. 安裝
    1. Clover/kext補丁
      1. 將補丁貼上到config.plist/KernelAndKextPatches/KextsToPatch
        1. BCM94352-fvco-darkvoid (錯誤地被標記為 5GHz)
        2. 如果不是 US/FCC, 參見上方 ROW/WiFi 國家程式碼
        3. BCM94352-Airport-Extreme (可選)
        4. BT4LE-Handoff-Hotspot

BCM94352 5 GHz/Handoff (10.11 - 全版本)

  1. 需要AirPortBrcm4360 WiFi 和 BT4LE支援
  2. 補丁
    1. 10.10 以及更新版本,5GHz
      1. 二進位制補丁: AirPortBrcm4360
        1. 如果是US/FCC: the-darkvoid #981
          1. Find: 41 83 FC FF 74 2C 48
          2. Replace: 66 C7 06 55 53 EB 2B
        2. 如果不是 US/FCC, 參見上方 ROW/WiFi 國家程式碼
    2. “Airport Extreme” (可選) - Credit: Skvo
      1. 二進位制補丁: AirPortBrcm4360
        1. Find: 6B 10 00 00 75 0D
        2. Replace: 6B 10 00 00 90 90
    3. Handoff/Hotspot, 參見上方Handoff
  3. 安裝(選擇其中一種方法)
    1. Kext/二進位制補丁
      1. 雙擊Downloads/wireless_bcm94352-11-v4.0.command
        1. 選擇補丁
          1. Patch: 2
            1. Handoff/BCM94352/US-FCC
          2. Patch: 3
            1. Handoff/BCM94352/Country Code
            2. 參見上方 ROW/WiFi 國家程式碼
    2. Clover/kext補丁
      1. 將補丁貼上到config.plist/KernelAndKextPatches/KextsToPatch
        1. 5GHz (選擇其中一種)
          1. BCM94352-5GHz-US-FCC-dv
          2. BCM94352-5GHz-FR
            1. 參見上方 ROW/WiFi 國家程式碼
        2. BCM94352-Airport-Extreme (可選)
        3. BT4LE-Handoff-Hotspot

BCM94352 5 GHz/Handoff (10.10 - 全版本)

  1. 需要AirPortBrcm4360 WiFi 和 BT4LE支援
  2. 補丁
    1. 10.10 以及更新版本,5GHz
      1. 二進位制補丁: AirPortBrcm4360
        1. 如果是US/FCC: the-darkvoid #981
          1. Find: 41 83 FC FF 74 2C 48
          2. Replace: 66 C7 06 55 53 EB 2B
        2. 如果不是 US/FCC, 參見上方 ROW/WiFi 國家程式碼
    2. “Airport Extreme” (可選) - Credit: Skvo
      1. 二進位制補丁: AirPortBrcm4360
        1. Find: 6B 10 00 00 75 0D
        2. Replace: 6B 10 00 00 90 90
    3. Handoff/Hotspot, 參見上方Handoff
  3. 安裝(選擇其中一種方法)
    1. Kext/二進位制補丁
      1. 雙擊Downloads/wireless_bcm94352-100.command
        1. 選擇補丁
          1. Patch: 2
            1. Handoff/BCM94352/US-FCC
          2. Patch: 3
            1. Handoff/BCM94352/Country Code
            2. 參見上方 ROW/WiFi 國家程式碼
    2. Clover/kext補丁
      1. 將補丁貼上到config.plist/KernelAndKextPatches/KextsToPatch
        1. 5GHz (選擇其中一種)
          1. BCM94352-5GHz-US-FCC-dv
          2. BCM94352-5GHz-FR
            1. 參見上方 ROW/WiFi 國家程式碼
        2. BCM94352-Airport-Extreme (可選)
        3. BT4LE-Handoff-Hotspot

BCM94352 5 GHz/Handoff (10.9 - 全版本)

  1. 補丁
    1. 5GHz/10.9.5 - Credit:Skvo
      1. 二進位制補丁: AirPortBrcm4360
        1. Find: 58 54 00 20 17 27 20 00 00
        2. Replace: 58 54 00 1B 67 31 95 00 09
    2. 5 GHz - Credit: Skvo
      1. 二進位制補丁: AirPortBrcm4360
        1. Find: 01 58 54
        2. Replace: 01 58 58
  2. 安裝(選擇其中一種方法)
    1. Kext/二進位制補丁
      1. 雙擊Downloads/wireless_bcm94352-90_patch.command
        1. 不要移動檔案
        2. 輸入密碼
    2. Clover/kext補丁
      1. 將補丁貼上到config.plist/KernelAndKextPatches/KextsToPatch

I. Broadcom

這裡寫圖片描述

原生網絡卡細節

  1. BCM94360CD, 2.4/5 GHz, ac+abgn, 3 Stream, 1300 Mbs + BT4LE(PCIe x1, not half mini)
  2. BCM94331CD - 2.4/5 GHz, abgn, 3 stream, 450 Mbs + BT4LE (PCIe x1, not half mini)
  3. BCM943224 HMB, 2.4/5 GHz abgn, 2 Stream, 300 Mbs + BT3

Broadcom Device_IDs (Vendor_ID: 14e4)

  1. 受支援的Device_ID
    1. 43a0 - BCM94360CD, 2.4/5 GHz, ac+abgn, 3 Stream, 1300 Mbs + BT4LE
    2. 4331 - BCM94331CD - 2.4/5 GHz, abgn, 3 stream, 450 Mbs + BT4LE
      1. 10.10+/白名單
    3. 4353 - BCM943224 HMB, 2.4/5 GHz abgn, 2 Stream, 300 Mbs + BT3
      1. 10.10+/白名單
    4. 4353 - BCM943224 HMS, 2.4/5 GHz abgn, 2 Stream, 300 Mbs
      1. 10.10+/白名單
  2. 受支援的Device_ID(需要注入)
    1. 43b1 - BCM94352 HMB/AzureWave AW-CE123H, 2.4/5 GHz, ac+abgn, 2 stream, 867 Mbs + BT4LE
    2. 4357 - BCM943225 HMB/AzureWave AW-NB290H, 2.4 GHz, bgn, 2 stream, 108 Mbs + BT3
  3. 不受支援的Device_ID
    1. 3a. 4359 - BCM943228 HMB/AzureWave AW-NB111H, 2.4/5 GHz, abgn, 2 stream, 300 Mbs + BT4

II. Atheros

這裡寫圖片描述

原生網絡卡細節

  1. AR9280 - 2.4/5 GHz 802.11n, 2 Stream, 300 Mbs
  2. AR9380 - 2.4/5 GHz, abgn, 3 Stream, 450 Mbs
    below)

Atheros Device_IDs (Vendor_ID: 168c)

  1. Native Device_IDs (AirPort.Atheros40.kext)
    1. 0030 - AR9380 2.4/5 GHz abgn, 3 Stream, 450 Mbs
    2. 002a - AR9280 2.4/5 GHz abgn, 2 Stream, 300 Mbs
  2. Supported Device_IDs (injection required)
    1. 002e - AR9287 2.4 GHz, abgn, 2 stream, 108 Mbs
    2. 002b - AR9285 2.4 GHz, abgn, 1 stream, 54 Mbs
    3. Combo - AR928x + Bluetooth (limited OS X support for Atheros bluetooth, Note 2

注意 - Atheros WiFi + BT

System Preferences/Network/Airport
這裡寫圖片描述

附註

  1. 確定無線網絡卡的Device_ID
    1. 在DPCIManager/PCI中尋找 Vendor-ID 14E4 (Broadcom) 或者 168E (Atheros)
    2. 記下Device-ID並且跟上方提供的受支援的Device-ID比對
    3. Vendor/Device ID is 14E4/4353; BCM943224 (下方例子)
    4. 這裡寫圖片描述
  2. 確定無線網絡卡/藍芽的 ProductID/VendorID
    1. System Information/Hardware/USB
    2. 選擇 “.. Bluetooth…”/BCM207020A (下方例子)
      1. ProductID/Convert hex to decimal/Ex. 0x217d = decimal 8573
      2. VendorID/Convert hex to decimal/Ex. 0x0a5c = decimal 2652 (Broadcom)
    3. 這裡寫圖片描述

Credits