czombos / asus-rog-strix-z390-i-gaming-hackintosh

A guide to build your own Hackintosh based on ASUS ROG STRIX Z390-I GAMING Motherboard and AMD GPU
BSD 3-Clause "New" or "Revised" License
102 stars 29 forks source link

Pre purchase advice #25

Open johanlantz opened 4 years ago

johanlantz commented 4 years ago

Hi there and thank you so much for taking the time to put this together. I have been studying hackintosh for a couple of weeks now preparing my first build.

I am set on itx form factor and was considering Gigabyte Z390 I Aorus Pro Wifi but as far as I understood I could never get native bluetooth and wifi with that one so I am super happy that I found your setup here.

If it is not too much to ask, would it be possible to just ask some simple things below before starting to build an order for the parts?

Thank you again for sharing your knowledge and time.

kwuster commented 4 years ago

Jo,

It's great you are taking an interest in Hackintoshing. Every build is going to be a little different, but I will try to answer your questions to the best of my ability.

I am set on itx form factor and was considering Gigabyte Z390 I Aorus Pro Wifi but as far as I understood I could never get native bluetooth and wifi with that one so I am super happy that I found your setup here.

You can replace the NGFF E-Keyed WIFI/ Bluetooth module with one that is compatible. Below are two of my recommended options that I have personally tested:

Fenvi BCM94360NG https://www.newegg.com/fenvi-bcm94360ng-pcie-half-mini-card-m-2/p/0XM-00JK-00083 OR MacBook Air's OEM Airport Module w/ M.2 E-KEY adapter. https://www.ifixit.com/Store/Mac/MacBook-Air-Mid-2013-2017-AirPort-Bluetooth-Board/IF108-044?o=1 https://www.amazon.com.au/BCM94360CS2-BCM943224PCIEBT2-Card-Adapter-Hackintosh/dp/B01JGERLOS

Module Pros Cons
Fenvi Works Out-of-box
Correct M.2 Height
Unobserved grounding issues
Non-OEM
Additional Lilu kexts may be necessarily to get Bluetooth to work.
OEM Works out-of-box
Future proof for as long as Apple supports 2017 MBA
No additional kexts required for bluetooth to work
Insulated screws/ spacers/ Electrical tape required to solve grounding issues.
Adaptor adds height to the card, requiring you to modify your MB heatsinks/ EMI covers to fit.
Alternatively, use M.2 E-key risers.

My goal is a dualboot win10 and macOS. After replacing the wifi card and installing windows drivers, I should have Bluetooth and Wifi fully functional in both OS's right?

I've not dual-booted with the Fenvi card, but I have always used the OEM card. From what I know, the Apple MBA OEM Airport card driver for windows can only be obtained from downloading the Boot Camp support files. I happen to have a copy of the driver because I have a real MBA, and downloaded the support files from it. I'm sure you can get it from other sources if you know where to look. Give me a shout if you need it, I can share it if need be.

When Dual booting, you should boot Windows using the OpenCore boot loader not the native Windows bootloader. Reason for this is OpenCore (and Clover if you are still using it), allows you to use different DSDT & SSDT ACPI tables. This is essential as Mac OS do not read ACPI entries the same way as Windows and other OS'es do. There are instances where you want to stop Mac OS from reading a record on the ACPI table by renaming it to something that Mac OS doesn't recognise to over come a bug or some sort of hardware check. Please read up on DSDT and SSDT editing from the Dortania and other hackintosh forums. This part is on you.

Keep in mind, this repo is only concerned with the ASUS Z390I motherboard, it is not guaranteed, nor expected to work with the Gigabyte Z390 I Aorus Pro Wifi. There are some Hackintsoh chops you might be able to use from this repo, I wouldn't use this repo as is on your MB.

I was planning on getting a i5-9600K. Should the iGPU work in parallell with the dGPU? Everyone seems to agree that I you should get a CPU with iGPU so I assume I should not get an F model.

If you want fix DRM issues with Netflix, Amazon Prime Apple TV+, you need to use the iGPU and / or iGPU with dGPU. There are also some Mac OS graphics that need the iGPU enabled, so it is always a good idea to enable this. Do not go with the F models. Try to keep hardware in-line real Macs, the benefits of this outweigh the added CPU overheads consumed by the iGPU. You're SMBIOS will also match up with iMac19,1 if you use the 9600K vs the F.

However, even with iGPU enabled, you might not be able to use the on-board DisplayPorts/ HDMI on you motherboard together with your dGPU ports. This is because based on different SMBIOS, some 'real Macs' use the iGPU is headless mode. i.e. iGPU without any ports.

