b1's "Mac Mini Killer" macOS Mojave Coffee Lake Build:
i7-8700 | Gigabyte Z370N | RX560 | 16GB RAM
View attachment 351172
View attachment 351173 View attachment 351174 View attachment 351175 View attachment 351176
Components
Intel Core i7-8700 non K
GIGABYTE Z370N WIFI
G.SKILL 16GB (2 x 8GB) DDR4 3200MHz
250GB Samsung 970 EVO M.2
I'm using two of this disk: one for macOS and one for Windows 10 (gaming).
250GB SanDisk Ultra II SATA III 2.5-Inch
I'm using this disk for a bootable clone of macOS Mojave.
Noctua NH-L9I
Great low profile cooler that fits my SFF case.
WiFi adapter from MacBook Air (BCM94360CS2)
Before that, I've tried BCM943602BAED and BCM94352Z. Both of this cards require some kexts to work in macOS, and they will not let your BT keyboard work in BIOS and Clover.
Flex 4.5L case and SeaSonic 300W 80+ Gold PSU ($200)
This is the custom made SFF case that comes with moded server PSU.
Comments
It is my first Hackintosh and the first PC build for a last 10 years. So I have a good chance to build a fully compatible system. I spend weeks on research. As a reward, I’ve got a fully working hack running macOS Mojave.
Use cases: Xcode, Sketch, Final Cut, VMs, light gaming in Windows.
BIOS
Actually, I can boot even with default BIOS setting, but I needed some tweaks for normal sleep/wake functionality. I've attached my BIOS, so you can try it if you have z370n motherboard. CPU undervolted to 1.125V. Be aware of it.
Config.plist
I have a few DSDT patches, darkwake=2, tweaks for Power Management and Hardware Acceleration with iGPU. SMBIOS is iMac18,3.
I've managed to figure out about all Config.plist settings and I keep them as minimal as possible. The same with drivers64UEFI folder and all efi's.
Kexts
I moved kexts to
/Library/Extensions/, and left in
Other only essential kexts that I might be needed during recovery mode. You can find all my kexts from
/Library/Extensions/ in the attachment below.
When you copy kexts to
/L/E/, don't forget to:
config.plist → System Parameters → Inject Kexts = Detect.
config.plist → RT Variables → CsrActiveConfig = 0x01 (enable unsigned kexts).
Don't copy kext with Finder, use terminal:
Code:
sudo cp -R KextToInstall.kext /Library/Extensions
and then:
Otherwise, they will not be injected properly.
View attachment 358024
Graphics
MSI RX560 Aero working great with WhateverGreen.kext. iGPU for hardware acceleration working great too. I applied a few patches in config.plist and turned iGPU on in BIOS.
If you want to run my build with iGPU only, you need to make some changes in config.plist:
- Set BIOS → Peripherals → Initial Display Output = iGFX;
- Change SMBIOS from iMac 18.3 to 18.1 (this iMac don't have eGPU too);
- Set config.plist → Graphics → ig-platform-id = 0x59120000.
Another settings in config.plist and kexts should be the same.
Sound
Works great with AppleALC.kext and some necessary tweaks in config.plist.
Networking
Left LAN port works smoothly with IntelMausiEthernet.kext. For right LAN you will need SmallTree-Intel-211-AT-PCIe-GBE.kext.
BT and WiFi work without any kexts. All related futures work too: unlock with Apple Watch, Connectivity, Hands-off, Airdrop, iMessege etc. Bluetooth keyboard and touchpad work in Clover, BIOS and during FileVault login.
Here are the
BCM94360CS2 WiFi/BT drivers for Windows.
The only problem is that MacBook Air card doesn't fit the standard metal case on the motherboard. So I just removed this case. Also with included internal antennas, I have a weak BT signal. I ordered
two external antennas, hope they will fix my problem.
UPD: Actually
it should fit the standard case, so you can use it to hold the card in place. Build in antenna connectors should work too.
Sleep
Sleep and wake work with darkwake=2. Here is my actual pmset info:
View attachment 353518
USB
I followed
Rehabman's directions to create an SSDT to inject only the USB ports on the motherboard. You can find it in
ACPI → patched folder. If you use a front panel USB or connect anything to internal USB-port on the motherboard, you should make your own custom SSDT. Mine SSDT is only for back panel USBs.
USB 3.0 and USB-C works perfectly without any port limit patches in Clover.
Clover Boot options
I have 3 internal drives: System, Clone and Windows. Clover boot screen is a bit messy because of that. So I made FileVault compatible Custom boot entries to have only 3 icons. Other boot options are Hide. I can access them with F3 button.
View attachment 354381
You should reconfigure this Custom boot entries all just remove all of them.
View attachment 354378
Also, my system automatically boots to macOS. If you want the same behaviour, you should change my disk UUID to yours.
View attachment 354380
Thermals
CPU is decided and undervolted to 1.125V: 34–37°C in idle and 66–69°C in the Blender Benchmark or Prime95 (24°C ambient).
View attachment 351178
Performance
This is my current Geekbench score with overclocked memory to 3733 Mhz.
View attachment 356831
What Works
Everything: WiFi, BT, LAN, Audio, iMessage, Wake & Sleep, Universal Clipboard, USB 3, USB-C, DP-audio, Hands-off, AirDrop, Hardware Acceleration, Shutdown, Unlock with Apple Watch, you name it
What Doesn't Work
I can mention just PowerNap. I never experimented with it and don't want to do that.
Next Steps
I think to change my MSI RX560 Aero with Saphire RX570 ITX. This is the most powerful AMD card that can fit my case and will be ok for 300W PSU.