Contribute
Register

Z490 & Z590 - Will Z590 ever have macOS Support ?

Hello Guys, My Z590 Mainboard and my Core i7 11700KF arrived yesterday Finally and I could tried to install MacOS Finally. And it Works but I still have some problems with the Audio. I share my specs:

* Core i7 11700KF
* Asrock Z590M-Pro4
* DDR4 3000Mhz Kingston HyperX
* NVME MP600 2TB Gen 4
* Radeon RX 5500 XT 8GB
* FENVI FV-HB1200 (Wireless and Bluetooth)

What it Works:
=========

* LAN (i219-V)
* Wifi and Bluetooth
* Video (VDA Full Asceleration, iMacPro1,1 Smbios)
* USB Ports

What is not Working:
=============

* Audio (ALC897, id=66 or id=69 according AppleALC website)

I am using the latest AppleALC, Lilu, Whatevergreen and VirtualSMC kext. The AppleALC is supporting 500 Series chipset with 11th gen processor mix. But the audio appears, but no sound and the computer gets like a stuck.

I share my IOreg, do you have an idea how to fix this.
I could fix the audio, and right now, my Hackintosh 11gen Intel is totally complete!!!! I fix it with PCIIDDFake and PCIIDIntelHDMI, with spoofing device id and keeping the layout_id. Right now my final config will be.
* Core i7 11700KF
* Asrock Z590M-Pro4
* DDR4 3000Mhz Kingston HyperX
* NVME MP600 2TB Gen 4
* Radeon RX 5500 XT 8GB
* FENVI FV-HB1200 (Wireless and Bluetooth)

What it Works:
=========

* Processor with all Turbo States (4,7Ghz with all cores)
* LAN (i219-V)
* Wifi and Bluetooth
* Video (VDA Full Asceleration, iMacPro1,1 Smbios)
* All USB Ports
* Audio (ALC897)

So happy right now my Hackintosh with that specs is 100% working and with full performance. I am writing a guide to share how I did it, today or tomorrow I will post it.
 
I don't know because I haven't tried.
Ahh I see. That’s the deciding factor for me so I’m just holding tight until people are relatively sure one way or the other.
 
So no way to get Quicksync on an 11th gen CPU in macOS?
But you can config to calculate VDA to the dGPU with shiki, no need to config Quicksync or you can config iMacpro1,1 SMBIOS to have VDA full acceleration...
 
But you can config to calculate VDA to the dGPU with shiki, no need to config Quicksync or you can config iMacpro1,1 SMBIOS to have VDA full acceleration...
Maybe I’m really behind. What do you mean calculating VDA? And what does the iMacPro SMBIOS do differently?
 
I could fix the audio, and right now, my Hackintosh 11gen Intel is totally complete!!!! I fix it with PCIIDDFake and PCIIDIntelHDMI, with spoofing device id and keeping the layout_id. Right now my final config will be.
* Core i7 11700KF
* Asrock Z590M-Pro4
* DDR4 3000Mhz Kingston HyperX
* NVME MP600 2TB Gen 4
* Radeon RX 5500 XT 8GB
* FENVI FV-HB1200 (Wireless and Bluetooth)

What it Works:
=========

* Processor with all Turbo States (4,7Ghz with all cores)
* LAN (i219-V)
* Wifi and Bluetooth
* Video (VDA Full Asceleration, iMacPro1,1 Smbios)
* All USB Ports
* Audio (ALC897)

So happy right now my Hackintosh with that specs is 100% working and with full performance. I am writing a guide to share how I did it, today or tomorrow I will post it.
Thank you so much Raftrix86! I'm using the same mobo. Looking forward to your EFI file.
 
That I can confirm. I am already using it that way. I replaced the onboard WiFi 6 with a BCM94360NG. Works perfectly.
How hard was it to remove the heatsink from the Gigabyte motherboard to access the wifi card? Was it pretty straightforward or did you have to bend/damage(?) the heatsink to remove it from the motherboard?
 
Here a note of success with a z590

ASUS ROG Maximus XIII Hero — Asus AMI BIOS 1202
i9-10900K
Bequiet! Dark Rock 4 Pro
128GB DDR4 3600 (XPI) — G.Skill Ripjaws F4-3600C18D 64GBVK (x4)
OpenCore 0.7.5 (OC EFI attached)
SMBIOS 20,2
Monterey 12.1
NVME:

√ Western Digital BLACK SN750 2T NVMe
√ Samsung 980 PRO 2T NVMe *** Hard errors encountered, fix described below, SAMSUNG REPLACED ***
√ Samsung 980 PRO 2T NVMe *** Replacement works fine, but 12/21 firmware update causes boot delay ***
✖︎ Sabrent Rocket 4 2TB NVMe *** AVOID Sabrent drive, total failures ahead ***
AMD Radeon Pro W5700
Intel UHD 630 iGPU VDA decoder "fully supported"

