Jump to content

[GUIDE] MSI MEG Z490I Unify


123456789323
 Share

5 posts in this topic

Recommended Posts

[GUIDE] MSI MEG Z490I Unify

 

1.jpg

 

Components

Singularity Computers Wraith
Intel i7 10700K
MSI MEG Z490I Unify
2x 32 GB 3200MHz Patriot Viper 4 Blackout RAM
MSI RX 5700 XT Evoke OC
1 TB Samsung 970 EVO Plus NVMe
Apple Broadcom BCM94360CS2 Bluetooth/Wifi
Seasonic Focus SGX-650 Watt PSU
CableMod Custom PSU Cable
4x Noiseblocker B12-PS Fans

Prehistory

This build came about through a cooperation with igorsLAB and was supposed to be something very special.
mITX form factor, Z490 chipset, powerful, quiet and water-cooled,
which in itself is not an easy thing to do if you assume a mITX build.

When it came to the case selection, I chose a Singularity Computers Wraith Case,
because it has an integrated distribution panel with pump mount which makes it easier to build.

 

2.jpg

 

We use a MSI MEG Z490I Unify motherboard which is equipped with a 10th Gen i7 10700K.
For RAM we decided to use a 64 GB kit ala 2x 32 GB 3200 MHz Patriot Viper 4 Blackout with CL16-18-18-36.

Because the mainboard can only be equipped with CNVi NGFFm2 modules,
I was forced to come up with something regarding Bluetooth/Wlan.
I removed the original Intel® AX201 NGFFm2 card from the module and installed new antenna cables including connectors.
The original antenna cables were far too short for our use.
The BCM94360CS2 is a Original Apple Notebook solution and does not fit into the NGFFm2 module,
for this purpose one of the two NVMe slots that the board owns had to be sacrificed.
With a DeLock m.2 Key -> m.2 Key E module the original Apple Broadcom BCM94360CS2 Bluetooth/Wifi card was installed into the NVMe slot.
For the Bluetooth data connection I used the JUSB1 USB 2.0 Connector on the Motherboard.

 

3.png

 

The 1 TB Samsung 970 EVO Plus with current Firmware was installed on the back of the motherboard.
For this project Igor released a MSI RX 5700 XT Evoke OC from his private stock.
For the water cooling components we got support from the company Alphacool, who completely equipped us with everything our heart desires.
For the 10th Gen i7 10700K we use an Alphacool ice block XPX in the Polished Clear version.
The MSI RX 5700 XT Evoke OC was equipped with an Alphacool ice block Aurora acrylic GPX-A GPU cooler including backplate.

 

4.jpg

 

5.jpg

 

The cooling system is connected by Alphacool 13/10mm Black Chrome Tubes and Alphacool icicle PRO fittings in chrome.
An Alphacool ice pump VPP755 pumps the coolant into the two 240mm Alphacool NexXxoS ST30 V.2 radiators.
The radiators were equipped with 4x Noiseblocker NB-eLoop B12-PS Fans.
The power is provided by a sponsored Seasonic Focus SGX-650 Watt SFX power supply,
the original cables were replaced with cables from CableMod.

A very big thank you to the sponsors at this point again: Alphacool, Blacknoise, igorsLAB and Seasonic!

 

6.jpg7.jpg

8.jpg

 

BIOS

First download the following Bios File and the Bios Settings Profile attached to this post and extract them.

Bios: https://www.dropbox.com/s/ea0dq7uzayu3ita/E7C77IMS.120.zip?dl=0
Bios Profil: https://www.dropbox.com/s/m29ssxrthb0u2oi/Hackintosh Bios Settings.ocb.zip?dl=0

Copy the two files to a Fat32 formatted USB stick and plug it into a free USB port.
Start the computer and open the bios menu with the ESC key, then switch to EZ mode with the F7 key.
Open the M-Flash menu

 

9.png

 

You will be informed that your system will perform an auto reboot and start the flash mode.
Confirm the selection with Yes.

 

10.png

 

In flash mode you choose the firmware on your USB stick and confirm the flash process with Enter.

After you have flashed the bios successfully and the system has rebooted,
you open the Bios menu again with the ESC key and switch back to the EZ mode with F7.
Afterwards you open the Save/Load Bios Settings OC PROFILE menu.
 

12.png

 

