Contribute
Register

[SUCCESS] Asus Prime H370M-PLUS

Status
Not open for further replies.
Joined
Nov 28, 2011
Messages
142
Motherboard
ASUS Prime H370M-PLUS
CPU
i5-8600
Graphics
RX 570
Mac
  1. iMac
  2. MacBook Pro
  3. Mac mini
Mobile Phone
  1. Android
Asus Prime H370M-PLUS


For reasons of size and having two M2 slots, I went with the Asus H370-PLUS/CSM (Amazon). I did this despite the board having little in the way of "it was easy" reviews. Though I don't need the mATX form factor, I am building a duplicate for a friend that needs to transport it to and from his observatory, so size was an issue and two M2s were needed as he needs to boot into OSX and windows.

I love the board, but boy it was a chore.

Purchased:
Asus H370-PLUS/CSM (Amazon)
Corsair Vengeance LPX 16GB (2x8GB) DDR4 DRAM 3000MHz C15 Desktop Memory (Amazon)
Intel Core i5-8600 Desktop Processor 6 Core up to 4.3GHz Turbo LGA1151 300 Series (Amazon)
(I don't overlock and saved a bit avoiding the "K")
Noctua NH-L12S 70mm Low-Profile CPU Cooler with Quiet 120mm PWM Fan (Amazon) 100 degrees F as I write this. Hit 136 on Geek Bench.
LG 27UD58-B 27-Inch 4K UHD IPS Monitor (Amazon) Just stunning for the price.

Owned:
Ancient but trusty Lian Li case
Seasonic PSU
Crucial SSD's 500g and 1T
A pile of hard drives

UEFI:
Use "Delete" to enter you UEFI setup.
  1. Load Optimized Defaults
  2. Disable VT-d
  3. Disable Secure Boot Mode
  4. Set OS TypeOther
  5. Turn off internal Serial port
  6. Turn off Network stack for boot
  7. Set XHCI Handoff to Enabled
  8. Enable HD Audo
  9. Don't enable decode over 4G
  10. Set dGPU as priority for boot
  11. Set internal GPU to enable
  12. Set DMVT pre-alloc to 64MB
  13. Set USB legacy to enabled
  14. Activate XMP profile 1 f your Ram has it
  15. Set ERP to enable

Prep:
A normal attempt at an install here will fail out of the gate as there will be no USB when booted on your install USB, so a slight variation is in order.

Make your install USB per the standard Unibeast instructions, but after the USB drive is made:
Mount the EFI partition on the USB drive
Navigate to /EFI/CLOVER/drivers64UEFI/ and delete AptioMemoryFix-64.efi
Replace it with OsxAptioFix3Drv-64.efi (all kexts and drivers used are included in a zip file attached to this post, but you are encouraged to search for and download the latest version).
Also add USBInjectAll.kext to /EFI/CLOVER/kexts/Other.

Put the kexts and files attached to this post on the USB. Also add a copy of KextBeast and the latest Clover installer package along with Clover Configurator.

Boot on the USB and use Disk Utility to erase your target drive, making a new partition named HightSierra with a GUID partition table. Close Disk Utility and launch the install of OSX High Sierra.

It "may" freeze with two minutes to remaining, this is due to the inability of the system to restart. Let it finish, then power off the system manually and then restart. When clover returns, select the Install option on the HighSierra disk.

When it finishes, it may freeze again trying to restart. Let if finish then restart manually. This time boot off of the USB to get a clover boot loader, but select OSX on HighSierra as the boot.

Your first boot will be a bit rough, but you should have USB. At this point you need a boot loader on your hard drive, but MultiBeast is a bit dated and will cause issues. Instead, open the clover install package on your USB and select the following options (in Clover 4769):
-Change install location to HighSierra
-Customize
-Clover for UEFI booting only
-Install Clover in the ESP
-Install RC Scripts on target volume
-UEFI Drivers:
DataHubDxe-64
FSinject-64
SMCHelper-64
VBoxHfs-64
EmuVariableUefi-64
OsxAptioFix3Drv-64

After making those selections, click install.

Once finished, use clover configurator to mount your EFI. Place USBInjectAll.kext, AppleALC.kext, FakeSMC.kext, IntelMausiEthernet.kext, Lilu.kext, USBInjectAll.kext and WhateverGreen.kext on your desktop and use KextBeast to install them to /Library/Extensions. You can also add the FakeSMC_* sensors kexts I have included as I use them for monitoring.

While EFI is mounted, open your config.plist. Much of what follows are defaults, but verify.
ACPI: leave the default patches. Check AddDTGP, FixPIC, FixUSB, FixSBUS, FixLAN, FixShutdown, FixDisplay, FixHDA, FixDarwin7, FixADP1, FixRegions, FixRTC, DeleteUnused, FixTMR, AddPNLF, FixS3D, FixACST, FixWAK. Leave drop tables as default. Check Generate PStates and Generate CStates, add "SSDT-UIAC.aml" to "SortedOrder" (a file we will get to in a bit). All of these were the default on my Clover install.
Boot: I select Verbose
Boot Graphics: No Change
CPU: No Change
Devices: Defaults work, but add "1" under audio inject and check AFGLowPowerState and ResetHDA
Disable Drivers: No change
Gui: Select a theme if you have one you like
Graphics: No change...Nothing should be selected.
Kernel and Kext Patches: No change
Skip Rt Variables for now
SMBIOS: Select a system definition of iMac 18,2 (18,1 if you are trying to make this work for an iGPU). Under serial click "Generate New" until you get tired. Launch a Terminal - and run uuidgen. Copy and paste that into the SmUUID field. Copy the generated Board Serial, and go to the RtVariables screen and paste it into the MLB field. While there Set your ROM field to UseMacAddr0, set the BooterConfig field to 0x28, and the CsrActiveConfig field to 0x3E7. This will disable SIP.
System Parameters: No change

Save the config.plist.

Copy the attached SSDT-UIAC.aml to /EFI/ACPI/patched. This is a file that will hot patch against USBInjectAll.kext to limit the USB ports that are actually in use. It is compiled for the motherboard. You will still need the USBInjectAll.kext in /L/E. With this you will be under the USB port limit and all ports will work at correct speeds.

Restart the computer and select F8 to bring up the boot selection menu and boot from the HighSierra drive, then when clover loads, boot from OSX on HighSierra.

Post Install:
Go through the normal setup, add and admin user. When you get to the desktop, you should have Internet and can download the NVIDIA web drivers. Select your sound output. At this point I clone the system, then install clover to the clone and copy my EFI files over so I can a "safe" point I can return to in the event that I break something.

Once it became stuck on boot indicating that the boot volume was "hibernated". It should not try to hibernate, but regardless, I set it to not to with:

sudo pmset hibernatemode 0

What Works:
Everything

What isn't right?
Shutdown and sleep are perfect. "Restart" sometimes cascades into a post boot screen. I avoid it and just use shutdown.

Theory:
USB is addressed with USBInjectAll.kext and the SSDT-UIAC.aml file. Sound is via the inject setting in the config.plist and AppleALC.kext. Sleep and shutdown are handled via EmuVariableUefi-64 and OsxAptioFix3Drv-64 with the emulated nvram and RCscripts. Ethernet is flawless with IntelMausiEthernet.kext.

Thanks:
Big thanks to Rehabman's work.

Mojave:
I run Mojave on my four real macs, but until there are NVIDIA web drivers, I am sticking to High Sierra for my Hackintosh. I will upgrade soon I hope.

 

Attachments

  • KextsDriversFilesUsed.zip
    1 MB · Views: 181
Last edited:
Yeah i was asking because i have the same mainboard and that is the only issue i got. It works if i download the movie from iTunes so that is a good work around.

What memory fix are you using? OsxAptioFix3Drv-64 seems to reset the hibernation flag in pmset, though I am still chasing it. Sometimes in long sleep it will go to hibernate and can't boot until I remove the flag. I am still chasing down how to avoid it and will update the above when I have a solid fix. Right now I am trying:

sudo pmset -a hibernatemode 0
sudo rm /var/vm/sleepimage
sudo mkdir /var/vm/sleepimage

I will see if it survives a reboot.
 
ACPI: leave the default patches. Check AddDTGP, FixPIC, FixUSB, FixSBUS, FixLAN, FixShutdown, FixDisplay, FixHDA, FixDarwin7, FixADP1, FixRegions, FixRTC, DeleteUnused, FixTMR, AddPNLF, FixS3D, FixACST, FixWAK. Leave drop tables as default. Check Generate PStates and Generate CStates, add "SSDT-UIAC.aml" to "SortedOrder" (a file we will get to in a bit). All of these were the default on my Clover install.

/Comment

You only have to check Apple RTC, AppleIntelCPUPM, PluginType
P-States and C-States are not needed.
 
Once finished, use clover configurator to mount your EFI. Place USBInjectAll.kext, AppleALC.kext, FakeSMC.kext, IntelMausiEthernet.kext, Lilu.kext, USBInjectAll.kext and WhateverGreen.kext on your desktop and use KextBeast to install them to /Library/Extensions. You can also add the FakeSMC_* sensors kexts I have included as I use them for monitoring.

/comment

place them in /EFI/CLOVER/kexts/Other
 
Status
Not open for further replies.
Back
Top