Hackintosh - Asus ROG Strix Z490-I Gaming (OpenCore)

OpenCore macOS MODEL BIOS

This repository is for Hackintosh builds with the Asus ROG Strix Z490-I Gaming motherboard using Intel's 10th Gen processors (Comet Lake).

Everything in terms of the hardware used in this build is working as expected.

Anyone who has the same motherboard can use the EFI of this repository.

Don’t forget to edit the EFI/OC/config.plist file and to generate your own SMBIOS info. See: Comet Lake Config Guide for detailed instructions on how to do that.

I highly recommended that you read the OpenCore Install Guide before you get started.

Hardware

Software

  • Bootloader: OpenCore 0.6.2-RELEASE
  • OS: macOS Catalina 10.15.7 (19H2)

What's working

  • Intel UHD630 (iGPU)
  • AMD RX 5700 XT (dGPU)
  • Audio Realtek ALCS1220A
  • Intel I225-V 2.5Gb Ethernet
  • Wi-Fi/BT (BCM94360NG)
  • USB
  • Restart/Shutdown
  • Sleep/Wake
  • Power Management (Native support)

Details

GPU

Intel UHD630

HDMI/DP display and audio outputs are all working.

Working with:

  • ig-platform-id = 07009B3E
  • device-id = 9B3E0000

DeviceProperties:

<key>PciRoot(0x0)/Pci(0x2,0x0)</key>
<dict>
    <key>AAPL,ig-platform-id</key>
    <data>BwCbPg==</data>
    <key>framebuffer-patch-enable</key>
    <data>AQAAAA==</data>
    <key>framebuffer-stolenmem</key>
    <data>AAAAQA==</data>
    <key>device-id</key>
    <data>mz4AAA==</data>
</dict>

AMD RX 5700 XT

Native support but you requires the agdpmod=pikera boot argument.

Audio

Working with:

  • AppleALC.kext
  • FakePCIID.kext
  • FakePCIID_Intel_HDMI_Audio.kext
  • device-id=709D0000
  • layout-id=7

DeviceProperties:

<key>PciRoot(0x0)/Pci(0x1f,0x3)</key>
<dict>
    <key>layout-id</key>
    <integer>7</integer>
    <key>device-id</key>
    <data>cJ0AAA==</data>
</dict>

Ethernet

Working with:

  • FakePCIID.kext
  • FakePCIID_Intel_I225-V.kext
  • device-id=F2150000

DeviceProperties:

<key>PciRoot(0x0)/Pci(0x1C,0x4)/Pci(0x0,0x0)</key>
<dict>
    <key>device-id</key>
    <data>8hUAAA==</data>
</dict>

FakePCIID_Intel_I225-V.kext is from SchmockLord's repository, details in issue 2.5Gbit Ethernet (Intel I225-V) Don't work #8.

Wi-Fi/BT

Working by using an m.2 M-Key adapter and Apple Airport Card (BCM94360NG).

Wi-Fi works by default. No additional kexts required when using the BCM94360NG card.

Working with this card is:

  • Airdrop
  • Handoff
  • Sidecar
  • Apple Watch unlock
  • Apple Magic Keyboard & Mouse

The bottom m.2 slot for the SSD on the motherboard is occupied with the BCM94360NG and the heat sink needs to be removed.

Bluetooth does not work by default. It uses the onboard 9-pin USB2.0 port (HS11) to power the Bluetooth module. USB Port mapping is required to fix this (see the "USB" section).

wifi-bt

The onboard wireless network card (Intel AX201NGW) uses the m.2 E-Key slot and CNVi protocol. Replacing the card with the BCM94360NG does not work due to the CNVi protocol, so don't even bother trying.

USB

All ports are working fine except for the ones disabled due to the 15 port limit.

usb-rear

usb-onboard

USB Ports:

No. Type Port
1 USB 2.0 HS12
2 USB 2.0 HS13
3 USB 3.2 Gen 1 HS09/SS09
4 USB 3.2 Gen 1 HS10/SS10
5 USB 3.2 Gen 2 HS05/SS05
6 USB 3.2 Gen 2 HS06/SS06
7 USB 3.2 Gen 2 HS03/SS03
8 USB 3.2 Gen 2 HS04/SS04
9 USB 2.0 Hub HS11
10 USB 3.2 Gen 2 HS01/SS01
11 USB 3.2 Gen 1 HS07/SS07 + HS08/SS08

All ports: HS01 ~ HS14, SS01 ~ SS10, USR1 ~ USR2

HS02: AURA LED Controller / HS14: Onboard bluetooth