Once there select the option "OC Profile Load From USB" and choose the "Hackintosh Bios Settings.ocb" file.
Once the settings are loaded, save them with the F10 key before leaving the Bios.
Alternatively you can also save the settings manually.

 

BIOS SETTINGS

PCIe/PCI Sub-system Settings
Above 4G : Enabled

Settings/Advanced/Integrated Peripherals
SATA Mode : AHCI Mode

Settings/Advanced/Intel (R) Thunderbolt
Discrete Thunderbolt(TM) Support : Enabled
Thunderbolt Boot Support : Pre-Boot ACL
Security Level : No Security
Settings/Advanced/Intel (R) Thunderbolt/Discrete Thunderbolt(TM) Configuration
GPIO3 Force Pwr : Enabled
Settings/Advanced/Intel (R) Thunderbolt/Discrete Thunderbolt(TM) Configuration/Thunderbolt(TM) OS Select
Thunderbolt support : Enabled + RTD3

Settings/Advanced/Power Management
USB Standby Power at S4/S5 : Enabled


Settings/Advanced/USB Configuration
XHCI Hand-Off : Enabled
Legacy USB Support : Enabled

BIOS CSM/UEFI Mode
UEFI

Settings/Boot
MSI Fastboot : Disabled
Fastboot : Disabled


Settings/Security/Secure Boot
Secure Boot : Disabled

Settings/Security/Trusted Computing
Security Device Support : Disabled

OC/Overclocking/CPU Features
CFG Lock : Disabled

 

What do we need ?

1. access to a computer where Windows/MacOS is already running
2. macOS license or the operating system/Internet Recovery Files.
3. a USB stick with 16 GB free memory.
4. OpenCore EFI

Example: Original Apple Mac OS X Snow Leopard DVD

11.jpg

 

Create a USB flash drive via Windows

 

What is required ?

1. big sur recovery image : https://www.dropbox.com/s/kcp3pl83qgb6c2q/recovery.7z?dl=0
2. USB pen drive with 16 GB memory
3. etcher for the recovery stick creation : https://www.dropbox.com/s/i5uurrk7zcwzmr4/balenaEtcher-Setup-1.5.112.exe?dl=0

 

 

Create a USB flash drive via macOS

 

1. open the App Store, enter Big Sur in the search bar and hit enter.

1.png

2. start download and wait until it is completed.

2.png

3.png

4.png

Once the download is complete, the following window will appear

5.png

3. insert the USB stick and open the disk utility via Spotlight search

6.png 7.png

4. in the disk utility change the view to "Show all devices" first

8.png 9.png

Now select your USB stick, in my case it is an Intenso cMobile Line Media USB Drive and select the option delete.

10.png

A window will open and here you can set the settings for the formatting.

Name: USB
File format : MS-DOS file system (Fat)
Scheme : Master Boot Record

11.png

To perform formatting, press Delete.

If the process is successful, you will see the following window which can be closed then:

12.png

5. enter Terminal in the Spotlight Search and run this application.

13.png

Copy the command for Big Sur, paste it into the Terminal window and confirm with Enter.

Big Sur: sudo /Applications/Install\ macOS\ Big\ Sur.app/Contents/Resources/createinstallmedia --volume /Volumes/USB

Catalina: sudo /Applications/Install\ macOS\ Catalina.app/Contents/Resources/createinstallmedia --volume /Volumes/USB

In the terminal the whole thing should look like this:

14.png

5. you will be asked to enter your password, which you confirm with Enter.
Don't be irritated by the fact that the password field remains empty even after you have typed the password.

15.png

You will be reminded that the volume named USB must be deleted.
Enter Y and confirm with Enter.
Now the USB stick will be formatted and created correctly.

16.png

This is how it looks like in the terminal when the stick has been created successfully.

17.png

Congratulations - your macOS Install Stick is created

 

Create the EFI for macOS via Windows

 

What is required ?

1. A bootloader: OpenCore

https://github.com/acidanthera…penCore-0.6.3-RELEASE.zip

GUI and HFSPlus driver for the bootloader:

https://github.com/acidanthera…ryData/archive/master.zip

2. to be able to configure the EFI, we need an additional Plist Editor.
 


3. to facilitate the generation of the serials and SMBIOS data we need GenSMBIOS.
 


4. in order for our system to run as a hackintosh, some kexts are required.

