Building a hackintosh on my laptop, sharing a config that works out of the box.
Warning
Prior to engaging in this repo and trying anything on your machine, you must already have the basics of hackintoshing. Reading Dortania's OpenCore Install Guide is essential to avoid any issues.
Only after you get the basics, you can use my EFI and tune it to fit your needs.
Caution
Testing the EFI on your machine without any verification of whats inside, and how to troubleshoot is very risky.
This can lead to issues ranging from Apple ID ban to breaking your machine!
Again, please read Dortania's Dortania's OpenCore Install Guide
Important
Collaboration is the key to success, if you find any bug or have a suggestion for improvement, please do not hesitate to post something in the Discussions or Issues sections.
Don't forget to specify your Exact hardware and software configuration in your message
-
👨🏻🔧Troubleshooting
-
🙏 Credits
| Specifications | Details | PCI path / Hardware ID |
|---|---|---|
| Laptop Model | Acer Nitro 5 AN515-55-51QY | - |
| Processor | Intel i5-10300H (Comet Lake) | ACPI\GenuineIntel_-_Intel64_Family_6_Model_165 |
| Graphics | Intel UHD 630 & Nvidia RTX 3060 | iGPU - Intel UHD 630 :PCI\VEN_8086&DEV_9BC4&SUBSYS_143D1025&REV_05dGPU - Nvidia RTX 3060 : PCI\VEN_10DE&DEV_2520&SUBSYS_143E1025&REV_A1 |
| RAM | 16GB - 2x (Micron 8ATF1G64HZ-3G2J1 8GB DDR4-3200 (1600 MHz) SDRAM) | - |
| Disk | - SSD PCIe NVMe 128GB (macOS) (old) : MZVLW128HEGR-000L2 - SSD PCIe NVMe 1TB (macOS) (new) : WD PC SN740 SDDPTQD-1T00 - SSD PCIe NVMe 512GB (Windows): MZVLQ512HBLU-00B00 |
- |
| Audio | Realtek HD Audio ALC295 | INTELAUDIO\FUNC_01&VEN_10EC&DEV_0295&SUBSYS_1025143D&REV_1000 |
| Ethernet | Realtek - Killer E2600 Gigabit Ethernet Controller | PCI\VEN_10EC&DEV_2600&SUBSYS_143D1025&REV_21 |
| Wifi | Realtek - Intel(R) Wi-Fi 6 AX201 160MHz | PCI\VEN_8086&DEV_06F0&SUBSYS_00748086&REV_00 |
| Bluetooth | - Realtek - Intel(R) Wi-Fi 6 AX201 160MHz - Broadcom BCM94352z |
PCI\VEN_8086&DEV_06F0&SUBSYS_00748086&REV_00 PCI\VEN_14E4&DEV_43B1&SUBSYS_072A14E4&REV_03 |
Here are the EFI Releases and supported (tested) macOS versions
-
From EFI V1.0 up to EFI V1.3
- OpenCore 0.9.8
- macOS Ventura
- macOS Sonoma 14.3.1
- macOS Sonoma 14.5 (latest version)
-
From EFI 1.4
- OpenCore 1.0.5
- macOS Sonoma 14.5
- macOS Sequoia 15.5 (24F74)
Important
I noticed that during macOS update installation using a USB stick, the trackpad's click function may not work. Please plug a mouse and continue the installation, the trackpad will work fine automatically after the end of the installation.
- iGPU
- Built-in monitor (refresh rates 60Hz & 144Hz, brightness control)
- Native hotkey support with Fn keys (keyboard & screen brightness, volume, sleep, Touchpad.)
- Smart Touchpad + Gestures
- Audio (built-in Speaker & mic, combo jack after sleep-wake )
- USB ports as 3.1 (3xUSB Type-A + 1 USB Type-C)
- Ethernet
- WiFi (2.4GHz and 5GHz)
- Bluetooth
- Webcam
- Sleep + Wake
- Battery percentage
- iServices (Messages, FaceTime, Handoff, Continuity, etc.) => Must edit
config.plist's PlatformInfo section.⚠️ Never reuse existing info, generate your own! Else AppleID will be banned⚠️ Discussed here
- Audio (Combo jack hissing at startup, AirPods work perfectly)
- Battery readouts (cycle count, temperature)
- RTX 3060 (macOS does not support Nvidia's Ampere (30XX) GPUs).
- HDMI port (since it's powered by the RTX 3060).
Getting Bluetooth and AirDrop as well as Continuity and Handoff services to work was too much of a struggle with the Intel WiFi card. These features were working randomly and the AirPods kept getting disconnected.
I found out that some 2-in-1 cards were natively supported by macOS and worked out of the box (OOTB) (or at least until Sonoma). For Sonoma and above, kexts would be able to bring back full functionality to those specific cards.
That is why I chose to transition from the Intel WiFi AX201 Card with a Fenvi Broadcom BCM94352z that can be found at an unbeatable price in many stores.
For many tutorials, this Broadcom card is considered as a "Modern WiFi card" "Non-Apple AirPort and Non-Fenvi Card" , the Bluetooth part as a separate dongle.
In a spirit of consistency and continuity, I chose to add Broadcom support using the latest version of my EFI (v1.2) as base before continuing to upgrade the non-related kexts and bootloader.
Thus everything detailed below uses the same OpenCore bootloader version (V.0.9.8), and kexts versions (except for the Lilu.kext) and the EFI release 1.3 (add release link) can be seen as an alternate version of the (EFI v1.2) able to support both Broadcom BCM94352z and intel AX201 WiFi/Bluetooth card.
To enable support of the Broadcom BCM94352z WiFi/Bluetooth card here is what has changed on a Kext level, and in the future all kexts will only be updated.
-
First, all Intel AX201 related kexts are disabled (but not deleted) :
IntelBluetoothFirmware.kextIntelBTPatcher.kextAirportItlwm.kext
-
Secondly, new Broadcom BCM94352z kexts are added :
-
AMFIPass.kext: Disable AMFI (Apple Mobile File Integrity) without requiring supplementary boot-args, thus allows OCLP root patching.- To handle this kext's functionality with EFI (v1.2.0),
Lilu.kexthad to be updated (1.6.7 -> 1.7.0)
- To handle this kext's functionality with EFI (v1.2.0),
-
WiFi Kexts:
IOSkywalkFamily.kextIO80211FamilyLegacy.kextAirPortBrcmFixup.kext
-
Bluetooth kexts:
BrcmBluetoothInjector.kext*macOS VerDepBrcmFirmwareData.kext*macOS VerDepBrcmPatchRAM.kext*macOS VerDepBrcmPatchRAM2.kext*macOS VerDepBrcmPatchRAM3.kext*macOS VerDep
-
-
BlueToolFixup.kexthas to be kept on to enable Bluetooth functionality in either case.
Important
*macOS VerDep: Kexts are Kernel version dependent to allow their dynamic activation, more info on utilizing minKernel and maxKernel settings.
Important
To bring back Intel AX201 support, disable Broadcom's kexts except BlueToolFixup.kext as it is used to enable WiFi functionality in either case.
As Apple removed support of unsoldered Broadcom WiFi/Bluetooth cards since Sonoma, in addition to kexts, the Broadcom BCM94352z requires OCLP patching to work again. OCLP patching is a process of customizing the OpenCore bootloader.
- Using it needs the OpenCore Legacy Patcher app (min version
2.4.0) - Requires to:
- Disable
SecureBootModel - Partially disable System Integrity Protection (
SIP) - Disable Apple Mobile File Integrity (
AMFI)
- Disable
Important
OCLP patching is needed after each macOS update to make WiFi work.
Important
SecureBootModel can be re-enabled after Root patching.
Important
AMFI can be disabled by adding the amfi=0x80 boot-arg to the NVRAM, or using AMFIPass.kext. I chose the latter as it is 'more visible and clean' than the boot-arg method.
More information on the matter here.
Despite adding a bluetoothExternalDongleFailed = 00 entry to the NVRAM (see guides), Bluetooth (and AirDrop) were disabled after a cold boot. To make it work I had to reset NVRAM twice after each cold boot.
After some investigation, I saw that after each cold boot bluetoothExternalDongleFailed kept getting reset to 01.
Resetting NVRAM twice each time being laborious, I discovered Lawrence Bates/LBates2000's trick to reset it to 00 on startup.
While Lawrence's solution didn't work for me (probably because I'm not on macOS Sequoia yet) it set me on the right track to solve the issue.
Please see the tutorial to fix it here
Found a bug? Check the Troubleshooting Guide before opening an issue.
For giving very detailed guide to add WiFi/BT support using the broadcom card.
Taught me to use minKernel and maxKernel settings on Kexts as well as OCLP.
- https://github.com/5T33Z0/OC-Little-Translated/tree/main/10_Kexts_Loading_Sequence_Examples#example-10-re-enabling-legacy-broadcom-and-intel-wifibt-cards-in-macos-14
- https://github.com/5T33Z0/OC-Little-Translated/tree/main/10_Kexts_Loading_Sequence_Examples#example-7-broadcom-wifi-and-bluetooth
For giving detailed guide to add WiFi/BT support using the broadcom card. Guide on OCLP procedure.
- https://elitemacx86.com/threads/how-to-fix-broadcom-wifi-on-macos-sonoma-and-later.1415/page-15
- https://elitemacx86.com/threads/wifi-compatibility-list-for-os-x-and-macos-broadcom-atheros-intel-and-realtek.609/
- https://elitemacx86.com/threads/how-to-enable-broadcom-wifi-and-bluetooth-on-macos-clover-opencore.606/
For giving an introductory framework to add WiFi support using the broadcom card.
For fixing the NVRAM setting bluetoothExternalDongleFailed that keeps getting reset to 01 (Failed/disabled) despite specifing its value as an NVRAM entry in the config.plist.
- https://www.insanelymac.com/forum/topic/360799-hackintosh-bluetooth-reset-fix/
- https://gist.github.com/LBates2000/32be3c79dd987e72b98bb669c43fccbf

