- Jun 25, 2014
- MSI Z390-A PRO
- i5 8400
- R9 380
- Mobile Phone
[Success] Asus Z87 Maximus VI Hero Build - Yosemite - El Capitan - SierraComponents
dr.kkarun’s Build: Core i5-4670K - Asus Maximus VI Hero - 8GB RAM -
Intel HD 4600 + AMD Radeon R9 380
dr.kkarun’s Build: Core i5-4670K - Asus Maximus VI Hero - 8GB RAM -
Intel HD 4600 + AMD Radeon R9 380
Mac OS X 10.10 Yosemite
Asus Maximus VI Hero LGA 1150 Intel Z87 ATX Motherboard
Intel Core i5-4670K Haswell LGA 1150
G.SKILL RipjawsZ Series 8GB (2 x 4GB) 240-Pin DDR3 SDRAM DDR3 2400 Desktop Memory (running at 1600 MHz 1.5V 8-9-8-24-2N)
Samsung 840 EVO series 120GB SSD
Western Digital Blue 1TB 7200 RPM Internal Hard Drive
Cooler Master HAF 912 combat ATX Mid Tower Computer Case
Seasonic X series 750W 80 PLUS GOLD Certified Modular Power Supply compatible with Haswell
Asus VS247H-P 23.6-Inch Full-HD LED-Lit LCD Monitor
TP-LINK TL-WN881ND PCIe Wireless card
Cooler Master Hyper 212x CPU cooler
LG optical DVD drive
Logitech C615 webcam
Logitech wireless keyboard K270
Logitech wireless mouse M510
The core components (which influence Mac OS compatibility) are the same which I used for Mavericks build. I prefer Chameleon/Chimera over Clover for Mac OS X installation. For Yosemite, i used Chameleon. In Mavericks, I were not able to enable graphics during installation, as my board needs Azul kext binary patch. But in Yosemite, I could use graphics during installation. Unlike mavericks, bootflag kext-dev-mode=1 is needed in Yosemite in order to load unsigned kexts. Other steps are almost similar to mavericks installation. The following steps worked for Asus Maximus VI Hero (HDMI only, z87 board) with HD4600 Graphics.
Post#5 - Migration to Clover UEFI (with HDMI audio)
Post#9 - Dual Boot Mac OS X Yosemite and Windows 8.1 in same hard drive using Clover UEFI
Post#22 - Migration to iMac 11,3 system definition and 13 digit MLB for working iMessage and FaceTime
Post#33 - Adding GIGABYTE AMD R9 380 4GB - Yosemite (OOB) & El Capitan (workaround needed)
Post#54 - Installing macOS Sierra
Post#60 - Installing macOS High Sierra
Things you need before proceeding:
1. Yosemite installer application from the Mac App Store
2. UniBeast 5+
3. MultiBeast for Yosemite
4. Chameleon Bootloader (+ i386 folder)
5. Chameleon Wizard
6. Kext Wizard
7. Hex editor (optional)
Create UniBeast flash drive
Follow the tonymacx86’s guide to create UniBeast installer flash drive.
Modifications to default UniBeast flash drive
- This build closely matches iMac 14,2. You can get SMbios.plist for iMac 14,2 from MultiBeast or Generate SMbios.plist for iMac 14,2 using Chameleon Wizard. Whatever method u chose, make sure that the generated serial number does not have alphabets 'I' and 'O'. As far as i know real Mac serial numbers don't have these values.
- If you don’t have SSDT for power management, then generate it using the following terminal commands (needs internet). If you are not using clover, then SSDT will be necessary for better power management.
curl -o ~/ssdtPRGen.sh https://raw.githubusercontent.com/Piker-Alpha/ssdtPRGen.sh/master/ssdtPRGen.shCode:
chmod +x ~/ssdtPRGen.shCode:
Install chameleon to the UniBeast flash drive. Copy and replace the SMbios.plist and org.chameleon.Boot.plist in the UniBeast drive with the plists you created. If the Extra folder is hidden, then try the following commands in terminal.
chflags nohidden /Volumes/USB/Extra
chflags nohidden /Volumes/USB/Extra/*
Also copy the SSDT.aml to the Extra folder.
BackUp files needed for installation
Backup the following files to UniBeast flash drive (in a new folder) or a separate storage drive (preferably formatted in HFS+ format, as Mac OS doesn’t recognize NTFS and Fat32 formats in safe mode)
1. Yosemite installer app (from applications - as u can recreate Yosemite installer flash drive with Clover/UniBeast if something goes wrong)
2. MultiBeast for Yosemite
3. Chameleon wizard
4. Kext wizard
5. Hex editor
UEFI Bios settings
Shutdown your computer. Unplug all USB peripherals except UniBeast flash drive and Keyboard/Mouse receiver. (Optional- Disconnect all SATA drives except one for installation). Restart your PC and enter UEFI BIOS.
* Reset to Optimized Defaults
* Advanced —> USB configuration —> Legacy USB support -> Auto
* Boot -> Fast Boot -> Disabled
* Boot -> Secure Boot —> OS Type -> Other OS
* Save and reset
On Restart, press F8 and enter UniBeast flash drive.
At the chameleon boot screen, type the boot flag -f, and then enter USB. If you get kernel panic or can’t get to installer, then add -x in addition to -f. Rest of the installation is same as per tonymacx86’s guide. During restart, enter Yosemite hard drive with boot flag -x. Complete registration in safe mode. Run MultiBeast with the following settings.
MultiBeast Configuration for Yosemite
Note: I chose Chimera and basic boot options, because modules and boot plist are needed for ALC1150 installation.
Copy SMbios.plist and SSDT.aml from UniBeast flash drive to Extra folder in Yosemite hard drive. Open chameleon wizard and edit boot plist according to your preference (see below for my boot plist).
For Desktop HD 4600 graphics (Haswell integrated graphics), Recommended boot flags are
You should configure org.chameleon.Boot.plist accordingly.
Now Extra folder will have the following 5 items.
TP-Link TL-WN881ND fix for Mac OS X
Copy IO80211Family.kext from S/L/E to desktop. Add the device id to info plist.
To unhide the info.plist, use the following command.
chflags nohidden (drag ‘Contents’ folder into terminal window)/Info.plist
Add (or edit) any one of the following strings to info.plist in the appropriate location, where similar strings are present.
<string>pci168c,2e</string> or <string>pci168c,30a4</string>
For Clover: DSDT Patch - AddDTGP + FixAirport
Framebuffer Edit [optional]
Though Azul kext binary patch is not necessary for this board for normal booting in Yosemite, hex editing is needed in order to solve 'no display' issue after switching off and on the monitor (extended duration). Copy AppleIntelFramebufferAzul.kext from S/L/E to desktop. Move the binary file inside it to desktop.
Open the binary file using hex editor. Press command+F. Search for 0300220D. Then do the following changes. Save the changes. Restore binary file in original location (inside azul kext).
|0300220D 00030303 00000002 00003001 00000000 00000060 99140000 99140000 00000000 00000000 01050900 00040000 87000000 02040A00 00040000 87000000 03060800 00040000 11000000 FF000000 01000000 40000000 02040000 01010000||0300220D 00030303 00000002 00003001 00000000 00000060 99140000 99140000 00000000 00000000 01050900 00040000 01000000 02040A00 00040000 05000000 03060A00 00080000 06000000 FF000000 01000000 40000000 02040000 01010000|
Notable Changes after this edit:
* Connector type - HDMI (00 08 00 00) [IOJones- under AppleIntelFramebuffer@2]
* Port number - 0x7 (previously 0x0) [IOJones- under AppleIntelFramebuffer@2]
* Delay value - 06 [hex editor as shown above]
* Television - Yes [under System Information]
With this framebuffer edit, connector using fFrameBufferIndex 02 will be disabled. Display will be through HDMI connector at fFrameBufferIndex 03 (AppleIntelFramebuffer@2 under IOJones) due to longer delay. Since my mobo has only HDMI connector, i have used this edit. This framebuffer edit will support HDMI audio. See Update:3 at bottom of this post for more details.
Credits to PikeRAlpha for his database on framebuffer under Pike's Universum.
Install these two kexts (Azul kext and IO80211Family kext) using kext wizard and rebuild kext cache.
Restart. Press F8 and select UniBeast flash drive. At the chameleon boot screen, enter Yosemite hard drive. If everything goes fine, then you may proceed to installing Bootloader and Extra to EFI partition. Note: For audio, you may need to do some changes under ‘System Preferences/Sound’. Refer this post.
Installing Bootloader and Extra to EFI
If everything works, then you may proceed to install Bootloader and Extra to EFI. Follow the tonymacx86’s guide.
If you want to install Chameleon instead of the Chimera from UniBeast drive, then do the following.
1. Install Chameleon to a separate flash drive (or) just download i386 from chameleon download page.
2. Copy the i386 folder inside FlashDrive/usr/standalone to desktop.
3. Replace the cd (change directory) command in STEP 3 of the guide with
* Sleep, audio, wifi, FaceTime work fine.
* I have installed FileNVRAM v1.1.3 in Yosemite hard drive. As expected, nvram.plist is not generated on reboot. ROM and MLB generation failed as can be seen in iMessage_debug output. Hence i didn't try iMessage. Need to wait for FileNVRAM update.
Geekbench 3 score(i5 4670k overclocked to 4.3 GHz & 8 GB G.Skill RipjawsZ at 1866 MHz, 1.5v, 9-10-9-27-2N timings)
* After finishing installation, go to keychain access -> preferences and click ‘Reset My Default Keychain’. This may help in avoiding FaceTime/iMessage registration error.
* To prevent OCSPD from downloading at full bandwidth, go to keychain access and open preferences. Under certificates, set OCSP and CRL to off.
* Chipmunk/ slow-motion audio problem with Logitech C615 webcam:
While using FaceTime in recent versions of yosemite, audio sounds like chipmunk in my hackintosh. At the other end, i sound like monster (slow motion voice). Unplugging and Plugging in webcam on every boot will solve the issue, but annoying. In Audio MIDI setup, under Logitech Camera, changing the sample rate from '16000 Hz' to '32000 Hz' or '48000 Hz' will solve the issue but reverts back to 16000 Hz on every boot, hence need to be changed on every boot. Muting the Internal Microphone (under 'Built-in Input' in 'Audio MIDI setup') along with the sample rate change for Logitech Camera solves the issue in my case.
Update:1 [11/07/2014] Firmware upgrade for Samsung 840 EVO
Samsung SSD 840 EVO Performance Restoration Software (ISO CD-ROM Image) installation is recommended for Samsung 840 EVO users. This will update firmware from EXT0BB6Q to EXT0CB6Q and do performance restoration in two steps. Burn it to a CD using Disk utility. Restart, press F8, enter CD and update firmware. Clover users with UEFI booting may need to enable CSM in bios in order to boot into CD. Samsung claims this firmware update to be solving 'drop in read performance of old data' issue in Samsung 840 EVO. Yet to be confirmed.
Update:2 [11/18/2014] Update to 10.10.1 using Clover UEFI
Turned off wifi. Applied update and Restart. Addressed the following issues.
* Applied Device ID fix for TP-Link TL-WN881ND (see post#5 for clover patch)
* Optional: Did Azul kext edit using Hex editor (see post#5 for clover patch)
* Restart. Checked DPCIManager for Ethernet/wifi status [en0/en1]. Checked 'iMessage Debug' output (same as before update). Then enabled wifi.
* Audio - 'RealtekALC/patch in place' method (needs internet). Already had Audio id-1 in config.plist.
* Repaired disk permissions for Yosemite volume in Disk Utility. Rebuild kext cache. Restart.
For TRIM support & HDMI audio, see clover patch in post#5
Note: Since MultiBeast 7+ for Yosemite will install AppleIntelE1000e as a separate kext (unlike Multibeast 6.5.0 for mavericks, which will install AppleIntelE1000e.kext inside PlugIns of IONetworkingFamily.kext), OS X update 10.10.1 will not affect this kext. Hence, no need to install Network driver after update.
Update:3 [12/30/2014] HDMI audio with chameleon
M6H board requires the following for HDMI audio. Needs native or patched AppleHDA.kext.
- org.chameleon.Boot.plist edit (for onboard audio in addition to HDMI audio)
- Framebuffer edit
- AppleHDAController.kext patch
- SSDT edit
2.) Since i had already done manual framebuffer binary edit (described above) using hex editor in order to solve "No Display" issue, i skipped this step.
3.) Can be done using audio_hdmi_hd4600-hda-100_patch.command.
4.) AMI-no_p0p2-HD4600-AMD-Nvidia-A1 worked for me. Since I already had SSDT.aml (ssdtPRGen.ph) inside Extra, I used the downloaded SSDT-1.aml as it is without name change. Mount EFI and add this.
On Restart, U will have both onboard audio and HDMI audio.
Thanks to tonymacx86 for the guides and software for Hackintosh build.
The attached SSDT.aml can be used for 'i5 4670k' build (non-overclocked).