AppleALC = Audio

 

https://github.com/acidanthera/AppleALC/releases/

 

Lilu - A versatile plugin that is required for both AppleALC and WhateverGreen.

 

https://github.com/acidanthera/Lilu/releases

 

LucyRTL8125Ethernet - Required for the Realtek® RTL8125B 2.5Gbps LAN controller

 

https://github.com/Mieze/LucyRTL8125Ethernet

 

SMCProcessor - Plugin for VirtualSMC - Allows to read CPU relevant data like temperatures etc.

Can be found in the table of contents of VirtualSMC.

SMCSuperIO - Plugin for VirtualSMC - Allows to read out CPU relevant data like fan speeds etc.

Can be found in the table of contents of VirtualSMC.

VirtualSMC - Apple SMC emulator including plugins - makes it possible to boot macOS
 

https://github.com/acidanthera/VirtualSMC/releases

 

Whatevergreen - Swiss Army Knife for GPUs, but now also includes many additional fixes
 

https://github.com/acidanthera/WhateverGreen/releases

 

You can download the kexts as a package here:

 

https://www.dropbox.com/s/klfaadmfelwk937/Kext Files - MSI MEG Z490I Unify - Build.zip?dl=0

 

Additionally you have to download the BASIS-SSDT.aml

 

https://www.dropbox.com/s/x8yn33yyizsnqoa/BASIS-SSDT.aml?dl=0

 

 

 

Create the EFI for macOS via macOS

What is required ?

1. A bootloader: OpenCore

https://github.com/acidanthera…penCore-0.6.3-RELEASE.zip

GUI and HFSPlus driver for the bootloader:

https://github.com/acidanthera…ryData/archive/master.zip

2. to be able to configure the EFI, we need an additional Plist Editor.
We use the PlistEdit Pro under macOS, the trial version is absolutely fine.

 

https://www.dropbox.com/s/bqradkm2pgiklep/PlistEdit Pro.zip?dl=0

 

3. to facilitate the generation of the serials and SMBIOS data we need GenSMBIOS.
 


4. in order for our system to run as a hackintosh, some kexts are required.

AppleALC = Audio

 

https://github.com/acidanthera/AppleALC/releases/

 

Lilu - A versatile plugin that is required for both AppleALC and WhateverGreen.

 

https://github.com/acidanthera/Lilu/releases

 

LucyRTL8125Ethernet - Required for the Realtek® RTL8125B 2.5Gbps LAN controller

 

https://github.com/Mieze/LucyRTL8125Ethernet

 

SMCProcessor - Plugin for VirtualSMC - Allows to read CPU relevant data like temperatures etc.

Can be found in the table of contents of VirtualSMC.

SMCSuperIO - Plugin for VirtualSMC - Allows to read out CPU relevant data like fan speeds etc.

Can be found in the table of contents of VirtualSMC.

VirtualSMC - Apple SMC emulator including plugins - makes it possible to boot macOS
 

https://github.com/acidanthera/VirtualSMC/releases

 

Whatevergreen - Swiss Army Knife for GPUs, but now also includes many additional fixes
 

https://github.com/acidanthera/WhateverGreen/releases

 

You can download the kexts as a package here:

 

https://www.dropbox.com/s/klfaadmfelwk937/Kext Files - MSI MEG Z490I Unify - Build.zip?dl=0

 

Additionally you have to download the BASIS-SSDT.aml

 

https://www.dropbox.com/s/x8yn33yyizsnqoa/BASIS-SSDT.aml?dl=0

 

 

 

Installation

 

Plug in your USB Flash Drive and open the boot menu with the F11 key.
Select the USB flash drive and confirm the selection with Enter.

In the OpenCore Boot Picker, select the recovery stick with the name DSM2RECBS and confirm the selection again with Enter.
Once you have arrived in the installer, open the Utilities tab and start the terminal.
Then enter ifconfig and confirm the entry with Enter.
The terminal lists all available interfaces.

lo0
gif0
stf0
xhc20
xhc0
en0

For us en0 is important because this is our lan port, which is currently "inactive" according to ifconfig.
With the Realtek 2,5 Gbit Lan Controller it is the case that it can not automatically get the correct settings for the Lan Port.
Without the correct settings, no access to the Internet is possible, and without Internet access, no Internet Recovery Install can be performed.
However, we can solve the whole problem via terminal.
To do so, type the following command into the terminal and confirm the input with Enter:

