- Jul 22, 2018
- Supermicro X11SPA-T
- Intel Xeon W-3275 28 Core
- 2xAMD RX 580 8GB
- OS X/macOS
- MacBook Pro
- Mobile Phone
ASUS PRIME Z690M-PLUS D4 - i9 12900KF - 128GB RAM - AMD RX 5700XT - Thunderbolt HotPlug - OpenCore
ASUS PRIME Z690M-PLUS D4 Build featuring Latest Intel Core i9 12900KF, Thunderbolt 3 and AMD RX 5700 XT using OpenCore. This Build is especially for Music Production offering multiple Thunderbolt ports supporting daisy chain, Cinema Display for a robust workflow. This guide can be used as a reference for any 600 series Motherboard with very few changes.
|Motherboard||ASUS PRIME Z690M-PLUS D4|
|Processor||Intel Core i9-12900KF|
|RAM||Patriot Viper Steel 3200MHz 1288GB DDR4 RAM (4x32GB)|
|Graphics||PowerColor AMD RX 5700XT 8GB|
|SSD||Team Force 4TB PCIe NVMe SSD|
|Thunderbolt||GIGABYTE GC-Titan Ridge v2.0|
Fractal Design Define 7XL (CC-9011078-WW)
LG 32" Full HD IPS Monitor with HDMI, and Display Port (LG 22MP58VQ-P)
Antec HCG Gold 750W Power Supply
Dell KM636 Wireless Keyboard & Mouse Combo
As the new 600 series Motherboard is out, I decided to test it and check the performance on a Hack. The idea of this build is to utilize Thunderbolt and use it for production.
Due to the easy availability of Z690 and the number of NVMe slots that were needed, the ultimate choice was ASUS Z690M-PLUS D4. It's a mATX motherboard offering support for 12th Gen. CPUs. PCIe 4.0 supports a faster data transfer rate. Along with all these, the motherboard supports 3x PCIe 4.0 NVMe and built-in WiFi.
On this Motherboard, the Audio Codec is not so great, offering ALC897. In addition, this Motherboard only offers 4xSATA 6.0Gb/s ports. An addition of 2.5Gb/s LAN would make it awesome but considering the budget, it's still a good go as these two were not the needs for this build.
|Thunderbolt 3||YES, with full HotPlug|
|Thunderbolt Dock||YES, with full HotPlug|
|eGPU||YES, with full HotPlug|
|USB 2.0, 3.0, 3.1 and USB Type-C Ports||YES|
Everything works like a charm.
Bootable Media Creation
To create Bootable USB for macOS Big Sur, follow the steps below.
1. Download macOS Big Sur from App Store.
2. Plug USB to your system.
3. Open Disk Utility and erase the USB Flash Drive with following parameters
4. Close Disk Utility.
5. Open Terminal and type:
sudo /Applications/Install\ macOS\ Big\ Sur.app/Contents/Resources/createinstallmedia --volume /Volumes/USB
7. Press (Y) to confirm and then press enter key and it will start to erase the disk and will create macOS Bootable USB.
Once the process completes, close the terminal. The USB Flash Drive will be renamed as Install macOS Big Sur
- At this point, the bootable USB can be only used to boot Mac only. In order to boot the computer using the USB, follow the steps below.
To prepare OpenCore boot loader, you need to download OpenCore.
Download the Release folder followed by the release version.
When extracting, you'll get 4 folders which has been listed below.
|Docs||Contains documentation, change log, a sample config.plist, and ACPI Samples for OpenCore.|
|IA32||Contains OpenCore EFI, 32-bit OpenCore Boot Loader.|
|Utilities||Contains several utilities.|
|X64||Contains OpenCore EFI, 64-bit OpenCore Boot Loader.|
1. Copy X64 to your working directory and follow the steps below
Adding Required SSDTs
SSDTs are mandatory which allows several important fixes and is required to boot the system.
2. From the Docs/Acpi Samples/Binaries directory, copy the above SSDTs to EFI/OC/ACPI.
Adding Required Drivers
Drivers are mandatory which allows several important function and is required to boot the system.
2. From the EFI/OC directory, just keep the above drivers and delete rest of the drivers.
- All the drivers can be found at: X64/EFI/OC/Drivers
Adding Required Kexts
In order to boot into the installation, you need to add the necessary kexts. Follow the steps below to place the necessary kexts.
1. Download the above kexts.
2. Extract the kexts from the RELEASE folder.
3. Copy the kexts to: /EFI/OC/Kexts
- Do not download the project files. The pre-built binaries/downloads are available in the README.md section. Make sure you read it carefully.
- Download the latest version for better support.
- Use the kext from RELEASE folder and RELEASE.zip file.
- Do not place unnecessary kexts here. It might prevent booting the installer.
- Only use basic kexts which is required to boot off the installer. You can install the rest required kexts at the time of post-installation.
- The VirtualSMC package includes Battery and Sensors plugins (SMCBatteryManager.kext, SMCDellSensors.kext, SMCLightSensor.kext, SMCProcessor.kext, and SMCSuperIO.kext). You do not need these kexts for booting the installer.
Creating OpenCore config.plist
To create config.plist, follow the steps below.
Copy sample.plist from Docs to your working directory and rename it to config.plist. The only changes to the config.plist has been described below. The rest will remain completely untouched.
This section is for adding the DSDT and SSDT files for your system. The following changes are needed.
This section is used for device renames such as USB, Graphics and Audio. The following changes are needed.
|DSDT||50454750||47465830||Rename PEGP to GFX0 (Graphics)||YES|
|DSDT||48454349||494D4549||Rename HECI to IMEI (PAVP)*||YES|
|DSDT||4D45495F||494D4549||Rename MEI to IMEI (PAVP)*||YES|
|DSDT||48444153||48444546||Rename HDAS to HDEF (Audio)||YES|
This section allows to apply certain Booter quirks. The following changes are needed.
- The values which have been not discussed above will remain disabled.
This section is used for adding device properties. This includes PCI Devices information such as Graphics, Audio, WiFi, Ethernet and other controllers. No any changes are needed.
This section is for adding and blocking kexts. This also defines the order of the kexts and the architecture of each kext. The following changes are needed.
- All the plugins must load after loading it's dependencies otherwise the kext will no longer function even when loaded in OS X/macOS.
- The mandatory kexts must be loaded in sorted order as shown in the above table.
- *Indicates BundlePath i.e. Name of the Kext
- **Indicates mandatory kexts.
- All the added kexts must exists in the EFI/OC/Kexts directory.
- The options which have been not discussed above, that will remain untouched.
This section allows to spoof your CPU ID if you're using an unsupported CPU such as Intel Pentium(s) and Celeron(s). As there is no support for Alder Lake yet, CPU spoofing is needed in order to boot the system. The following changes are needed.
|Intel Alder Lake||55060A00 00000000 00000000 00000000||FFFFFFFF 00000000 00000000 00000000|
This section allows settings related to Kernel. The following changes are needed.
This section allows to apply certain Kernel quirks. It provides settings related to Kernel and several other options related to BIOS/UEFI and USB ports. The following changes are needed.
- The values which have been not discussed above, that will remain disabled.
This section is for adding NVRAM properties, boot args and configuring SIP. The following changes are needed.
This section allows to set SMBIOS. It's an important section and has various impact on your system. The following changes are needed.
|iMacPro 1,1||Intel Alder Lake for i3 and i5|
|MacPro 7,1||Intel Alder Lake for i7 and i9|
Using OpenCore Configurator, generate a SMBIOS under PlatformInfo section and configure the options as outlined below.
Platform Info>DatHub - Generic - PlatformNVRAM
|Add this section in config.plist||YES||Adds DataHub field|
|Add this section in config.plist||YES||Adds Generic field|
|SpoofVendor||YES||Sets SMBIOS vendor fields to Acidanthera|
|Add this section in config.plist||YES||Adds PlatformNVRAM field|
For more information on Comet Lake config.plist, check the post linked below.
How to Create OpenCore Config.plist file for booting macOS on Intel Desktops An EliteMacx86 Exclusive Guide - This guide covers creation of config.plist for booting macOS on Intel Desktops for OpenCore as a bootloader. Overview The config.plist is a system configuration file for the...
|Add this section in config.plist||YES||Add SMBIOS field.|
Installing OpenCore EFI
Now, as the EFI is completely prepared, it's time for the installation of OpenCore on the Bootable USB Flash Drive.
1. Mount the EFI partition of your Bootable USB Flash Drive.
2. Copy the EFI from your working directory to the EFI partition of your Bootable USB Flash Drive.
Now you’ve successfully installed OpenCore, the required drivers, kexts, and config.plist and the USB Flash drive is ready to boot off your computer.
Installing Thunderbolt Card
The next step is to install Thunderbolt Card.
|PCIe Slot||PCIe Device|
|Slot 1||AMD RX 5700 XT|
|Slot 4||1xGIGABYTE GC-Titan Ridge v2.0|
- The Titan Ridge Card will have the THB_C Cable jumper and USB 2.0 Header connected.
- The Titan Ridge card is flashed with NVM33 custom firmware.
The next step is to configure the BIOS. To access your BIOS/UEFI, press and hold Delete key on your Keyboard and then set the following.
Once the UEFI is set up, Save & Exit Setup.
For Thunderbolt Settings, refer to the guide linked below.
How to Enable ThunderBolt 2, Thunderbolt 3 and Thunderbolt 4 on maOS [Clover/OpenCore] An EliteMacx86 Exclusive Guide - This guide covers implementation of Thunderbolt 2, Thunderbolt 3 and Thunderbolt 4 on macOS using Clover and OpenCore. Overview This guide covers the implementation of...
The installation step is simple.
Plug your Bootable USB Flash Drive to the target system.
Turn on your system.
3. Boot to Boot Menu using F12
4. Select your USB Flash Drive with the UEFI prefix and press enter to boot.
5. When at OpenCore menu, select ResetNVRAM and boot from it.
6. Repeat step no. 5.
7. When at OpenCore menu, boot using Install macOS Big Sur. It will take couple of minutes to boot into installer screen. Once you reach the installer, select your preferred language and continue.
8. On top, click on Utilities and then select Disk Utility.
9. When at Disk Utility, click on View and select Show all Devices.
10. Select your target SSD. Do not select the partition
11. Click on Erase button and erase the drive with following parameters.
|Scheme||GUID Partition Map|
12. Close Disk Utility.
13. Select Install macOS and continue with the options.
14. Select Macintosh HD and click on Install.
This will take a couple of minutes and will restart at "Less than a minute is remaining". Upon completion, the system will automatically restart. The System will restart to complete the installation. Here ends the first phase of the installation.
After installation, boot it using USB, but this time select Macintosh HD.
The first boot may be slower as the caches are not built yet. Once the caches are built, it will boot normally.
When you're at the welcome screen, continue with the basics options such as Keyboard setup, Network, Computer Account, and Privacy settings.
Now the installation is complete, but the drive isn't bootable yet. You need to complete the Post Installation
Now, configuring the Post Installation. There is not much to do for the post-installation except configuring Thunderbolt 3 Hotplug and the boot from the system drive. Everything rest is fully functional.
Thunderbolt 3 Hotplug
As of now, the Thunderbolt already works with the exception of HotPlug. To implement the Hotplug, follow the steps below.
1. Open IOReg and find the Thunderbolt Node. For PCIe Slot #4, the address is PC00.RP21.PXSX
2. Grab the Thunderbolt Titan Ridge SSDT from
4. Save the SSDT.
For more depth information on Thunderbolt 3, refer to the guide linked below.
How to Enable Thunderbolt 3 Hotplug on macOS [Clover/OpenCore] An EliteMacx86 Exclusive Guide - This guide covers implementation of Thunderbolt 3 Hotplug on macOS for single and multiple Thunderbolt 3 Cards. Overview An EliteMacx86 Exclusive Guide - In our previous post, we covered a guide...
Boot from System Drive
This is one of the most important part as it allows to boot it using the system drive without any need for installation USB. By using this method, you’ll be easily able to install the OpenCore Boot loader on your System Drive.
1. Mount the EFI Partition of your System drive and the Bootable USB. Both the EFI partition of your Hard Drive and USB Flash Drive will be mounted on your Desktop.
2. Assuming that you’ve mounted your EFI Partition, continue the following.
3. Open your EFI Partition of your Hard Drive.
4. Select EFI folder and then move to Trash.
5. Open your EFI Partition of your macOS Bootable USB.
6. Copy the EFI folder from your macOS Bootable USB to your EFI Partition of your Hard Drive.
7. Download the SSDT-DTPG.
8. Copy SSDT-DTPG and Thunderbolt SSDT to ESP/EFI/OC>ACPI
9. Open your config.plist and add the SSDT entries.
10. Save your config.plist
Restart your System
After completing the post-installation, restart your System