How to: BCM94352Z for Hackintosh (including 5Ghz patch, Handoff and Hotspot) macOS Sierra

In Computing, Hackintosh by Ross Fisher11 Comments

BCM94352Z is the recommended card for 10.12+ Hackintoshes these days, it’s a 802.11ac/BT4 Handoff compatible card which comes in the M.2 form factor. You can find some US based sellers on Amazon: http://amzn.to/2k1MZY0

I created this post as there is not yet a straightforward guide without the gobbly-goop of developer discussion and unrelated information for other cards. This guide assumes that you use Clover and install kexts using Clover (EFI/Clover/kexts/10.12/). This is also the macOS Sierra version of the guide. I don’t believe in installing Kexts to /Library/Extensions of any sort as changes are lost after a OS reinstall. Having them all on my EFI partition simply allows me to backup my machine level configuration by copying the EFI folder (and is handy for testing as I can simply make edits to my Hackintosh boot USB’s EFI partition and boot off it to test changes first).

Before you begin:

Have a USB Bootable drive with a working Clover boot loader in case things go wrong. I take no responsibility for this guide, all risk is on you!

First: Installing Kexts to get Wifi+BT working:

  1. Download the latest release from http://bitbucket.org/RehabMan/os-x-fake-pci-id/downloads
  2. Download the latest release from http://bitbucket.org/RehabMan/os-x-brcmpatchram/downloads
  3. Copy BrcmFirmwareData.kext, BrcmPatchRAM2.kext, FakePCIID_Broadcom_WiFi.kext and FakePCIID.kext to your EFI partition (EFI/Clover/kexts/10.12/) —  If you have not yet updated Clover boot loader (such as using UniBeast which has the old Clover install), copy to EFI/Clover/kexts/Other)
  4. Open Clover Configurator and in the Kernel and Kext patches, add:
    Name:    AirPortBrcm4360
    Find:    81F952AA00007529 
    Replace: 81F952AA00006690
    Comment: Brcm4360 Sierra fvco init
    
    Or though the config.plist (same thing, but I prefer Clover Configurator to ensure I don't corrupt my plist file).
    
    <dict>
    	<key>Comment</key>
    	<string>AirPortBrcm4360 - fcvo</string>
    	<key>Disabled</key>
    	<false/>
    	<key>Find</key>
    	<data>gflSqgAAdSk=</data>
    	<key>Name</key>
    	<string>AirPortBrcm4360</string>
    	<key>Replace</key>
    	<data>gflSqgAAZpA=</data>
    </dict>
  5. Reboot, 2.4Ghz, 5Ghz WiFi and Bluetooth should work

Second: Patching for HandOff and iPhone HotSpot usage (Assumes USA bands only for this guide)

  1. Download this plist file, extract and open it in something like Sublime Text or GitHub Atom: http://github.com/toleda/wireless_half-mini/blob/master/config-bcm94352-120.plist.zip
  2. Open Clover Configurator and mount your EFI Partition, open your config.plist
  3. Using the downloaded plist file as your guide, manually make changes in Clover Configurator to match READ FURTHER before modifying!
  4. Skip the section ACPI which says to check/enable AddDTGP_0001 and FixAirport_4000, this caused me kernel panics
  5. Check off/enable kext-dev-mode=1 in “Boot” section (May not be needed)
  6. Paste 0x43a014E4 into WIFI of the FakeID section of the Devices Page
  7. Now you’ll need to Copy+Paste in the actual patches which gets 5Ghz, Handoff and HotSpot working. Section: KextsToPatch.
  8. Press + then double click each input field (like using Excel), paste in Comment, Find, Name and Replace making sure to exclude < and > or ” “. Comment = “10.11-BCM94352-5GHz-US-FCC-dv”; becomes  10.11-BCM94352-5GHz-US-FCC-dv and Find = <4183fcff 742c48>; becomes 4183fcff 742c48 for example.
  9. SystemParameters -> InjectKexts = YES

Reboot and test, all should be working!

Comments

  1. Thanks for the easy-to-follow guide.
    Why do you use BrcmFirmwareData instead of BrcmFirmwareRepo? According to RehabMan, the latter is much more memory efficient. repo has to be installed in /S/L/E, but that doesn’t bother me. That way worked great on OS 10.10, but now on 10.12, it doesn’t load. I’m using the ‘data’ version in EFI for now, but I would like to figure out how to switch back to the ‘repo’ version.

    1. Edit: After an extra reboot, the ‘repo’ version works fine for me. I will use that one from now on. Also, I did not follow part 2 of your instructions, and iPhone bluetooth tethering is working fine. I never use Handoff, but it does say “Handoff Supported: Yes” in sys profiler.

  2. Hey Ross! Thanks for the post, but I’m curious.. in step 4, where do you put the code? I added the Name* Find* etc, but where do I add the actual code?

  3. You rock man. After struggling with this for half a day following these simple steps finally enabled wifi. I should mention that I’m using repo and not data. Thanks!

  4. Never mind, I see how it’s added to the Kexts section of Clover Config.

    For some reason Bluetooth isn’t even showing up in my system preferences, do you know why that might be? I also noticed wifi works with only the data and Broadcom kexts. Not sure if that has any significance.

  5. Thank you for the simple and clear instructions; I got wifi working via the first part of your guide. (Skipped the second part because I don’t need Bluetooth; I have an external, class 1 USB module with much better range)

    Quick note: Like Elliott Balsley above I also opted to use BrcmFirmwareData instead of BrcmFirmwareRepo. This works fine but required me to reboot much computer _twice_ before wifi appeared.

    1. Author

      True that! Either method seems to work well. I have a personal preference to keep kexts out of S/L/E so I can quickly reformat and dump my EFI folder back on the EFI partition and go, but if you aren’t reinstalling as often as I am, it seems to be a better solution 🙂

  6. BrcmFirmwareData didn’t work for me (the wifi card wasn’t recognised) -Neither in S/L/E nor on the EFI partition and even after multiple reboots. But strange enough after a single reboot with BrcmFirmwareRepo in S/L/E the wifi card was there. Just wanted to mention in case someone else has the problem or an idea why this was the case.

    1. I had the same Issue BrcmFirmwareRepo in S/L/E good , BrcmFirmwareData in EFI Clove kexts no good

  7. Just wondering if you manage to get handoff fulling working?
    Mine can only do one way. Hackintosh to iPhone, but not iPhone to Hackintosh. “Handoff cannot be completed” message would show up or just hangs there, depending on the program running hand-off. The small icon does pop beside dock tho.

Leave a Reply