You'll either need to find an SMBIOS that does have iGPU ports or to enable those ports on a predominantly headless iGPU system. This is a bit of a rabbit-hole. My suggesting is to stick with one type of ports, not both, preferably dGPU and keep on-board DisplayPorts disabled/ unused.

The Samsung NvMe seems hard to get hold of here. Is there any reason to suspect other brands will not work or should NvMe drives be generic? I found for instance a Gigabyte Aorus RGB M.2 512GB PCI Express 3.0 3D TLC NVMe but no clue if I need to be brand specific for the NvMe?

Please read the post on Dortania regarding SSD's https://dortania.github.io/Anti-Hackintosh-Buyers-Guide/Storage.html

RX 5500 XT is priced similarly to the RX 580 and it is a newer card and I will only use the latest version of Catalina. Is there still a reason to go for the RX580 or should the 5500 XT work just as well nowadays?

Price. I would go with the 5500XT if you plan on using Catelina and above. Avoid MSI GPUs. Gigabyte, and ASUS reference card are best I find for Hackintoshing. Sapphire cards are also a solid choice as Apple seems to take a linking to them not he supported cards list. Do your research but these cards are the one most talked about from what I have seen, seems to work without much hiccups. You might want to also look at if the card is supported with the RadeonBoost.kext.

https://www.insanelymac.com/forum/topic/343461-kext-tired-of-low-geekbench-scores-use-radeonboost/

This kext seems to have solved some stability issues I had with my Radeon VII, and seems to improve performance of most AMD cards. I think the word is avoid installing this with Catelina 10.15.5, but that could be changing soon.

johanlantz commented 4 years ago

Wow @kwuster that is an amazing writeup, thank you so much I learned a lot from it and I do have a few follow up questions if you do not mind.

Thanks again so much for sharing your knowledge

peternguy3n commented 4 years ago

@kwuster Awesome write-up. Leaving some comments as well:

When Dual booting, you should boot Windows using the OpenCore boot loader not the native Windows bootloader. Reason for this is OpenCore (and Clover if you are still using it), allows you to use different DSDT & SSDT ACPI tables.

I might be confused, but isn't this the other way around? You would want to boot from native Windows bootloader, and not OpenCore for the reasons you listed. Loading from OpenCore limits your Windows installation to the bootloader edits made for the MacOS to work.

kwuster commented 4 years ago

@johanlantz & @peternguy3n,

Bluetooth

The Bluetooth thing confuses me a bit. There are several mentionings around about people having working Bluetooth with the default chipset.

I don't blame you, there's a lot of moving parts to make sense of here:

1. USB port limits under Mac OS. [i.e. does Mac OS see the USB port the BT is on]

@peternguy3n is right. The issue with the BCM9436XX chipset from Broadcom is the integrated Bluetooth does count as an additional USB 2.0 port in both Windows and Mac OS. You'll need to enable the USB 2.0 port for bluetooth for it to work under Mac OS. On the Asus ROG Z390I, the bluetooth has a port ID of 'HS14'.

@johanlantz If you haven't yet stumbled on this topic yet, Mac OS' enforcement of USB port# is a common issue with Hackintoshes. https://www.tonymacx86.com/threads/guide-10-11-usb-changes-and-solutions.173616/

SIDE NOTE: Short of it is under Mac OS, you have a total budget of 15 USB ports you can enable, with USB 2.0 and 3.1 on the same physical port being counted as 2 separate ports. USB-C orientations can take up to x4 ports based on the orientation. See below:

USB connector type Supported USB Ver. Ports consumed of the 15 allowed in Mac OS Total
USB 2.0 TypeA USB 2.0 x1 'HS Port' 1/15 per physical port.
USB 3.0/3.1 TypeA USB 2.0/ 3.1 x1 'HS Port' x1 'SS Port' 2/15 per physical port.
USB 3.1 TypeC USB 2.0/ 3.1 x2 'HS Port' + x2 ''SS Port' 4/15 per physical port.

2. I can see the USB port, but does it work and work well. [Windows drivers & Apple kexts]

@peternguy3n, yes, my understanding is the Fenvi cards may need the AirportBcrmFixup.kext for issues proper resumption after sleep. I think there' windows drivers around for the Fenvi, I've not tried.

For the OEM card, AirportBrcmFixup.kext is not necessary for stability, but it does allow you to tweak the WIFI regions to suit your country. This will vastly improve the 5Ghz performance of your Hackintosh. Same tweak can be performed on the Fenvi cards.

