Skip to content

Instantly share code, notes, and snippets.

@vinnymac
Last active October 13, 2020 00:25
Show Gist options
  • Save vinnymac/4de93b3184fe99ec6c55a3dfcb1ab1c4 to your computer and use it in GitHub Desktop.
Save vinnymac/4de93b3184fe99ec6c55a3dfcb1ab1c4 to your computer and use it in GitHub Desktop.
Guide to Hackintosh (specifically for Z390i/9900K/Vega64 build)

Hackintosh

Setup Guide

  1. Download macOS from somewhere. Easiest way is to use an existing mac to download it from the App Store.

  2. Use Unibeast or terminal installer to generate a usb installer

  3. Download Clover EFI Bootloader and run it against the USB you generated in step 2. This will configure the EFI partition on the USB and fix anything bad Unibeast might do. I recommend selecting the UEFI options and the RC scripts on target volume options. EmuVariable64Uefi RC Scripts

  4. Download Clover Configurator and use this to configure your EFI partition. This tool is like the swiss army knife of hackintosh. You'll use it again and again iterating until your hackintosh is perfect. It can theme your boot menu, control which kexts you install, change boot arguments, and a lot more.

  5. Configure your EFI and config.plist using the useful links section below

  6. Once your kexts/drivers/themes/etc are all setup as you like, you can unmount your EFI and eject your USB.

Install Guide

  1. Boot from the USB on your new machine. The installer should load.
  2. Open disk utility in the installer before installing, and format the drive (this will erase everything on the drive and you will never get it back) you want macOS on to HFS+, Mojave should turn it in APFS later.
  3. Now that you have formatted the drive, choose it to install to. This can take 10-20 mins even on a speedy NVMe drive.
  4. The computer may restart once or twice throughout this, make sure when it restarts you boot to the drive you are installing to and not the USB stick.
  5. Once installed you can setup your Mac, you'll find opportunities to configure everything later so I recommend skipping most of the settings other than computer name and/or wifi.
  6. When you login you can use Clover Configurator to check if your EFI partition on this drive has the EFI folder in it. If you find it is missing, then you'll need to copy your EFI from your USB installer to your EFI partition on this computer. You may even want to rerun the clover bootloader on this EFI to be safe.
  7. After all is done, I recommend opening the config.plist and making sure everything is as you expect it. You'll want to reboot every time you save changes to your plist. Check what is and is not working and iterate until you get it right. Once you are in a good place backup your EFI partition to a USB or other drive.

Useful links and information

Kext Updater for easily updating kexts

https://bitbucket.org/profdrluigi/kextupdater/downloads/

Broadcom WiFi/Bluetooth kexts

https://github.com/RehabMan/OS-X-BrcmPatchRAM

LAN/Ethernet

https://github.com/Mieze/IntelMausiEthernet

GPU

Download latest WhateverGreen.kext + Lilu.kext

I did not need to do anything else to have graphics working, it really was that simple and should be if your card is natively supported by macOS. I mostly added these kexts so that iGPU and power would be handled properly. Plus Lilu is needed for many features.

Audio

I used AppleALC from this post with Lilu kext. The latest one can be found here

USB

You will want USBInjectAll and follow the SSDT information below for better support.

RehabMan's FakeSMC

I went with FakeSMC.kext because VirtualSMC.kext is pretty new and user vincek8s on tonymac said that they had issues using it with the Z390i. You can get RehabMan's FakeSMC package from here. Inside the zip, you'll find the HWMonitor.app. Just install it into Applications and - once you run it - it lives in the menubar, and lets you view real-time stats about your machine.

Sleep/Shutdown/Reboot

I found it necessary to make sure I had the EmuVariableUEFI kext and rerunning the clover bootloader with the RC scripts. If you forget to do that step then you will likely experience problems with NVRAM which needs to be working properly.

FakePCIID

I had to use this with the BroadcomWiFiInjector.kext to get wifi working properly. You can download it here

Clover Conifigurator - Boot

Enable Verbose (-v) while debugging, can be turned off later. I also enable dart=0 to avoid VT-d support, which you may already have disabled in bios. And keepsyms=1 for better Kernel panic information.

