Contribute
Register

[Guide] ASRock Z390 Phantom Gaming-ITX/ac, i9-9900K, RX 580

Status
Not open for further replies.
Joined
Sep 1, 2014
Messages
2,944
Motherboard
GA-H87N-WIFI
CPU
i7-4790S
Graphics
GT 740
Mac
  1. MacBook Pro
  2. Mac mini
Mobile Phone
  1. iOS
Hardware:
  • NZXT H200i case (mini-ITX, but with good layout and cable management)
  • Corsair H100i AIO CPU cooler
    • Note: though the case says it fits 2x140mm fans, it does not fit the H115i with 2x140mm fans because the radiator is too large
  • ASRock Z390 Phantom Gaming-ITX/ac
    • NOTE 1: Shipped with UEFI v1.2. Tried updating to UEFI v1.3, but it broke things (seems like it broke USB ownership/handoff but I can't prove it -- in any case always froze during boot with v1.3). Reflashed to v1.2 and that works fine.
    • NOTE 2: Includes a pre-installed Intel m.2 wireless card in a little metal housing. On the previous Z370 I swapped it with a Mac-compatible one but broke one of the antenna connectors on the process. This time I didn't bother since it'll be on Ethernet anyway. I expect swapping in a compatible m.2 wireless card would work if you're sufficiently dextrous.
  • i9-9900K
  • 32 GB DDR4-2666
  • Sapphire Pulse RX 580
    • Works fine with 2 4K monitors both connected via DisplayPort, even with both rendering at 5120x2880. I get the boot display mirrored on both, and once macOS initializes the card it switches to a single desktop spanning both. Hot plug of one of them worked fine too; it came up as mirrored but I was able to switch to separate desktops.
  • Have tried with both AHCI and NVMe SSDs
  • Sony 4K TV (HDMI-only; connected via HDMI-to-DisplayPort adapter because there were issues booting to HDMI and using the adapter was easier than troubleshooting)
Not working:
  • The USB-C port is not working for me at this time. I haven't done much troubleshooting.
  • iTunes streaming videos -- it just never proceeds past 0:00. (Downloaded movies play fine, just not streaming.) I gather you can choose between H264/HEVC acceleration and iTunes streaming DRM, and for now I have the video acceleration but not the streaming.
Have not yet tried:
  • Thunderbolt 3 port
  • Sleep/Wake

Install Procedure:

I could not get the 10.14.2 install to work with a default UniBeast install drive -- I had to customize config.plist, kexts, and etc. to avoid reboots and hangs during installation and the first boot. So I've ended up with a boot drive that looks a lot like the installed system. But it works.
  1. Back up old data (with Time Machine, SuperDuper, whatever)
    1. Since I was doing a clean install and copying data over, I deauthorized iTunes and signed out of iCloud and iMessage from my old High Sierra install
  2. Create a USB drive with UniBeast 9 as described here. NOTE: if reusing an old USB install drive, make sure to clear off the EFI partition. If erasing in Disk Utility, make sure you erase the whole USB drive not just the existing partition. If using Disk Utility in Mojave on another machine, use View / Show All Devices in order to be able to do that.
    1. After the UniBeast drive is done, run RehabMan's Clover package (I used v4701), making sure to select the USB drive as the destination. Customize to install for UEFI booting only, and under UEFI drivers add EmuVariableUefi-64
    2. After upgrading Clover, your EFI partition should still be mounted; check whether HFSPlus.efi is in EFI/CLOVER/drivers64UEFI -- if not, get it and put it there.
    3. You can remove all the kexts from EFI/CLOVER/kexts/Other. Then put in these kexts (this will get current versions):
    4. Get Clover Configurator and the attached config.plist (should work with 8xxx or 9xxx CPUs). Open the config.plist with Clover Configurator.
      1. Go to the SMBIOS screen, and hit Generate New under the Serial Number and under the SMUUID.
      2. Hit the Check Coverage button to the right. Enter the CAPTCHA on the Web page that comes up and ensure that it says the serial number is invalid (NOTE: you WANT it to be invalid -- as in, not used by a real Mac! If it shows machine data go back to Clover Configurator and hit the Generate New buttons again and then Check Coverage again).
      3. If you know what your system drive will be named, go to the Boot screen and enter the name over Default Boot Volume
      4. Save the file
    5. Copy the config.plist customized above to EFI/CLOVER/config.plist on the USB drive
    6. If installing from a USB3 drive, copy aaron-usb-config.aml (download and unzip the attachment below) to EFI/CLOVER/ACPI/patched/ which will enable all the USB3 ports on the board. If installing from a USB2 drive it should work without that.
  3. Connect a monitor to the RX 580 (DisplayPort preferred) and boot to the install drive.
    • You can use F11 to select the USB device on every boot; Since there are a few reboots involved, I instead go into the BIOS and rearrange the boot list to put the USB on top and then save and exit.
    • Once booted, it takes a while to get to the initial install screen.
  4. If needed, run Disk Utility from there to clear off the target partition (or initialize the drive, if it's new).
  5. Proceed with the Mojave installer
  6. It rebooted at least twice for me.
    • It ran an initial progress bar until it said "2 minutes remaining" and then suddenly rebooted
    • On reboot, select to boot to the system drive from the Clover menu
    • It took a long time to come up to a GUI here, then showed a progress bar with no progress completed and "13 minutes remaining", then rebooted
    • Select to boot to the system drive again. This time after the long wait it came up to the progress bar ad immediately completed a small fraction ("12 minutes remaining") and then did the rest of the install.
    • It got to a 10-second countdown to reboot with a "reboot now" button, but there was no mouse pointer or anything so I just waited it out.
  7. At this point I could get into Mojave with working Ethernet by booting off the UniBeast drive. I tried doing the user migration during the first boot, and it froze while analyzing the backup content. So instead I rebooted, created a temporary ID for the post-install work, and used the Migration Assistant later.
Post-Install Configuration:
  1. Using the same Clover installer you used for the flash drive, install Clover to the system drive. Select the same options as before, but this time also check Install RC scripts on target volume.
    • It again leaves the EFI partition (on the system drive) mounted.
  2. Also mount the EFI partition from the flash drive. I identify the EFI partition from Terminal with "diskutil list" and mount it with "sudo diskutil mount /dev/diskNs1" where diskN is the identifier for the USB drive, as shown by "diskutil list". After that a second "EFI" shows up in the Finder sidebar. The one with the eject symbol and the same icon as "Install macOS Mojave" is the flash drive, the other is the system drive.
  3. Replace the config.plist that Clover generated on the system drive with the one from the flash drive.
  4. Copy the kexts IntelMausiEthernet, FakeSMC, Lilu, WhateverGreen, and USBInjectAll from the flash drive EFI/CLOVER/kexts/Other to the system drive EFI/CLOVER/kexts/Other
  5. Add the AppleALC kext to that directory on the system drive for audio support
  6. If you did the wireless swap, also add the AirportBrcmFixup kext to that directory on the system drive
  7. To get USB3 configured, see the USB addendum below (install the AML I provide or one of your design into EFI/CLOVER/ACPI/patched/ on the system drive)
  8. Eject the USB flash drive and Reboot
  9. You should boot into Mojave successfully, with audio working (and wireless as well, if you swapped the wireless board)
iMessage Configuration:
  1. This should be pretty much working already. I set the name of my machine under System Preferences / Sharing before activating anything.
  2. If you have any questions, follow the iMessage guide. It never hurts to run the iMessageDebugv2 provided in that guide, save the result, reboot, run it again, and compare to make sure all the values are the same.
  3. After confirming that the iMessageDebugv2 output does not change across reboots, sign into iCloud and iMessage.
After that, things seem to be working in Mojave. Yay! :)

Performance:
  • Saw the expected performance increases with Handbrake & Blender
  • A Handbrake transcode that normally pushes the limits of the CPU cooler didn't send it over 60C -- I was shocked at the effectiveness of the AIO liquid cooler
  • Without any overclocking, showing GeekBench 4 scores of 6441/37130 with OpenCL score of 130910... not quite as astronomical as pastrychef's delidded and overclocked build, but respectable nonetheless.
Addendum: USB Support

I did not get the port-limit patch working in 10.14.2.

This board has a total of 8 USB3 ports (which also count as 8 USB2 ports) plus 2 USB2-only case ports and a USB2-only port for the internal Bluetooth... for a total of 19, and that's not including anything for the USB-C connector.

That means if you use the internal USB3 connector on your case (but not the USB2 connector) as well as the on-board Bluetooth, there are 17 USB ports. Possibly more if you get USB-C working or if you also use the internal USB2 connector (e.g. for fan/LED/AIO controls). If you want to stay under the 15-port limit, you'll need to sacrifice some.

FWIW I omitted the onboard/case USB2 #2 (HS02), the USB2 features on the USB3 case ports (HS10-11), and Bluetooth (HS14). The attached aaron-usb-config.zip includes an AML uses this configuration. If you want a different USB configuration, the source DSL is in the ZIP as well, and you can customize and compile it to your own DSL using RehabMan's procedure.

z390-pg-itxac.png

HS01: Internal/Case USB2 #1
HS02: Internal/Case USB2 #2
HS03: Rear USB3 (left of HDMI)
HS04: Rear USB3 (left of DP)
HS05: Rear USB3 (right of HDMI)
HS06: Rear USB3 (right of DP)
HS07: ??? possibly USB2 device on USB-C?
HS08: Rear USB3 (right of Thunderbolt)
HS09: Rear USB3 (under Ethernet)
HS10: Internal/Case USB3 #1
HS11: Internal/Case USB3 #2
HS12-13: ???
HS14: Bluetooth
SS01: Rear USB3 (left of HDMI)
SS02: Rear USB3 (left of DisplayPort)
SS03: Rear USB3 (right of HDMI)
SS04: Rear USB3 (right of DisplayPort)
SS05: Rear USB3 (right of Thunderbolt)
SS06: Rear USB3 (under Ethernet)
SS07: Internal/Case USB3 #1
SS08: Internal/Case USB3 #2
SS09: ??? possibly USB3 device on USB-C?
SS10: ??? possibly USB3 device on USB-C?

Collected Images:
From VideoProc 3.2:
Screen Shot 2019-01-10 at 11.20.08 AM.png
From GeekBench 4:
Screen Shot 2019-01-10 at 4.10.46 PM.pngScreen Shot 2019-01-10 at 4.15.29 PM.png
 

Attachments

  • config-generic-9x-rx580.plist
    6.6 KB · Views: 919
  • aaron-usb-config.zip
    2.5 KB · Views: 1,415
Last edited:
Hardware:
  • NZXT H200i case (mini-ITX, but with good layout and cable management)
  • Corsair H100i AIO CPU cooler
    • Note: though the case says it fits 2x140mm fans, it does not fit the H115i with 2x140mm fans because the radiator is too large
  • ASRock Z390 Phantom Gaming-ITX/ac
    • NOTE 1: Shipped with UEFI v1.2. Tried updating to UEFI v1.3, but it broke things (seems like it broke USB ownership/handoff but I can't prove it -- in any case always froze during boot with v1.3). Reflashed to v1.2 and that works fine.
    • NOTE 2: Includes a pre-installed Intel m.2 wireless card in a little metal housing. On the previous Z370 I swapped it with a Mac-compatible one but broke one of the antenna connectors on the process. This time I didn't bother since it'll be on Ethernet anyway. I expect swapping in a compatible m.2 wireless card would work if you're sufficiently dextrous.
  • i9-9900K
  • 32 GB DDR4-2666
  • Sapphire Pulse RX 580
    • Works fine with 2 4K monitors both connected via DisplayPort, even with both rendering at 5120x2880. I get the boot display mirrored on both, and once macOS initializes the card it switches to a single desktop spanning both. Hot plug of one of them worked fine too; it came up as mirrored but I was able to switch to separate desktops.
  • Have tried with both AHCI and NVMe SSDs
  • Sony 4K TV (HDMI-only; connected via HDMI-to-DisplayPort adapter because there were issues booting to HDMI and using the adapter was easier than troubleshooting)
Not working:
  • The USB-C port is not working for me at this time. I haven't done much troubleshooting.
  • iTunes streaming videos -- it just never proceeds past 0:00. (Downloaded movies play fine, just not streaming.) I gather you can choose between H264/HEVC acceleration and iTunes streaming DRM, and for now I have the video acceleration but not the streaming.
Have not yet tried:
  • Thunderbolt 3 port
  • Sleep/Wake

Install Procedure:

I could not get the 10.14.2 install to work with a default UniBeast install drive -- I had to customize config.plist, kexts, and etc. to avoid reboots and hangs during installation and the first boot. So I've ended up with a boot drive that looks a lot like the installed system. But it works.
  1. Back up old data (with Time Machine, SuperDuper, whatever)
    1. Since I was doing a clean install and copying data over, I deauthorized iTunes and signed out of iCloud and iMessage from my old High Sierra install
  2. Create a USB drive with UniBeast 9 as described here. NOTE: if reusing an old USB install drive, make sure to clear off the EFI partition. If erasing in Disk Utility, make sure you erase the whole USB drive not just the existing partition. If using Disk Utility in Mojave on another machine, use View / Show All Devices in order to be able to do that.
    1. After the UniBeast drive is done, run RehabMan's Clover package (I used v4701), making sure to select the USB drive as the destination. Customize to install for UEFI booting only, and under UEFI drivers add EmuVariableUefi-64
    2. After upgrading Clover, your EFI partition should still be mounted; check whether HFSPlus.efi is in EFI/CLOVER/drivers64UEFI -- if not, get it and put it there.
    3. You can remove all the kexts from EFI/CLOVER/kexts/Other. Then put in these kexts (this will get current versions):
    4. Get Clover Configurator and the attached config.plist (should work with 8xxx or 9xxx CPUs). Open the config.plist with Clover Configurator.
      1. Go to the SMBIOS screen, and hit Generate New under the Serial Number and under the SMUUID.
      2. Hit the Check Coverage button to the right. Enter the CAPTCHA on the Web page that comes up and ensure that it says the serial number is invalid (NOTE: you WANT it to be invalid -- as in, not used by a real Mac! If it shows machine data go back to Clover Configurator and hit the Generate New buttons again and then Check Coverage again).
      3. If you know what your system drive will be named, go to the Boot screen and enter the name over Default Boot Volume
      4. Save the file
    5. Copy the config.plist customized above to EFI/CLOVER/config.plist on the USB drive
    6. If installing from a USB3 drive, copy aaron-usb-config.aml (download and unzip the attachment below) to EFI/CLOVER/ACPI/patched/ which will enable all the USB3 ports on the board. If installing from a USB2 drive it should work without that.
  3. Connect a monitor to the RX 580 (DisplayPort preferred) and boot to the install drive.
    • You can use F11 to select the USB device on every boot; Since there are a few reboots involved, I instead go into the BIOS and rearrange the boot list to put the USB on top and then save and exit.
    • Once booted, it takes a while to get to the initial install screen.
  4. If needed, run Disk Utility from there to clear off the target partition (or initialize the drive, if it's new).
  5. Proceed with the Mojave installer
  6. It rebooted at least twice for me.
    • It ran an initial progress bar until it said "2 minutes remaining" and then suddenly rebooted
    • On reboot, select to boot to the system drive from the Clover menu
    • It took a long time to come up to a GUI here, then showed a progress bar with no progress completed and "13 minutes remaining", then rebooted
    • Select to boot to the system drive again. This time after the long wait it came up to the progress bar ad immediately completed a small fraction ("12 minutes remaining") and then did the rest of the install.
    • It got to a 10-second countdown to reboot with a "reboot now" button, but there was no mouse pointer or anything so I just waited it out.
  7. At this point I could get into Mojave with working Ethernet by booting off the UniBeast drive. I tried doing the user migration during the first boot, and it froze while analyzing the backup content. So instead I rebooted, created a temporary ID for the post-install work, and used the Migration Assistant later.
Post-Install Configuration:
  1. Using the same Clover installer you used for the flash drive, install Clover to the system drive. Select the same options as before, but this time also check Install RC scripts on target volume.
    • It again leaves the EFI partition (on the system drive) mounted.
  2. Also mount the EFI partition from the flash drive. I identify the EFI partition from Terminal with "diskutil list" and mount it with "sudo diskutil mount /dev/diskNs1" where diskN is the identifier for the USB drive, as shown by "diskutil list". After that a second "EFI" shows up in the Finder sidebar. The one with the eject symbol and the same icon as "Install macOS Mojave" is the flash drive, the other is the system drive.
  3. Replace the config.plist that Clover generated on the system drive with the one from the flash drive.
  4. Copy the kexts IntelMausiEthernet, FakeSMC, Lilu, WhateverGreen, and USBInjectAll from the flash drive EFI/CLOVER/kexts/Other to the system drive EFI/CLOVER/kexts/Other
  5. Add the AppleALC kext to that directory on the system drive for audio support
  6. If you did the wireless swap, also add the AirportBrcmFixup kext to that directory on the system drive
  7. To get USB3 configured, see the USB addendum below (install the AML I provide or one of your design into EFI/CLOVER/ACPI/patched/ on the system drive)
  8. Eject the USB flash drive and Reboot
  9. You should boot into Mojave successfully, with audio working (and wireless as well, if you swapped the wireless board)
iMessage Configuration:
  1. This should be pretty much working already. I set the name of my machine under System Preferences / Sharing before activating anything.
  2. If you have any questions, follow the iMessage guide. It never hurts to run the iMessageDebugv2 provided in that guide, save the result, reboot, run it again, and compare to make sure all the values are the same.
  3. After confirming that the iMessageDebugv2 output does not change across reboots, sign into iCloud and iMessage.
After that, things seem to be working in Mojave. Yay! :)

Performance:
  • Saw the expected performance increases with Handbrake & Blender
  • A Handbrake transcode that normally pushes the limits of the CPU cooler didn't send it over 60C -- I was shocked at the effectiveness of the AIO liquid cooler
  • Without any overclocking, showing GeekBench 4 scores of 6441/37130 with OpenCL score of 130910... not quite as astronomical as pastrychef's delidded and overclocked build, but respectable nonetheless.
Addendum: USB Support

I did not get the port-limit patch working in 10.14.2.

This board has a total of 8 USB3 ports (which also count as 8 USB2 ports) plus 2 USB2-only case ports and a USB2-only port for the internal Bluetooth... for a total of 19, and that's not including anything for the USB-C connector.

That means if you use the internal USB3 connector on your case (but not the USB2 connector) as well as the on-board Bluetooth, there are 17 USB ports. Possibly more if you get USB-C working or if you also use the internal USB2 connector (e.g. for fan/LED/AIO controls). If you want to stay under the 15-port limit, you'll need to sacrifice some.

FWIW I omitted the onboard/case USB2 #2 (HS02), the USB2 features on the USB3 case ports (HS10-11), and Bluetooth (HS14). The attached aaron-usb-config.zip includes an AML uses this configuration. If you want a different USB configuration, the source DSL is in the ZIP as well, and you can customize and compile it to your own DSL using RehabMan's procedure.

View attachment 378132

HS01: Internal/Case USB2 #1
HS02: Internal/Case USB2 #2
HS03: Rear USB3 (left of HDMI)
HS04: Rear USB3 (left of DP)
HS05: Rear USB3 (right of HDMI)
HS06: Rear USB3 (right of DP)
HS07: ??? possibly USB2 device on USB-C?
HS08: Rear USB3 (right of Thunderbolt)
HS09: Rear USB3 (under Ethernet)
HS10: Internal/Case USB3 #1
HS11: Internal/Case USB3 #2
HS12-13: ???
HS14: Bluetooth
SS01: Rear USB3 (left of HDMI)
SS02: Rear USB3 (left of DisplayPort)
SS03: Rear USB3 (right of HDMI)
SS04: Rear USB3 (right of DisplayPort)
SS05: Rear USB3 (right of Thunderbolt)
SS06: Rear USB3 (under Ethernet)
SS07: Internal/Case USB3 #1
SS08: Internal/Case USB3 #2
SS09: ??? possibly USB3 device on USB-C?
SS10: ??? possibly USB3 device on USB-C?

Collected Images:
From VideoProc 3.2:
View attachment 378107
From GeekBench 4:
View attachment 378221View attachment 378220


Is sleep working for you? I have the same board and it is the only thing that is off rn. The display and peripherals sleep but the case fans and lighting stay on.
 
I haven't tried sleep.
Ight if I wanted to use your usb patch but wanted add back bluetooth it would just be a matter of adding HS14 and removing something else?
 
Can you check if sleep and wake works ok on yours? I have Asrock Z390 pro4, sleep doesn't work on mine :(
Wakes up after a second when USB from cooler is connected and without cooler USB connected wakes in less than a minute.
 
Can you check if sleep and wake works ok on yours? I have Asrock Z390 pro4, sleep doesn't work on mine :(
Wakes up after a second when USB from cooler is connected and without cooler USB connected wakes in less than a minute.
I had this issue on my Asrock z390 Phantom Gaming itx/ac. The fix was a custom DSDT.
 
I had this issue on my Asrock z390 Phantom Gaming itx/ac. The fix was a custom DSDT.
Do you have the custom DSDT? Can I try it on my build?
 
Weird i used a custom usb aml file but still have the issue where it doesn't "fully" sleep.
 
Status
Not open for further replies.
Back
Top