For the OEM card's BT to work with Windows, you'll need to install the AppleBluetoothBroadcom64 driver bundled with bootcamp in addition to the WIFI driver. I haven't used this in a while as I just RDP to a windows machine to do windows stuff. I've heard some reports of instability as versions of windows go up, and this driver gets left behind.

Grounding

In your comment about the Fenvi card above you say "Unobserved grounding issues". What does that mean?

WIFI and bluetooth are radios, and radios need a good ground plane to propagate its signals. The OEM MBA Airport card has issues with its ground as it has been tuned to ground to the Aluminium body of the MacBook Air. You need to use insulated screws and washers to stop the card from grounding to other parts of you MB. Electrical tape could be used, but looks ugly.

With the Fenvi card, I have not noticed this issue, hence 'unobserved'. I can't say it isn't present.

NVME SSD

I have the Samsung 970 Evo Plus, this is not recommended from the Dortania post, but if you have the means to perform a firmware upgrade on it via Windows, this will make this compatible with Mac OS, which is what I have done.

5500 XT

I wouldn't hesitate to buy the 5700 XT. Even if RadeonBoost.kext may not be compatible with it under 10.15.5. Apple constantly improves on its AMD drivers, and the loss of a bit of Geekbench scores doesn't actually translate to any noticeable drop in performance in the real work. For instance, I did not notice any improvements on my Radeon VII under Open GL workloads. Only Geekbench 4 I noticed the huge jump. Honestly, there's a lot to be said about not installing RadeonBoost.kext. One less kext is one less thing to break. It's definitely the first kext to cull if I decide to simplify kext list.

By the same token, there's nothing wrong with the R580, if anything it is more compatible/ mimics a real Mac more than the 5700XT. But you are getting an older card stuck not he Vega I architecture. I just wouldn't get it for the sake of being compatible with RadeonBoost.kext.

Either-way, "Whatevergreen" with "Lilu.kext" will fix 99% of any graphics issue you have. Even if things work out-of-box, it is still a good idea to install Whatevergreen.kext. I would focus on my compatibility with Whatervergreen first before prioritising RadeonBoost.kest.

Dual-monitors on eGPU ports

I've not seen anything too debilitating here except for my HDMI flickering after a turn off and on my primary DisplayPort monitor without turning off my HDMI monitor first. Stuff like this can happen on Windows and real Macs, I'm not too fussed about it.

I would suggest playing around with the 'iGPU' memory allocations on the BIOS tho, it could provide more stability to Apple/ DRM services and prevent odd graphics issues.

kwuster commented 4 years ago

@kwuster Awesome write-up. Leaving some comments as well:

  • Experience with Fenvi card (BCM94360NG): Bluetooth and Wifi work OOB. Bluetooth might not work until USB is mapped correctly (HS14 needs to be enabled and set to internal). Wifi works, however has instant wake issues when system sleeps. This is fixed by adding AirportBcrmFixup kext. May have issues where system would not wake after sleeping for a long period of time (> 4 hours). Fixed by disabling Find My Mac. An alternative is to disable TCPKeepAlive via pmset. Fenvi drivers are available to work in Windows as well.

When Dual booting, you should boot Windows using the OpenCore boot loader not the native Windows bootloader. Reason for this is OpenCore (and Clover if you are still using it), allows you to use different DSDT & SSDT ACPI tables.

I might be confused, but isn't this the other way around? You would want to boot from native Windows bootloader, and not OpenCore for the reasons you listed. Loading from OpenCore limits your Windows installation to the bootloader edits made for the MacOS to work.

@peternguy3n,

The verdict on this is still very much unresolved. I think I did make a mistake on my previous post about dual-booting.

To clarify:

If you choose to dual-boot windows using the native Windows bootloader, you will be using a different ACPI table from what is extracted for you Mac OS. This can maintain segregation of you Mac OS ACPI and what is provided on you native MB.

Issue here is DSDT supplied by you MB manufacturer often have lot of issues, but for the novice hackitosher, this is acceptable and it's easier to ignore it.

If you choose to dual-boot using OpenCore (or Clover) bootloader, you have the option of booting from the same ACPI table. From here you have a opportunity to fix up ACPI table bugs that you know are good for both OS'es. With clean and verified ACPI tables, you have better system stability on both OS'es.

On top of that, you can apply Mac OS DSDT/ SSDT patches independently of Windows only patches via the OpenCore Bootloader depending on the specific requirements of the OS.

This is the dream, but it's a lot of work too. I had it running a while back, but found it too tedious to maintain as BIOS gets updated. So I just RDP into a Windows box to do windows stuff these days.

johanlantz commented 4 years ago