ifconfig en0 media 1000baseT mediaopt full-duplex

To check, enter ifconfig again and confirm with Enter. Now you should see "active" instead of "inactive".

Thanks to griven who helped to solve the lan problem via terminal.

After that close the terminal and switch to the disk utility.
First change the view to "Show all devices" and then select the hard disk you want to use for macOS in the left tab.
In my case this is a Samsung 970 EVO Plus with current firmware.
(without current firmware on the 970 EVO Plus, it is not possible to install macOS on it)

After that click on "Delete", another window will open and here you can define the following things:

Name: Can be assigned as desired
Format: Mac OS Extended (journaled)
Scheme: GUID Partition Table

Click on "Delete" afterwards.

Once the formatting is complete, click "Done" and close the disk utility.
Back in the selection menu, select "Reinstall macOS Big Sur".
Press "Continue" and accept the terms and conditions.
Select the hard disk you formatted for macOS and confirm the selection with "Continue".
The remaining part of the installation runs automatically and we only need to intervene again briefly when it is finished.

To avoid open questions I have captured the whole installation process in full length.

 

 

 

Copy the EFI from the Recovery Install Stick to the ESP of the hard disk

 

 

 

Lan Fix - Realtek 8125B

 

As with the installation you have to fix the lan port again.
This time the whole thing will stay the same and not only active for the installer.

Open the terminal and enter the command already mentioned above, but this time you add a "sudo" to the command.

The complete command will be:

sudo ifconfig en0 media 1000baseT mediaopt full-duplex

Press Enter to confirm

You will then be asked to enter your password for the system,
don't be surprised that the password input is not displayed.

Confirm with Enter
Ready

 

 

 

Thunderbolt3

 

The mainboard has a Thunderbolt port, which we have to bend a bit for macOS,
because without this adjustment Thunderbolt Hotplug will not work.

Thunderbolt is connected via PCH and is connected to the RP01 of the MSI MEG Z490I Unify.
In the picture below you can see the Path and the successful Inject of the properties via SSDT.


1.png

First download the following SSDT:

https://www.dropbox.com/s/wxtsmopnbgwq8t8/TTRidge.aml?dl=0

 

Additionally you need MaciASL:

https://www.dropbox.com/s/ku31d8zimw7arvs/MaciASL.zip?dl=0

 

As well as PlistEdit Pro to edit your config.plist:

https://www.dropbox.com/s/bqradkm2pgiklep/PlistEdit Pro.zip?dl=0

 

Open the TTRidge.aml with MaciASL and change the Device Path

From

External (_SB_.PCXX.RPXX, DeviceObj)
External (_SB_.PCXX.RPXX.PXSX, DeviceObj)

Scope (_SB.PCXX.RPXX)

2.png


To

External (_SB_.PCI0.RP01, DeviceObj)
External (_SB_.PCI0.RP01.PXSX, DeviceObj)

Scope (_SB.PCI0.RP01)

3.png


Afterwards you compile the file. (Point 1 in the picture)
Another window will open which ideally should not contain any errors. (point 2 in the picture)
If no errors are displayed, you can now save the file.
To do so, click on File (point 3 in the picture) and then on Save as (point 4 in the picture)

4.png

A wide window will appear, choose the place where you want to save the file.
In my case this is the desktop and then click on Save.

5.png

In the next step you open the terminal and mount your EFI partition.

In my case the command is :

sudo diskutil mountdisk disk0s1

Now copy the TTRidge SSDT saved on your desktop and paste it into your EFI under EFI/OC/ACPI.

Load your config.plist with PlistEdit Pro and open the property list ACPI/Add.
Click on "New Sibling Element" while you have selected the Add Property.

6.png

Change the type of the new sibling element from String to Dictionary.

7.png

You should now have the following picture in front of you

8.png

Now click 1x on "New Child Element" and then 2x on "New Sibling Element".

9.png

10.png

Now rename the properties added as "New Objects".
We also change the property type from String to Boolean and set it from No to Yes.
The property names are :

Name : Comment - Type : String - Value : TTRidge
Name : Enabled - Type: Boolean - Value: Yes
Name: Path - Type: String - Value: TTRidge.aml

In the config.plist it should look like this:

11.png

If this is the case click on "File" and save the config.plist with "Save".