— No UDH 630 accelerated graphics display support
Generic PCIe Broadcom Wifi AC
Generic PCIe SATA 8-ports
ASUS AI overclocked to 5.3 GHz single core, 5.1 GHz multi-core, RAM at 3600 and stable.

  • Intel i225V dual ethernet works
  • iServices work
  • Wifi / Airdrop work (I don't use Continuity / Handoff but I expect it works too). BT HID accessories smooth and responsive. The wifi card I chose maxes out at 300Mbs, contrary to claim of 867, but no big deal. Hopefuly the onboard Intel Wifi6 will work someday.
  • Onboard sound works out-of-box and it appears W5700 sound is detected. Not in a position to test beyond headphones connected to mainboard. See below...
  • Sleep broken, it wakes up immediately on first cycle, then sleeps on second cycle. Two presses to wake, one for board, second for display. USB type-C disappears with sleep. Went through Dortania steps and tried everything looking for clarity. Still trying to resolve.

IMG_2217.jpg


Benchmarks

Geekbench Summary.jpg
Cinebench Multi 10-min.jpg

AJA Disk Test 16G.jpg


dGPU — AMD Radeon Pro W5700
Geekbench Radeon W5700.jpg


iGPU — UHD 630:
Geekbench iGPU Metal.jpg



Geekbench5:
CPU: 1330 / 11300
eGPU Metal: 72300, OpenGL: 61800
iGPU: 5000, typical of UHD 630​
Cinebench R23:
15700 (10 mins)​

AJA Drive Test (Limited by i9-10900 PCIe 3.0):
Sabrent Rocket 4 on-board PCIe gen3 x4 2800 MB/s R/W (Until dead)
WD SN750 on-board PCIe gen3 x4 2800 MB/s R/W​
Samsung 980 Pro on-board PCIe gen3 x4 2700 MB/s R/W​
Samsung 970 EVO Plus NVMe in Sabrent type-C external: 980 MB/s R/W on rear type-C ports, and connected to W5700.​

Carbon Copy Cloner backup of this system installation from Rocket 4 to external USB 3 Gen 2 Sabrent EVO 970 (with all cores under heavy compute load):
254 GB in 7m 21s, 575 MB/s

WARNING — I have found the Sabrent Rocket 4 to be completely unreliable. It's an excellent performing drive, but only when it performs.

The unit I purchased for this build died without warning after one month.

The Sabrent-supplied replacement was unreliable within the first hours and irrecoverably dead within 3 days.

Search for more below.


WARNING-2 — I also ran into bad blocks with a new Samsung 980 PRO. Search for more below. Replacement works fine but a Samsung firmware update causes the dreaded Trim boot delay under Monterey.

* * *​

GETTING MACOS AND CREATING AN INSTALLER

Want an aresome way to build a bootable installer for Big Sur or Monterey for this kit? Here's how I do it...

Code:
cd <somewhere>
mkdir macOS; cd macOS
curl -O https://raw.githubusercontent.com/munki/macadmin-scripts/main/installinstallmacos.py
sudo python installinstallmacos.py

Choose the macOS release you want from the menu that the puthon script presents. Your choice will be downloaded and assembled into a DMG in this same directory.

Use Disk Utility to prepare a USB stick with a 16G or larger HFS+ volume to hold installer (named, say, XXX)

Mount the EFI partition on the USB stick (XXX) using the EFI mounter of your choice. (I use corpnewt's MountEFI.command but various tools can do this.)

Download the OC attached to this post and add the EFI folder to XXX/EFI

Mount the Installer dmg created in first steps, above. Let's say it's called ABC, but it's prolly really called something like "Install macOS Monterey". Inside it is the Apple installer, also called, say, "Install macOS Monterey".

Now build the bootable installer on the USB stick — If you have other partitions on the stick, these won't be touched. You'll want the EFI partition loaded with OpenCore, as just described. I also have a FAT partition I use to keep old mainboard firmware and settings, plus other misc helper files, just in case.

Code:
sudo /Volumes/ABC/Install\ macOS\ Monterey.app/Contents/Resources/createinstallmedia --volume /Volumes/XXX

When done, XXX will be renamed for the macOS version you chose.

Reboot and hold F7 (for this Asus Hero) and choose the USB stick, then choose the macOS Installer volume from the OC menu. From there you are on your way! Make your life a little easier by setting the USB stick as the BIOS default do you don't have to hover over the keyboard... Unless you like to hover. I do.

Thanks to to the good people over an MacRumors - "MacOS XYZ on Unsupported" threads for the python helper used to get a copy of macOS. Great stuff.

* * *​

Build Background: I'm coming at this from a cMP 3,1 running dosdude Catalina. This board/CPU pick is sort of awkward and lavish but the components were a gift, so I went all out. Felt lucky to get the Radeon W5700 as GPUs were very scarce end of March 2021.

A user wanting to save hundreds can pick more economical parts with similar performance, such as downgrade mainboard and go for i9-10850.

No Rocket Lake: I punted on 11th gen. due to uncertainties in early picture. I put this together a month before Rocket Lake was out. I can drop in 11th gen if it seems compelling. It looks like i9-11900K SSD read speed can be doubled thanks to PCI4, and single-core performance can gain almost 30% on Geekbench while holding steady on multicore with two-less cores. And TB4 support, or will that work based on board?

* * *
Radeon W5700 Pro: Ready to roll in macOS. Works from BIOS up through full install.

Note the 30-bit framebuffer and the W5700's recognized Thunderbolt port. This GPU has 5 mini-DP and a TB3 (type-C) port.

The W5700 Type-C port works fine with USB at 10Gb/s.

MacOS-gfx-report-i9-x590-W5700.jpg


Regarding iGPU (Intel UHD 630) graphics: This build is almost identical to a iMac 20,2 and the SMBIOS is a good match, but this has an implication on iGPU:
  • SMBIOS iMac 20,2 means that iGPU VDA decider acceleration comes up readily with DeviceProperties AAPL,ig-platform-id 07009B3E and W5700 works out-of-box. The CPU device-id of 9BC5 is already supported. A boot arg of agdpmod=pikera gives Whatevergreen a heads-up on the Navi W5700 but maybe this isn't even needed. But...
  • ...macOS won't run displays from iGPU ports. It doesn't matter if you choose platform-id with framebuffer or headless, the iGPU is for internal use only.
    UPDATE I have seen unaccelerated iGPU output, which could be used for system build / debug.
    To make it work, use
  • After reviewing a lot of lore and doing many tests, it seems the only way to get Intel UHD 630 to drive a display is to choose another SMBIOS. The W5700 has a ton of connectivity, so no big deal.
  • By booting Ubuntu and installing Linux OEM kernel, I found that iGPU works fine over HDMI and type-C DP with various adapters. (Note: Installing Linux OEM kernel depends on running latest Ubuntu desktop LTS version.)
  • Type-C port on W5700 both drives display and supports USB 3.2 Gen 2 (10Gb/s). Using the W5700 type-C port with a HDMI adapter to a DVI display did not work properly — sync problem.
  • DRM seems to be working.
WHY SHOULD WE CARE ABOUT A WEAK HEADLESS iGPU? The Intel UHD 630 is a very weak general-purpose GPU by standards this day. The Radeon W5700 Pro benchmarks at 11–13x the compute-power of the Intel UHD 630. However, the UHD 630 is carefully optimized for some common AV decode tasks pertaining to teleconferencing, multimedia streaming, and misc productivity tools via Apple VDA support—specifically h264/h265 A/V decode. For such tasks it allows very effective offload of the CPU, and can be much more efficient that a dGPU. In my opinion, VDA mostly important for macOS on mobile to control power consumption and make best use of weaker CPUs. But it's an effective resource for some common A/V tasks on any build. Also (don't hold me to this) I think Apple VDA subsystem may offer access to DRM content that might otherwise not be supported by macOS on a build with a foreign dGPU. For a powerful desktop it's a mixed bag, and maybe just a matter of completeness. But it's been a standard part of macOS since about 2011 and supported by popular programs. Laptops strongly benefit from VDA.

MacOS-gfx-report-i9-x590-UHD630.jpg


Making the iGPU output to display

I've searched and experiemented but found no way to enable full display out from the built-in Intel UHD 630 on this build.

However, the Intel UDH 630 will produce a basic output (single resolution, no acceleration, mirrored) which can be useful for building and debugging.

REMOVE boot-arg agdpmod=pikera from NVRAM section of config.plist to prevent the switchover to the W5700 dGPU and include the following DeviceProperties details:

iGPU-display-crippled-config.jpg


* * *​

NVMe SSD: REPLACED WITH WD SN750 AND SAMSUNG 980 PRO

The WD is the best drive for this kit.

I chose a Sabrent Rocket 4 2TB NVMe drive for my build, based on glowing reviews about performance, and PCIe 4.0 support, which turned out to be moot as I am not going to Rocket Lake 11th gen.

IMG_2261.jpg


This SSD worked beautifully as I put my build together and performance was completely up to claims. Very pleased. That rectangular thing at the upper-right is a Sabrent type-C NVMe enclosure. It works great too!

Then it all went to hell.

After 3 weeks into my build, the worst happened: within one day performance went from stellar to glitchingly unreliable, then the drive spontaneously died, taking all my data with it.

After a protracted dialog with Sabrent support, I received a replacement drive. It was unreliable from the start, and lasted 3 days before completely dying.

If you want a quick take, read this article:

Here’s why you should NOT buy a Sabrent Rocket SSD | Ryadel

My experience is similar, except I had a somewhat better engagement with Sabrent support. BTW, I don't think Sabrent is out to take advantage of anyone, they are above-board and offer some nice products, but it appears their NVMe devices have edge cases of failure that they do not understand, and are not able to address. The biggest problem I faced with their support in a complete inability to think outside the space of Microsoft Windows. The Sabrent Rocket Control panel will report a completely failed drive ("DISK") as at "100% health" and just not work properly. It's an incredibly lazy bit of software that shows zero respect for the chore of reliably storing data.

The Sabrent type-C external enclosure works great with EVO! This enclosure deserves a nod because it's well designed:

IMG_2333.jpg

  • Toolless case snaps together.
  • Insert drive into slot and secure with the rubber stopper, which slides into the keyhole. Just stretch it back to lay drive down to keep it in place.
  • Bottom of tray is thermally conductive to case base.
  • Top of case has a thermal pad.
  • A tiny blue led next to the type-C port shows power and I/O activity.
  • Small size with 1 GB/s I/O is a storage marvel!
This case really works, both mechanically and thermally. The Sabrent Rocket 4 when failed goes into an high-power condition producing so much heat you could get a mild burn from the enclosure. It can get really hot. In normal operation, the case warms slightly.

Before drilling into by build details, I suggest every reader consider that NVMe drive technology has a power envelope that's very different from external SATA drives, and thermals are a special concern for these drives because of very high performance. The same amount of drive power as is typical for the 3.5 in HDD form-factor is directed by a device literally 1/50th the size of a HDD, while the thermal accommodations for these devices is of necessity an afterthought to a board form-factor that is decades old.

This said, I will simplify what was for me a very challenging and confusing diagnostic situation down to some key points.

These next observations are going to sound like I've figured everything out, but the fact is I struggled for weeks with strange performance effects and I don't really know what's going wrong. And neither does Sabrent support.

Rocket 4 Key points:
  1. The Rocket 4 suffers from a thermal edge case in this build. I have used two new Rocket 4s in this build and they are both completely dead and lost all my data.
  2. A Samsung EVO 970 Plus has resulted in no obvious performance problems. I am using it right now in this build to type these notes
Rocket 4 Traits:

When it's working the Rocket 4 is a very fast performer. It makes everything about the system feel like lightening, and benchmark dials be they AJA System Test or Carbon Copy Cloner, or GNU ddrescue, go to the expected max given PCIe or USB bus limits. It's great! Too bad it dies.

The Sabrent Rocket 4 appears to not have a thermal limiter: It's maximum operating temperature is listed as 70 C, but I recorded temperatures of over 86 C during heavy drive load, at which it ultimate crashes taking the system with it.

Something that took me a while to really grasp was that my sense of a hot device and actual device temperature do not fit together. When I touch a consumer electronic device and it's so hot my fingers get burned that screams BAD to me. But the fact is that these devices normal operating temps are painfully hot by human standards. 60 C well within normal operating temperature but hot enough to burn skin.

For instance, when the drive is put to heavy use in a Sabrent aluminum type-C enclosure, it can get warm enough to be uncomfortable to touch. When mounted in the Asus, the heat-sink plate can get so hot you can't keep a finger on it.

After the 2nd drive had failed and become unrecognizable to the system, when I re-attached it via the Sabrent external enclosurey the case got so hot I couldn't hold it!

During trouble-shooting I got alarmed that it might catch on fire, but the fact of the matter seems to be that the device just it gets surprisingly hot.

For anyone doing a build, I suggest a temperature monitoring tool as essential to working with NVMe drives. And I don't think you can trust the drive vendors to have thought through all the edge cases.

macOS Spotlight: A Surprisingly Heavy Drive Workload?
  • macOS Spotlight indexing can overload the Sabrent Rocket 4. If you are user with lots of files, especially large files such as media, or virtual machine drives, Spotlight can send the Rocket into thermal acme.
  • It is also possible to overload the Rocket 4 with a simple read stress test made from Posix find(1) and dd(1), e.g.,
    find / -size +1m -print -exec dd if={} of=/dev/null \;
    Warm up the Rocket 4 with reads as just described, then let Spotlight loose and it will prolly blow.
  • On iFixit, there's a whole thread devoted to users whose Macbooks get super hot after replacing a spinner with an SSD.
ATX Board NVMe slot topology:
  1. For a 10th generation CPU, the Asus z590 Hero VIII board places a primary NVMe splot (M.2_2) right under the GPU, which restricts airflow because the GPU almost rests on the heatsink. In z590, slot M.2_1 has better airflow, but is reserved for PCIe 4.0 which requires 11th gen CPU. Slot M.2_4 claims SATA ports 5 and 6, which my final build will require. This leaves M.2_3 as the optimal slot.
    ** Note there's an ambiguity in the Asus documentation about whether slot M.2_2 supports a 2280 form-factor M.2 device.
  2. The Asus M.2_2 slot heat-sink includes a decorative cap for the z590 controller with a pretty glowing ROG insignia lit by Aura RGB. The z590 controller runs extremely hot. For reasons that only Asus can speak about, and the cap traps its heat in the same area as the NVMe device. The sage builder will note that the placement of Aura RGB seems to cry out into the night those the points to expect thermal stress on this board: next to the CPU power FETS and the primary board controller.
  3. The Asus supplied heat-sinks for any M.2 slot may be insufficient to dissipate the Rocket 4's heat, even with a fan dedicated to the heat-sink.
Please consider the following information regarding M.2 form-factor: Understanding M.2, the interface that will speed up your next SSD | Ars-technica

Also note the Asus documentation for the NVMe slots in the z590 Hero VIII:

Asus ROG z590 Maximus VIII Hero - User's Guide pg. viii - M.2 Slot Summary.jpg


This next section of the guide seems to contradict the statement above regarding form-factor support of the M.2_2 slot. The language above indicates support for 2280. The language in the following section indicates only 2260:

Asus ROG z590 Maximus VIII Hero - User's Guide pg. 2-6 - M.2 Installation.jpg


In the above diagram, the CPU is at upper right. The board I/O panel is at upper left. Power and SATA ports are at lower right.
  • Slot M.2_1 is the big heat-sink at the top, which is nearest the CPU. It is 11th gen PCI 4.0 only.
  • Slot M.2_2 is under the larger ribbed plate (heat-sink) below M.2_1.. The diagonal blank area to the right is a decorative cover for the memory controller with a bunch of Aura LEDs beneath it.
    In a system with a double-width GPU, half the M.2_2 heat-sink is covered by the GPU. The decorative cap is plastic which is fused to the M.2_2 heat-sink plate. Because of the way the plates are painted, you might lament that the heat-sinks are also plastic like the decorative cap. The plates are aluminum.
  • Slots M.2_3 and M.2_4 live end-to-end under the ribbed plate to the bottom-left. When populated, M.2_4 disables SATA ports 5 & 6.
While the board makes accommodations for NVMe thermals, heat dissipation was insufficient for the Sabrent Rocket 4 under heavy load. I found Rocket 4 dissipation to be better when the drive is left to open air with a fan; the device is flipped up for installation or removal. This is too insecure for normal use. The Rocket 4 when over 85C aat one point in my testing.

OTOH I experience no thermal problems with Samsung and Western Digital NVMe, temps peak in low 50s C.

The Asus documentation has contrafictory specs for slow M.2_2. According to the User Guide (see images above), slot M.2_2 is limited to 2260.

According to a separate Asus document titled z590 Maximus Hero VIII One Page Specsheet, the M.2_2 slot is intended for 2280 devices:

Asus ROG z590 Maximus VIII Hero - One Page Specs - Storage.jpg

I can say for sure that the 2280 card length is supported by the M.2_2 slot. But maybe Asus had second-thoughts about thermals...?

IF YOU ARE INTERESTED IN MORE DETAILS ON MY PAIR OF ROCKET 4 FAILURES, I DISCUSS THESE IN A SEPARATE POST:
The Story of the Downfall of a Replacement Sabrent Rocket 4 and Switching to a Western Digital SN750
— tl;dr Sabrents die.

WD SN750 and Samsung EVO 970 Plus work fine in this build, with expected performance and well-behaved thermals. No problems at all.

Samsung 980 PRO hard errors. I applied the refund from the Sabrent Rocket 4 to obtain a Samsung 980 PRO. The 980 PRO seemed to work well for a more than a month, then I ran into trouble using Carbon Copy Cloner with the Apple APFS Replicator utility (known inside CCC as the "Legacy Bootable Backup Assistant").

APFS Replicator can make bootable OS clones of Big Sur 11.5.x with its signed system volume, under the constraint that the target must be erased and the source fully copied. One big downside of APFS Replicator will fail with no explanation if there are read errors on the source drive.

In order to determine if drive errors were causing the failure, I used GNU ddrescue to clone the whole drive to the bit-bucket.

Ddrescue can be installed on macOS with Homebrew or Macports, but macOS no longer lets you read from the boot drive device special file, even as root. So I booted into Linux and ran GNU ddrescue as follows:

# ddrescue --force /dev/nvme0... /dev/null map

Where:
  • /dev/nvme0... is the full path name of the device special file for the specific drive.
    You can use fdisk -l or Gparted to look this up
  • /dev/null is the bit-bucket device (just throws the copy away) because I just want a read test.
  • "map" is the name of a map file to hold the results of the device copy. This supports restarting a failed copy, and can be inspected to find unreadable areas of the drive. If map exists, ddrescue will use its contents to pick up the copy from where it left off, due to being interrupted or errors.
WARNING — When using ddrescue to make an actual clone, you need to take measures to keep both the source and the target drives from being written at any time during the clone or target corruption may occur.

During my whole-drive read test, ddrescue encountered 30 read errors in 4 areas on the new 980 PRO.

From here I was faced with determining what files were affected. By returning to macOS and using normal CCC data partition clone (uses CCC's internal file copier), CCC produced a list of one user data file affected by the bad blocks. I found and repaired this damaged file by hand then re-ran APFS Replicator to a spare drive and this completed successfully, giving me a full bootable backup of the problematic 980 PRO. If system files had also been affected I had no easy way to determine this. But I had a previously made-full system clone at hand, which was reliable.

To further investigate the 980, I booted into Windows and ran Samsung Magician (I had previously spent a day building a dual-boot Linux / Windows 10 SATA drive for my Rocket 4 debacle, so I had this handy). Samsung's Magician's SMART report indicated no errors, which is complete b******t because I clearly was getting device errors, and mosdef lost data. I couldn't run Magician's error test because it requires NTFS! So I decided to do a Secure Erase of the drive with Magician, hoping to get the bad-blocks remapped. This lead to more problems, as Secure Erase requires booting an external drive made by Magician, and I could never get it to boot on this z590 / i9-10900. My impression is that Samsung Magician is deeply flawed program, but unlike Sabrent Rocket Control Panel, there is some evidence of Samsung tryng to make something useful. (Sabrent's Rocket Control Panel, at the time of this writing, is a joke of a program).

The one Magician feature that worked was a firmware update... So I put the latest Firmware on the device, then rebooted into Linux. I used Gparted to wipe the whole 980 as GPT, make a whole-drive ext4 partition, then issued a fstrim(1) command to hit the whole drive with TRIM commands. This generated a fair amount of I/Os (board's drive LED) which lasted for about 30 seconds. From here I re-cloned my back to the 980 PRO and this went fine, booted macOS and updated to latest update, which also went fine, then returned to Linux to re-run ddrescue full-drive read test and this passed with no problems. Average read rate was 2800 MB/s which is appropriate for m.2 PCI3.

Along the way, I tried submitting an RMA request to Samsung, but their support site is useless. After running the gauntlet to get to a place where I could submit a trouble ticket, the form accepted my report, then barfed with an "Unexpected error" and threw my entire report away, so I gave up. It's dumbfounding to me that storage companies do not care at all for my data! The last thing on Sabrent support's mind was that their product had twice thrown away all the work I'd placed on it. Their main concern was, quite literally, paperwork!

I've been using the repaired drive for a couple weeks and it's working fine, thermals are fine, and hopefully my drive tribulations are behind me.

* * *​
BIOS Updates & Overclocking

The first Rocket 4 collapsed while I was in the middle of system tuning and upgrading the board BIOS from beta 0704 to full release 0707.

At around the same time, I was playing with RAM timings to see if I could eke out slightly higher Geekbench and Cinebench R23 numbers. I wasn't interested in drive performance at all and was not testing it.

While I was waiting for a replacement for the Rocket 4, I started looking into updating to macOS Big Sur 11.3.1. I decided I would do a clean Big Sur installation on the new Rocket when it came and migrate my files over from the EVO. While I was working on the installer, I ran into a problem with no being able to mount the dmg. It was reported as damaged. As I looked more into the causes, one user mentioned that overclocked RAM was a culprit. I was not having any other symptoms of program instability, and memtest86 showed green. But not knowing what else to try I went to BIOS and relaxed RAM timing by 200 MHz, and this fixed the problem with the installer dmg! I guess the entropy in compressed disk image is a fine place to obtain a data pattern that throws RAM over the top.

Here I realized the incredible significance of ECC RAM for system stability and why Apple Pro moniker tends to be build from Xeon.

And my next thought was: What might RAM glitches do to PCIe hard drive DMA? I went googling for some discussion about this and came up empty.

A Total Aside:

Strangely, the storage vendors don't talk much about thermals, over-locking or RAM stability. It the silence deadly?

Sabrent just wanted to know my CPU/board combo, and if my power-supply was up to snuff.

The only thing I can come up with is that this tech is targeted almost entirely at gamers, and they simply don't care. In fact, everybody in the industry is happy when gamer systems croak as the gamer will just re-buy a new generation of gear and games.

For a Mac build, I feel renewed appreciation for what I good job Apple seems to do balancing system factors to create reliable builds.

NVMe Conclusion:

The Rocket 4 is outta here!

EVO 970 Pus works fine, but the one I have isn't big enough.

WD BLACK SN750 just works great, fast and stable.

980 PRO had bad blocks but resetting the drive as explained above fixed. For PCI3, 980 PRO offers no visible performance gain over WD BLACK SN750.

I'm running Comet Lake so no PCI4, but if I wanted to upgrade to Rocket Lake, everything's ready.

* * *​

Thunderbolt: I added @CaseSJ HackinDROM patch for Thunderbolt, but I have no way to test. System Info shows no TB HW since I got USB ports mapped as I like. This may be normal because TB sleeps unless a device is connected. CalDigit offers a Thunderbolt 4 Element hub, which would be perfect device to test, if I could get one.

% system_profiler SPPCIDataType
PCI: Intel JHL8540 Maple Ridge Thunderbolt 3 NHI: Name: Maple Ridge Thunderbolt Controller Type: Thunderbolt-Controller Driver Installed: No MSI: No Bus: PCI Slot: Thunderbolt Vendor ID: 0x8086 Device ID: 0x1137 Subsystem Vendor ID: 0x8086 Subsystem ID: 0x0000 Revision ID: 0x0000 Link Width: x4 Link Speed: 2.5 GT/s Intel JHL8540 Maple Ridge USB 3.1: Name: XHC3 Type: USB eXtensible Host-Controller Driver Installed: Yes MSI: Yes Bus: PCI Slot: Thunderbolt Vendor ID: 0x8086 Device ID: 0x1138 Revision ID: 0x0000 Link Width: x4 Link Speed: 2.5 GT/s


* * *​

Audio: This board's spec lists a RealTek ALC 4082. According to the this article, the 4082 is an updated ALC 1220: Adding layout-id 11 (0xB) appears to work properly. See "Realtek ALC4080 on the new Intel boards demystified | Igorslab"

* * *​

USB: Some USB ports must be disabled to get the config under the 15-port per controller limit so remaining run as USB 3. I found corpnewt's USBmap is great for getting USB assignments as I like. It's a python script which automates creation of a plist kext with desired port assignments.

The attached EFI includes a "config-no-usbmap.plist" which disables any USBmap.kext, which is my custom-tailored USB map for this build. From there you can download and use USBmap.command to play with assignments. See the attached sample USBmap.command output to get an idea of how it works: just regard which ports are enabled and connector types and disregard my specific accessories listed. Those are what I used for testing. When USBmap script output looks like something you want, tell it to emit a USBmap.kext and copy it to your EFI, then switch to config-usbmap.plist to activate. A couple of go-arounds and you'll get the config you want.

The included config.plist and USBMap.kext set the rear-I/O ports shown in the attached diagram to run as USB 3.0 SS. Type-C ports run at 10Gb. The board headers for front-panel appear to be on a hub, so shouldn't count against 15 ports per controller, but I haven't tested these yet. This config just covers the back I/O panel. audio, and the BT controller which is connected to a board header.

The ASUS documented ordering of USB port numbers on the rear-panel corresponds to order of appearance in the IO tree and therefore USBmap — with certain gaps and insertions per onboard devices. The USB controller for the rear panel has too many devices for macOS 15 limit, so you will have to choose a few ports to leave out no matter what.

NOTE: ASUS BIOS does not see old 2008 Apple USB keyboard, but it does see a PC keyboard connected to old USB keyboard's hub. BIOS version 1010 recognizes 2008 Apple USB keyboard.

Quick review of this board's USB per attached sample USBmap output:
  • If running without any USBmap.kext, all rear-I/O type-A will run as USB 2.0 because they are enumerate first and claim all the 15 ports under the macOS limit, and the type-C ports will not work at all because their connector type is not set properly by default.
  • Looks like 3 controllers top to bottom... USB Gen2 2x2 front-panel connector, board built-in devices and headers, and type-C ports.
  • Rear-panel I/O: I've enabled 4 ports including 3.0 SS, and 1 odd 2.0 port is enabled for Apple wired keyboard with built-in hub. See diagram.
  • I left some space between active ports to avoid RF possible interference across attached devices.
  • Rear-I/O type-C ports run as USB3.2 Gen 2, 10 Gb.
  • Internal ports must be reserved for USB audio, for on-board ASM107x hubs, and header port for add-on macOS-compatible Bluetooth in PCIe-slot Broadcom Wifi card.
  • ASUS internal Aura LED controller disabled to free up another rear port under 15 limit.
  • On this config, Big Sur 11.2.3 doesn't crash when XhciPortLimit > false.
To repeat: When setting up the config, USBInjectAll.kext is not required at all, including for building USBmap.

So to rundown USB config:
  1. Disable USBmap.kext to get as many ports as possible revealed,
  2. run USBmap.command to whittle down the active ports as you please,
  3. output result USBmap.kext,
  4. copy it to OC/kernel and enable the kext in config.plist, and
  5. reboot to test.
Note: Since enabling type-C rear-I/O ports with USBmap, the Thunderbolt controller no longer appears in System Info.

My choices for USBmap rear-I/O port assignments:

ASUS-ROG-Maximus-VIII-Hero-z590-i9-10900K-macOS-USB-Ports.png


Sample USBmap output. Here's an sample of the USMmap.command output.
  • You job is to find the right ports to enable/disable while keeping to macOS 15 port root controller limit.
  • You have to figure out which ports go with which items in the list. By reviewing the board documentation and hot-plugging a device with a recognized ID string, USBmap's listing will help you associate physical ports with list entries. The mainboard documentation tends to count ports the same way as the logical devices appear in the list.
  • A given physical port may have two logical devices listed: one each for USB2 and for USB3. Each enabled logical device takes up 1 of the 15 port limit for the macOS USB root tree. Ports hanging off hubs (internal or external) do not count against the 15 port root controller limit.
  • Note the "type" column which is required to patch the proper physical connector type. You have to set this properly via USBmap:
    255 - connectorless internal, or board header
    3 - Type-A connector
    9 - Type-C connector
  • On this board, one of the type-A ports next to the "BIOS FLASHBACK" button is USB2 only. As the 15 port limit is an odd number, I chose it as an odd-man out for USB2 for a Apple keyboard with built-in 2-port hub. the 7 other enabled root ports are provisioned for both USB2 and USB3.
  • An internal hub ASPM107x on XHCI@14 also counts for 2 devices USB2 and USB3 via header (I believe but I may be wrong)
  • The board's audio-controller counts against the controller total even though it's purely internal.
  • The board header needed by the add-on Bluetooth controller for the Generic Wi-fi PCIe card is also provisioned.
  • I disabled Aura LED port and left two root devices free on XHCI@14 controller as a hedge for putting the case together, because I'm not sure I figured out the whole map.
  • The type-C ports are on another controller (note end of list).
I have not been able to test Thunderbolt support, so this write-up regards the Type-C ports and USB3 Gen2, and they in fact work as such, delivering the full 10G/s to Sabrent external NVMe enclosure..

ASUS ROG Maximus VIII Hero z590 i9-10900K macOS USBMap output.png


* * *​

Networking Ethernet

Both Intel i225-V working in auto mode with Dortania Guide recommended kernel patch. Skip FakePCIID kexts unless absolutely needed.

Speed test over CenturyLink gigabit internet service is > 850Mb/s, so the ports are working as expected.

While Ethernet runs at full throughput, I suspect that driver overhead is higher than it should be compared to a genuine Mac. File sharing (I/O over ethernet) seems slightly slower than expected. This needs investigation. Far from show-stopping, but noticable.
Update 5/9/21: A post at Eclectic Light Co. mentions a macOS Big Sur bug with SMB excess ack packet spew, so this may explain why my file-sharing performance is stumbling (See the article comment by Oliver).

Networking Wireless

I disabled on-board Intel wireless as it's not supported by macOS and I wanted it to just work without a bunch of fiddling with add-ons and patches.

I got a generic hackintosh compatible BCM PCIe Wifi/BT adapter and it's working well, but max throughtput is limited to 300 Mb/s to an AC access-point a few feet away. I use a hardline, so no big deal. Airdrop integrates properly with Apple ID, etc. Amazon: XIUTAO PC Hackintosh WiFi Card BCM94360CS2 (when I ordered, it was $60. Now that I've got it, they list but-it-again it at $30, omg):

XIUTAO PC Hackintosh WiFi.jpg


* * *​

PCIe SATA: I've got a bunch of spinners, so I got a 8-port PCIe SATA card to add-on to the 6 ports on the mainboard. This card is macOS plus-and-play. It doesn't support macOS boot... Well maybe it can support boot with some OpenCore fiddling, but IDK and I'm not going to look into it. — Search Amazon for Rivo PCIe SATA Card 8 Port, with 8 SATA Cables:

Rivo PCIe SATA Card 8 Port, with 8 SATA Cables.jpg

* * *​

Post-Install:
  • Enabled Kernel > Quirks > DisableRtcChecksum per Dortania post-install. This works to keep BIOS from from safe POST which speeds up reboots.
  • Added ControlMsrE2.efi to OC/Tools. Enable this tool in config.plist to test your board's MSR E2 register writability per Dortania post-install CFG Lock. This board has writable MSR E2 with no adjustment.
  • Occasional panic during startup that goes away at next boot. Not realated to overclocking.
  • Added CPU power-management post-config via CPUFriend, but no discernable effect on system.
* * *​

Overclocking: Strong performamce beating some of Apple's best, good coolling and quiet.
  • 5.1 GHz multi-core, constant full-load no power or thermal throttling, Vcore 1.35–1.42, package temp mid mid 90s C.
  • Use Asus AI training. Works well.
  • RAM running per XPII at 3600 perectly stable.
    Set RAM XMP or XMPII, this is critical for stability.
    RAM to 3800 becomes glitchy, such as the system operates but certain tasks crash.
    Also these new boards do RAM timing training, so if you want to push RAM a bit farther, let it crash a couple times and the board may figure out how to re-time to create stability.
  • BIOS overclocking tweaks have reduced extended full load temp at 4.9GHz all-cores to high-70s C, with Darkrock 4 running at 70% duty cycle. Pushing for that 0.1 GHz sends temps into 80s. Pushing to 5.2 blows the lid on multicore with package going over 100 at full fan duty. Eventually it will tip over and crash. Caveat: I don't really understand the BIOS options for power — these are super-complex and little guidance from ASUS. The clearest write-up I've found is following: Maximus 12 series and i9 10900k overclocking guide and tech sheet | ASUSROG.
  • I played with the BIOS QFan config and the CPU cooler is quiet and moving heat well. After fiddling a lot with QFan settings, just using Asus AI cooling options is just as effective and makes it simpler. However, as it trains fan speed ramps up and down making it more noticeable. If you want a super quiet build, hand-tuning fans in BIOS is the way to go.
  • However, the Radeon W5700 Pro fan spins up whenever it's given a load, even when temp is low, then it settles down after a minute or so. It's like it's saying I'm so ready to ready to cool, then shrugs ...Nvm, not needed. I hate the sound of fans ramping up and down.
  • This Dark Rock cooler is pleasingly quiet under full load even when pushing 50 cf/m. Peak 250W thermal listed in iSTAT menus and no throttling. Completely stable under extended load. Good cooler.
  • Corsair RM650x power-supply is always cool under load. Fan usually off and dead-silent even when its fan is running.
NOTE: Pay attention to cooler / fan tuning as thermal control is important for OC stability. Mainboard air-flow is key to overall thermal balance. The CPU will throttle to protect itself. What we want is sufficient heat exchange to run CPU without throttling while keeping quiet but not cooking RAM. The trade-off is quietness and thermal control. The Dark Rock 4 is very quiet at full load. But to achieve complete silence, it needs to run at a low duty-cycle. Think of it like this: heat can only move so fast from the die into the spreader, and hot FETs surround the socket, with RAM nearby:

IMG_2252.gif

In image above, note the power FET heatsinks at right heading around back as part of rear-I/O panel. RAM is below fan at left. GPU is another hot wall on far side.

Running the CPU fans super low 200 RPM is great as they're silent. But this causes idle temperature around 55 C which may lead to over-temp RAM when the system is put under full load. This CPU cooler can move a lot of air and heat, but RAM location is vulnerable. The cooler is sucking heat from the CPU package, but not so from the board. There hot walls all around the CPU socket with RAM forming one side of a heat well. There's less than 2 mm of clearance between the RAM modules! So letting it idle hot, then running up the system power and see those FETs heat up, GPU heats up, and RAM heats up around that socket which is already hot.

Running CPU fans higher causes enough surrounding airflow to keep die / package controlled, but RAM may still go over the top. Therefore, case air-flow is key to the total system balance as it moves heat from the socket well and RAM. For testing I've placed a case fan next to the RAM and tied it's speed to the CPU temp. Works well.

Which brings me to...

* * *​

The Case (TBD):

I will put all these parts into a Fractal Design Meshify 2 case with a ton of spinners. This case is a beauty, but huge. Makes me appreciate Apple design all the more, especially cMP.
  • This case is convertable from liquid AIO — or long-GPU — layout to a storage layout. I'm using the storage layout shown below. That black panel is relocated to switch layouts. Here it's in position for storage with drive trays behind it. Without drive trays, the panel can be placed into the depth of the case, opening up the mainboard area for a liquid cooler light-show and/or super-long PCIe cards.
  • The case comes with the lower HD cage and 6 drive trays.
  • There's room for a second HD cage at bottom (13 3.5 in bays).
  • One more 3.5 drive can be mounted at top using a supplied bracket.
  • A pair of 2.5 in SSD brackets are available behind the mainboard.
  • Two fans up front push air across storage into mainboard area. Rear fan pulls air from CPU. I'm adding another fan at top above CPU radiator for good measure. The ASUS Q-fan BIOS gives good control of fan headers to allow the system to be thermally balanced.
  • Room for a long power-supply.
  • Grommits and velcro cable support.
  • Slots at rear allow a PCIe riser and alternate GPU mounting for heavy cards.
  • Dust filters and cosmetics cover front, back, top, bottom. Tinted glass side panel (not shown).
  • Power and USB3 Gen 2x2 at top-front (not shown — note cabling along the case edge in lower-image).
The beauty of this case is in its functionality.

IMG_2219-(mainboard).jpgIMG_2219-(storage).jpg

* * *​

BUILD SUMMARY

This rig is completely meeting my expectations, I'm very happy with all aspects of performance.
  • SMBIOS 20,2 means Big Sur supported eGPU is required.
    iGPU will not drive displays.
    VDA / Quicksync yes.
  • Overclocking is easy with ASUS BIOS and meets Intel claims.
    OC enables system performance to eclipse i9 Mac, plus room for a 2nd GPU.
  • Compute, big RAM puts it in league with 2019 Mac Pro with performance on par with 12 core.
  • M1 trounces it for single-core haha! But this will keep you warm in winter!
  • Ready for Rocket Lake if this seems compelling.
  • Workable USB layout.
  • Sleep is a bug-a-boo but why power this thing down? To let salmon fry back upstream after removing hydroelectric dams?!
  • Thunderbolt not yet proven but shown to work by others.
  • W5700 Pro type-C works for display and storage.
  • W5700 Pro fan disrupts an otherwise very-quiet build.
The attached EFI is close to what I believe is minimum. When reading lore, I often came across config recommendations from a year or so ago which seem relevant to iGPU and other config, but have since been obviated by updated OC components. EFI I've provided is relatively clean and a decent baseline for anyone just getting started with this board. That said, the DeviceProperties iGPU connector config is certainly wrong.
  • Don't forget to bring your own serial numbers to party.
I had a challenging experience getting to know OpenCore and at one point lost my working config and took me a whole day to recover. Keep copies of working config. The Dortania guide deserves very careful attention across every chapter and section. You may have to develop some working habits to avoid overlooking important details or going backwards. Pretty much every single item discussed in Dortania is relevant. It an amazing guide. It also says things like "If you don't patch you own ACPI, how will you ever know". Well. the flip-side is there is just too much to know it all. So find enjoyment in the exploration and do not expect anything to given beyond immediate offering. Any config change is significant. As rule of thumb, when stuck, consider removing config! And keep working copies around to fall back on.

* * *​

THANKS!

Thanks to the great write-up at Dortania github and the wealth of experience on these forums

This was a very fun / challenging build for an OC newbie.

Thank you community!
 

Attachments

  • EFI - OC 0.7.5 - ASUS ROG Maximus VIII Hero z590 i9-10900K - 11.5 thru 12.0.1.zip
    10.6 MB · Views: 124
Last edited:
Here a note of success with a Z590

ASUS ROG Maximus XIII Hero
- OpenCore 0.6.8
- Big Sur 11.2.3
i9-10900K, Be quiet Dark Rock 4
128GB XPI DDR4 3600
Sabrent Rocket 4 NVMe 2TB in slot M2_2
AMD Radeon Pro W5700
Generic Hackintosh Broadcom Wifi AC
Generic PCIe SATA card 8-ports
  • Intel UHD 630 iGPU VDA decoder "fully supported"
  • Intel i225 dual ethernet works
  • iServices work
  • Wifi / Airdrop work (don't use Continuity / Handoff but I expect it works too)
ASUS AI overclocked to 4.9GHz and stable.

Geekbench5:
CPU: 1350 / 11400​
Metal: 65200​
OpenGL: 60800​
Cinebench: 16200
AJA Drive Test: 2800 R/W

I'm coming at this from a cMP 3,1 running dosdude Catalina. This pick is sort of awkward and lavish but it was a gift.

I punted on Rocket Lake due to uncertainties in early picture. Can drop in 11000 series if it seems compelling.

Can't get display connected to iGPU to work. Am lost in caverns of Whatevergreen / Hackintool framebuffer patching.

Added @CaseSJ HackinDROM patch for Thunderbolt and Maple Ridge controller is listed in System Report but no way to test.

Surprisingly quiet under full load pushing 50 cf/m. Cores run high 80s. 250W thermal listed in iSTAT menus. Some throttling but holds steady enough under load. This can be further tuned.

Will put it all in a Fractal Design Meshify 2 case with a ton of spinners. This case is a beauty, but huge. Makes me appreciate Apple design all the more, especially cMP.

Thanks to the great write-up at Dortania github and the wealth of experience on this forum, this was a very fun / challenging build for an OC newbie. Thank you community!

View attachment 515111
Can you paste your PCI system report?
 
Back
Top