Soo much good information guys and hard to digest all of it but it is getting better. I have my config pretty much clear now, looking at the final touches.

Dual booting with Win10 is mandatory for me since this will have to be a family computer that supports some gaming as well as macOS. Should I be concerned about the Win10 dualboot comments above or should I expect it to work even with the ACPI issues mentioned, it is still a bit early in my learning process to make full sense of all the details.

kwuster commented 4 years ago

Apologies for the TLDR stuff. It will be fine dual booting Windows natively using the F12 selection menu. They were after all design for Windows in the first place.

johanlantz commented 4 years ago

@kwuster Do not apologize, you explain in such detail, much better than in most other places. This is a jungle to get started with and there is so much conflicting information.

I have now placed my order, there was a summer sale so even though I overspent I got some decent deals with some discounts and reconditioned items:

It will take a few days to get the parts but I will keep you updated. The Win10 part does not concern me but if I fail with the hackintosh part now after spending this much money I will be in some serious trouble πŸ˜…

I think it's ok to close this ticket if you want to but just to confirm, once the computer arrives, I can proceed to install Windows 10 first right? The Hackintosh part is done afterward?

kwuster commented 4 years ago

It only seems logical to do Windows first. You'll need to disable secure boot before installing windows, else u'll get a secure boot violation if u also boot into mac os.

johanlantz commented 4 years ago

Ok, so the first steps would be to disable secure boot and install windows as usual. Then come back to everything opencore once Windows is verified as working πŸ‘

kwuster commented 4 years ago

You just need to clear the secure boot keys. I don’t think there is a option for you to turn off secure boot completely.

Regards.

On 19 Jul 2020, at 2:54 am, johanlantz notifications@github.com wrote:

@kwuster https://github.com/kwuster Sorry for the silence, it took longer than expected to get the computer. The Saphire Nitro did not fit in the case so everything was delayed and the only card small enough was the MSI 5700 XT Mech (it seems there is a solution for the boot install problem with MSI cards so I will get back to that when I get that far).

Either way, I have just finished installing Windows and then I recalled your last comment about secure boot. I looked in the bios and it says Secure Boot is enabled and "Other OS". Like this: https://user-images.githubusercontent.com/7461655/87857484-5e3a2d80-c927-11ea-97b6-a1c0a7edfc0d.png Is this the way you have it configured as well? The reason for asking is that there is no option to disable secure boot. One comment on Reddit said to choose Windows as OS and then "Clear Secure Boot Keys" but that operation is not allowed.

Since you have the same motherboard, it would be tremendously helpful to know if you have the same setting for secure boot or if you actually managed to switch it to Disabled?

β€” You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/czombos/asus-rog-strix-z390-i-gaming-hackintosh/issues/25#issuecomment-660510234, or unsubscribe https://github.com/notifications/unsubscribe-auth/APF4F4QJP3BCIICT2ZLUAKTR4HHSXANCNFSM4OP46HUQ.

johanlantz commented 4 years ago

Thank you, I deleted the question because I found your amazing screenshot collection from your bios settings but you were so fast responding either way πŸ˜„ . I have had lots of problems with BSOD for the XT 5700 today but finally, it seems to have improved when I turned off XMP in the bios, which sucks that I had to do but at least it seems more stable for now.

Will keep you updated during the week when I start going through the opencore steps. Again, thank you so much for keeping this thread open.

kwuster commented 4 years ago

Those screenshots aren't mine. The repo belongs to czombo, not me.

I don't want to take credit for his stuff.

I did however use this repo as reference to build my hackintosh tho. There's good stuff here, and will get you 90% of the way.

This repo is not perfect, but it's the best one I've come across so far.

kwuster

Sent from my iPhone

On 20 Jul 2020, at 06:11, johanlantz notifications@github.com wrote:

ο»Ώ Thank you, I deleted the question because I found your amazing screenshot collection from your bios settings but you were so fast responding either way πŸ˜„ . I have had lots of problems with BSOD for the XT 5700 today but finally, it seems to have improved when I turned off XMP in the bios, which sucks that I had to do but at least it seems more stable for now.

Will keep you updated during the week when I start going through the opencore steps. Again, thank you so much for keeping this thread open.

β€” You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub, or unsubscribe.

johanlantz commented 4 years ago

First step passed. Got through the installation. Had to fiddle a bit with the graphics due to the MSI card but now it's installed.

Will report back about stability in a couple of days. I might have a corrupt memory module so I have a support appointment on Monday to investigate that since I have massive stability issues in Windows. (I do not want to pollute my mac test results with that in case I have a bad component).

Thanks again for the help. Will feedback learnings here as I test the system.