SS04, HS01/SS01, HS07/SS07, HS08/SS08 not yet tested.

You will need to create your own USB mappings using Hackintool.

Example of my own USB Port mappings:

usb-ports

Important note regarding the USB port mapping for the internal usb header (HS11) needed to power the Bluetooh module on the BCM94360NG:

If for some reason (as was the case for me) you don't see HS11 shown in Hackintool you will need to add it manually. Without the correct HS11 USB port mapping Bluetooth will not work correctly.

  1. Create your USB mappings and export it using Hackintool.

  2. Open the exported USBPorts.kext by right clicking on it and select "Show Package Contents

  3. Open Contents/info.plist using any text editor.

  4. In your text editor search for the text "HS10" and add the following entry right below of the H10 key:

<key>HS11</key>
<dict>
	<key>UsbConnector</key>
	<integer>0</integer>
	<key>name</key>
	<string>HS11</string>
	<key>port</key>
	<data>CwAAAA==</data>
</dict>
  1. Save and close USBPorts.kext.

Sleep/Wake

Works with DP output and power button. GPRW Patch is used to disable the USB device instant wake.

Known issues:

  1. Bluetooth has a delay of about 7 seconds after the display is turned on.
  2. When using HDMI, the display cannot be woken up.
  3. Without enabling GPRW, a keyboard press or mouse click can wake up the display as well, but a second press or click is needed when the light is on, I tried to fix it by following Keyboard Wake Issues Guide, but didn't work. So my choice is to just use the power button, disable SSDT-GPRW if you want to use a keyboard or mouse to wake up.

F1 Boot Error

Add patch to Kernel -> Patch:

<dict>
    <key>Base</key>
    <string></string>
    <key>Comment</key>
    <string>F1 Startup patch</string>
    <key>Count</key>
    <integer>1</integer>
    <key>Enabled</key>
    <true/>
    <key>Find</key>
    <data>dTMPtw==</data>
    <key>Identifier</key>
    <string>com.apple.driver.AppleRTC</string>
    <key>Limit</key>
    <integer>0</integer>
    <key>Mask</key>
    <data></data>
    <key>MaxKernel</key>
    <string></string>
    <key>MinKernel</key>
    <string></string>
    <key>Replace</key>
    <data>6zMPtw==</data>
    <key>ReplaceMask</key>
    <data></data>
    <key>Skip</key>
    <integer>0</integer>
</dict>

BIOS Settings

Version: 0707

❌ Disable

  • Fast Boot
  • VT-d
  • CSM
  • Intel SGX
  • CFG Lock (no option in BIOS, Asus Z490 motherboards are factory unlocked. The AppleCpuPmCfgLock and AppleXcpmCfgLock quirks are not necessary)

✅ Enable

  • VT-x (no option in BIOS, it's enabled by default)
  • Above 4G decoding
  • Hyper-Threading
  • EHCI/XHCI Hand-off
  • OS type: Windows UEFI Mode (Clear Secure Boot Keys or choose Other type)
  • DVMT Pre-Allocated(iGPU Memory): 64MB

EFI

SSDTs

Compiled by following the Dortania's ACPI Guide, the .dls SSDT files can be found in SSDTS folder.

  • SSDT-AWAC.aml
  • SSDT-EC-USBX.aml
  • SSDT-PLUG.aml
  • SSDT-SBUS-MCHC.aml
  • SSDT-RHUB.aml
  • SSDT-GPRW.aml (prebuild)

Kexts

All kexts with a version tag are downloaded from original repositories.

  • VirtualSMC.kext 1.1.5
  • SMCProcessor.kext 1.1.5
  • SMCSuperIO.kext 1.1.5
  • Lilu.kext 1.4.6
  • WhateverGreen.kext 1.4.1
  • AppleALC.kext 1.5.1
  • IntelMausi.kext 1.0.3
  • NVMeFix.kext 1.0.3
  • RadeonBoost.kext v1.6
  • FakePCIID.kext (from RehabMan 2018-1027)
  • FakePCIID_Intel_HDMI_Audio.kext (from RehabMan 2018-1027)
  • FakePCIID_intel_I225-V.kext (from SchmockLord)
  • USBPorts.kext (exported by hackintool)
  • USBPorts-All.kext (disabled, include all ports of this board)

Misc

Installation

The installation guide in the OpenCore Install Guide are quite clear and easy, so there will be no detailed installation tutorials here. Give it some patience and you can build your own EFI.

Required Tools/Utilities

Screenshots

iGPU

cpu-test

cpu-test

Credits