12.png

 

 

 

 

PS: If you use this guide for another Z490 motherboard,
which is also equipped with a Thunderbolt port,
you have to find out the device address for your Thunderbolt Port via IORegistryExplorer.

 

USB-Ports

 

Under macOS there is a port limit for USB ports, i.e. if more than 15 ports are available, everything beyond this limit will be ignored.
USB 3.0 ports are backwards compatible and use two ports at once by definition,
i.e. a USB 2.0 part and the actual USB 3.0 part.
But not all listed ports under macOS are physically present,
just because macOS lists them to us doesn't mean that this is true.
With original Apple devices the port definition for each SMBIOS is stored, with a Hackintosh this is of course not the case.

Therefore a definition of the USB ports is essential, otherwise certain functions such as sleep cannot work.

To create a Custom USB Kext you need Hackintool:

https://www.dropbox.com/s/f80m1ef7k5drc0s/Hackintool-3.4.9.zip?dl=0

 

With this tool you can create your own USB Kext under the tab USB and remove ports that are not assigned (not available).

The procedure documented by @CMMChris was great and simple which I quote here:

Open Hackintool and switch to the USB tab. There all USB ports are listed.

Now test all ports one after the other with a USB 2 and a USB 3 device to see which ones are in use.
Then delete the ones that are not in use from the list.

After that you set the type of the port:
- USB 2.0 part of a USB 3 port is set to USB3
- USB 3.0 portion of a USB 3 port is set to USB3
- Pure USB 2.0 connections on USB2
- Special feature of Type-C: Same port in both directions = TypeC + SW; different port depending on direction = TypeC
- Internal USB ports (e.g. internal Bluetooth) is set to Internal

If your connections exceed the port limit of 15 ports per controller, you have to disconnect ports (1 USB3 port = 2 USB ports - USB2 share and USB3 share).
Then you have to decide yourself if you want to disable ports completely,
remove the USB 2.0 part from a USB 3.0 port or vice versa

Once everything is configured you can export the data.
Hackintool generates 5 files: SSDT-EC-USBX.aml, SSDT-EC-USBX.dsl, SSDT-UIAC.aml, SSDT-UIAC.dsl and USBPorts.kext.
Usually only two of them are important, SSDT-EC-USBX.aml and USBPorts.kext.
In our case only the USBPorts.kext is needed, because I have done some preliminary work in the BASIS-SSDT which is also USB related.

Mount your ESP partition of your macOS disk and store the files as follows:

- SSDT-EC-USBX.aml should be placed in EFI/OC/ACPI/ (if you use another Z490 board)
- The USBPorts.kext should be placed in EFI/OC/Kexts/

To edit the config.plist we use PlistEdit Pro:

https://www.dropbox.com/s/bqradkm2pgiklep/PlistEdit Pro.zip?dl=0

 

Open the config.plist via PlistEdit Pro and stores the entries for the two files,
so they are loaded at boot time and also disable the XhciPortLimit Quirk.

After a reboot the whole things will be taken over and should work fine if you did everything right.

The Singularity Computers Wraith Case has no connectors on the case itself,
for this reason my USBPorts.kext differs slightly from your definition.

1.png

HS01, HS03, HS04 are USB 2.0 parts of the USB 3.0 ports.
In other words the counterparts of SS01, SS03,SS04. (USB 3.0 Ports)

HS07, HS08 are the two pure USB 2.0 ports.

HS09 is the USB 2.0 header I forked for the Bluetooth and is stored as Internal.

HS13 is the Mystic Light Controller of the mainboard which I also set to Internal,
so that it cannot cause a Wake from Sleep.

SSP1/SSP2 is the Thunderbolt port and a standalone controller.

If your setup is build one on one, you can alternatively use the Custom USB Kext I created here.

 

https://www.dropbox.com/s/nh2qn14upwqix1b/USBPorts.kext.zip?dl=0

 

 


 

Edited by DSM2
  • Like 5
  • Thanks 7
Link to comment
Share on other sites

  • 1 month later...

For anyone having issues on getting the Ethernet to work in the installer use the following command:

 

ifconfig en0 media 100baseTX mediaopt full-duplex


It will then work after this and you will be able to go to the next step.

 

 

 

Link to comment
Share on other sites

  • 1 year later...
 Share

×
×
  • Create New...