Custom Flags I use: -wegbeta -lilubetaall -vsmcbeta -alcbeta. I use these flags because they enable betas of WhateverGreen, Lilu, SMC, and ALC to work better with newer versions of macOS, they might not all be necessary.

I also recommend setting Default Boot Volume to LastBootedVolume, Legacy to PBR, XMPDetection=Yes. Finally I would set a timeout on boot, so it automatically starts to boot to your preferred drive, I like to set it to 5s.

Clover Conifigurator - SMBIOS

You'll spend a lot of time getting this right. All the way on the right below the Check Coverage button is a dropdown menu, you'll want to pick the right one. For me that was iMac18,3 (iGPU headless with a dGPU). If you only use an iGPU then you'll want iMac18,1 instead. The UUIDs and Serial Numbers here are also how one would get iMessage/FaceTime working properly. That and the MLB on Rt Variables. I'll link to a guide below for how to get that done properly.

Clover Conifigurator - Rt Variables

I recommend setting from SMBIOS, ROM to useMacAddr0. MLB can be generated once you have the correct serials. Set BooterConfig to 0x28 and CsrActiveConfig to 0x67 as indicated here. This should disable SIP making it easier to make changes to your system such as installing kexts as needed.

Other important topics and tips

What does an EFI folder do?

Good explanation on the EFI folder and generally how to configure your system. I would not follow it to the T, but just read over it so you know what certain flags do.

iMessage/FaceTime

An idiots guide to iMessage

SSDT

If you have the same motherboard as me Z390i I recommend this SSDT file You should also create your own if you can, it isn't too difficult: Create a Custom SSDT for USBInjectAll

Check Apple Serial Number

Apples Serial Checker How to generate your own serial numbers

Themes

You can install themes by downloading them and copying them into /EFI/CLOVER/themes. Then in Clover Configurator you just need to set the theme you want to use. Open your config.plist and go to Gui. Then enter the name of the theme folder you want to use in the Theme input area.

Clover Configurator Theme Example

Here is a theme you could try this with.

Benchmarking

You'll want to download the following tools if you are monitoring hardware or benchmarking.

Download HWMonitor, Intel Power Gadget, Cinebench, and Geekbench

Things I have not yet explored

  • FileVault (requires additional kexts)
  • DRM Video
  • Apple Watch Unlocking
  • Wake on Lan
@sebqq
Copy link

sebqq commented May 9, 2019

@terrytwomail I hope so as he already described the .kext you need to make it work. BTW I've already bought the z390i and will try to build it in next few days so I really hope there will be no problem with wifi :/

@clbx
Copy link

clbx commented May 30, 2019

@sinodko I have one coming in the mail tomorrow, does everything work well?

@sebqq
Copy link

sebqq commented Jun 2, 2019

@clbx wifi and bluetooth does not work. It has CNVi wifi card slot which is a big problem. So I've ended up using LAN cable for wifi and no bluetooth accessories for now or at least no BT acc without usb dongle. In future I would like to buy compatible bluetooth dongle but currently there is no way to order one into my country with reasonable shipping price. Hope it helps.

@vinnymac
Copy link
Author

vinnymac commented Jun 2, 2019

@terrytwomail @sinodko I am a bit embarrassed I don’t recall making this public. I actually need to do a rewrite of this.

I did get WiFi and Bluetooth working just fine. I had to use a specific Broadcom chip to replace the built in intel chip on the Z390i motherboard.

The process required disassembling the heatsink shroud that covers the IO on the motherboard. Then removing the shroud around the intel wireless module itself. The new module then fits perfectly in place.

The exact chip I ordered was the dell model

Broadcom BCM94352Z NGFF M.2 WiFi WLAN Bluetooth 4.0 802.11ac up to 867 Mbps card 22*30mm

I have made my machine very stable since I posted this. I am now running a triple boot of Ubuntu, Windows 10, and macOS 10.14.4. If I find time I’ll try to update with better information and maybe a link to a EFI folder.

As for BT/WiFi kexts I use the AirportFixup kext and the BrcmBluetoothInjector kext (has to be built or found is not included on github).

Also I can confirm Airdrop, Wake on LAN, and Apple Watch unlocking work just fine with this modification.

@wenshen35105
Copy link

@vinnymac are you having the ASUS ROG Z390I MB? Or the Gigabyte one?

@vinnymac
Copy link
Author

vinnymac commented Jun 8, 2019

@wenshen35105 I have the ASUS ROG Z-390i MB.

@akellbl4
Copy link

akellbl4 commented Jul 8, 2019

Hi, can you attach your EFI folder?
I have been trying to install Hackintosh on a similar config (like yours but now without dGPU) and spend a lot of time but had no success results with start installer.

@clbx
Copy link

clbx commented Jul 8, 2019

This specific EFI folder won’t help you much since OP used a dGPU. Getting Intel graphics to work properly is a different process

@akellbl4
Copy link

akellbl4 commented Jul 10, 2019

@clbx, I have already used EFI folder from tonymac and this is worked well. Now I'm going to build similar EFI as I got from the forum.

@vinnymac thanks for advising wireless module, I ordered the same chip for me.

@vinnymac
Copy link
Author

vinnymac commented Sep 3, 2019

I haven't updated this guide yet, and still plan to. My latest EFI can be found in this article I just wrote. Hope you find it useful.

@akellbl4 If you are interested in getting iGPU working navigate to SA in the BIOS and set the GPU to Internal Graphics, DVMT to 128 and disable RC6 Standby. Make sure you use a 18,1 SMBIOS instead of 18,3 and it should work pretty well. Feel free to ask me any questions if you have trouble.

@akellbl4
Copy link

@vinnymac thank you, I solved all my problems and built my own configuration.
And I bought 5700XT but it still doesn't support by Apple. Now I using on iGPU for macOS and 5700XT for Windows.

@vinnymac
Copy link
Author

Glad you got your system working; Hopefully Catalina adds more support for the Navi cards. Right now I’m running iMac19,1 with a few changes and my iGPU and RX580 are working together well. I’ve read iMacPro1,1 is what is currently working well for a lot of people and that card.

@eddytheeditor
Copy link

I’m kind of in a weird spot. I have almost exactly this config but no iGPU.

-i9-9900kf
-Asus Z390i
-Sapphire Vega 64 (black model)
-iMac Pro 1,1 SMBIOS

Just about everything works except for the H.264. When I try exporting it from Premiere or FCPX, it occasionally crashes my system but usually it just produces buggy videos with artifacting and glitching.

I suspect it’s got something to do with the fact that my CPU doesn’t have a built in iGPU but I’m not versed enough in this world to figure it out.

I would love a little help if any of you know of something I can do. Likewise. I’d love to maybe get a Hackintosh tutorial from one of you!

@tabousaleh3
Copy link

I have a 9700k on the same board (rog strix z390-i). I have everything working well except for the life of me I cant figure out why my graphics mem is only 33mb! Its clear because theres alot of tearing and stutters moving stuff around. Using 18,3 as i have a gpu but it is nvidia. Also im on catalina. Are any of these variables the issue? Thanks!

@Gvbriel
Copy link

Gvbriel commented Apr 17, 2020

I have a 9700k on the same board (rog strix z390-i). I have everything working well except for the life of me I cant figure out why my graphics mem is only 33mb! Its clear because theres alot of tearing and stutters moving stuff around. Using 18,3 as i have a gpu but it is nvidia. Also im on catalina. Are any of these variables the issue? Thanks!

did you managed this to work? i managed to install system but its not turning on

@mrpacogp
Copy link

mrpacogp commented May 8, 2020

Hello! i just get your efi folder and well, all is working, but my usb bluetooth is not working, i have used this setup for bios:
https://github.com/czombos/asus-rog-strix-z390-i-gaming-hackintosh
Can you please tell me what can i do to get working my bluetooth usb? but next week i will get the adaptor and the broadcom to use in motherboard, its better to wait for that?
best regards

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment