Home

Awesome

ASUS UX32VD Hackintosh

Guide about installing macOS Big Sur on ASUS UX32VD Laptop

UX32VD Hackintosh

Information

This Hackintosh was build with help of danieleds/Asus-UX32VD-Hackintosh repository and OpenCore guide Laptop Ivy Bridge as base.

As OpenCore requires to move from static DSDT patching to dynamic SSDT patching the Hackintosh was rebuilt from scratch with a lot of time and effort.

<a href="https://www.buymeacoffee.com/rafaelmaeuer"><img src="https://img.buymeacoffee.com/button-api/?text=Buy me a coffee&emoji=☕️&slug=rafaelmaeuer&button_colour=F2F2F2&font_colour=000000&font_family=Lato&outline_colour=000000&coffee_colour=FFDD00"></a>


Table of Contents


BIOS

Hardware

This Hackintosh is based on an ASUS UX32VD-R4002V Laptop, with an Intel Core i7-3517U Processor and a NVIDIA GeForce GT 620M graphics card.

RAM

The default 2GB of RAM were replaced with an equivalent 8GB DDR3 module to get 10GB of RAM.

Graphics

The NVIDIA GeForce GT 620M was disabled in favour of the Ivy Bridge Intel HD 4000 graphics card which is renamed to iGPU with a SSDT patch.

WIFI / Bluetooth

As the default WiFi/BT card is not supported by macOS, it is replaced by a Broadcom BCM4352 Combo card.
Notice that antenna-adapters are needed when replacing the default card due to different connector sizes: Upgrading ASUS UX32VD Wireless Card - Antenna Connector.

Ethernet

The default USB-ethernet adapter was replaced with an UGREEN 20256 Adapter after it stopped working. Benefits of the new adapter are USB3 and Gigabit speed.

Restrictions

The following devices or features are not working or disabled:

The following devices are working, depending on used software


Install macOS

1. Create OpenCore Drive

a) Preparation

b) Install OpenCore

c) Add Config and Kexts

2. Create macOS Installer Drive

To create a working macOS Installer boot drive, you will need the following:

a) Download macOS Installer

b) Create Installer Stick

c) Patch Installer Stick

Enable installation on unsupported hardware:


3. Install macOS


4. Post Installation

a) OpenCore

b) System-Tools

c) AsusSMCDaemon

d) Karabiner Elements

e) Audio Boost

As the maximum audio volume with AppleALC can be insufficient, Boom 2 is used as system-wide volume booster.

f) Drivers

Install the driver for the appropriate Ethernet-Adapter from Driver folder

Note: Unless Asix ethernet adapters are unsupported on Big Sur avoid install. Better extract kext with tools like The Unarchiver and inject directly with OC.


Update macOS


Dualboot Ubuntu

A minimal Ubuntu 20.04 can be installed on the internal 24GB SSD:


OpenCore Config

For adding your SSDTs, Kexts and Firmware Drivers to create snapshots of your populated EFI folder (link) use corpnewt/ProperTree.

Add ACPI patches

To manually add ACPI patches do the following

Add kexts

To manually add kexts do the following

Sanity Checker

The OpenCore configuration can be validated by uploading the config.plist to OpenCore Sanity Checker in order to perform a sanity check. It helps to find problems in the configuration and to optimize the setup.


Troubleshooting

Tips and tricks to solve already known problems

Graphics Glitch

If display shows colorful/graphic glitches, close the lid, wait for sleep and reopen.

Reset NVRAM

NVRAM can be reset from OpenCanopy boot picker if auxiliary-entries are displayed in OpenCore (Link)

Default Boot Option

A default boot entry can be set with ctrl + enter if the option is allowed in OpenCore (Link)

Add Boot Entry

To add boot entry for OpenCore enter bios (F2 on post)

Boot Resolution

The display resolution during boot is very low, full display resolution (1080p) is only reached on the last boot stage

Boot Theme

As the best possible boot resolution with 1280x800 has a width distortion of 1.28 (1024/800) a custom boot theme is used with inverse distorted images to compensate. Modify Images:


Resources

Useful information, tips and tutorials used to create this Hackintosh

ACPI Patches

With Clover most of the ACPI patches are applied in main DSDT (Differentiated System Description Table) with a static patching method (extract DSDT -> decompile -> apply patches -> compile -> use patched DSDT). With OpenCore dynamic ACPI-patching is the preferred method (all changes are applied on the fly with current system-DSDT). Therefore all patches must be served as SSDT (Secondary System Description Table). Read more in Getting started with ACPI.

Check out the ACPI Patching section for more details about DSDT, SSDT and their creation process.


Device Properties

Setting the correct device properties is necessary for tha hardware to work as expected.

iGPU

For iGPU the correct platform-id 09006601 is necessary to complete the last boot-stage (to be used with some devices that have eDP connected monitor). In config.plist -> DeviceProperties add:

AppleALC

In order to get sound working properly, the correct layout-id must be used with AppleALC (see Fixing audio with AppleALC). The Audio-Codec on UX32VD is Realtek ALC269 and shows up in AppleALC/wiki/Supported-codecs. Instead of testing all possible IDs, working configs of similar devices were tested using ALC269/Info.plist:

Device-PresetAppleALC IDAudio OutputOutput SwitchMicrophoneFeature
Asus K53SJ, Asus G73salcid=3𐄂-
Asus Vivobook S200CEalcid=12𐄂-
Asus Vivobook S300CAalcid=19-
Asus A45A 269VB1alcid=45Line-In
Asus K53SJ Modalcid=93𐄂Mic-Switch

As Asus A45A 269VB1 has the closest result to UX32VD alcid=45 is used for this Hackintosh.
In config.plist -> DeviceProperties add:


Advanced Config

The following configurations are not essential for the Hackintosh to work, but they improve functionality to get as close to a real MacBook as possible.

USB Mapping

Per default USB ist working, but not for the port besides AC-Input. Therefore an USB-Mapping is created following the Dortania USB-Mapping Guide. First the necessary ACPI-renames need to be determined by checking-what-renames-you-need. With MacBookAir5,x and older the SMBIOS needs renames for XHC1, EHC1 and EHC2.

  1. In config.plist -> ACPI -> Patch add following renames:

    • XHC1 to SHCI (find 58484331 replace 53484349)
    • EHC1 to EH01 (find 45484331 replace 45483031)
    • EHC1 to EH02 (find 45484332 replace 45483032)
  2. Enable USB Port-Limit patch with config.plist -> Kernel -> Quirks -> XhciPortLimit -> True

  3. Add USBInjectAll.kext from Config/USB folder to OpenCore (EFI/OC/kexts and config.plist)

  4. Reboot an check the USB renaming works with Hackintool -> USB tab

In the next step the Intel USB Mapping method is used to determine all USB ports with help of corpnewt/USBMap tool:

  1. Plug the following into every port once and give it a name:
    • USB2-Stick
    • USB3-Stick
  2. Set all internal adapters to: 255
  3. Set all external adapters to: 3
  4. Export USBMap.kext

The last steps for a working USB-Mapping are:

  1. Replace USBInjectAll.kext with USBMap.kext in OpenCore (EFI/OC/kexts and config.plist)
  2. Disable the USB Port-Limit patch: config.plist -> Kernel -> Quirks -> XhciPortLimit -> False
  3. Reboot, all USB-Ports should work as expected

PCI Entries

This is most of all a cosmetic step, adding PCI-entries will list the internal devices in SystemInformation -> PCI section. But it helps to verify which devices have a working driver installed and which don't.

FileVault

As UX32VD is a portable device, sensitive data can be stored on it, which should be protected. Enabling FileVault is a good step towards better security and privacy of stored data. Read the Dortania/FileVault guide to get started with all required settings in config.plist for FileVault ot work as expected.

Before starting with FileVault activation, make sure that:

Make a backup of your system first, then follow the official Turn on and set up FileVault guide from Apple. If there is an Internal Error on FileVault activation, do the following:

If the system gets stuck with an Encryption paused message after a few minutes, continue with the following steps:

HiDPI

As the native 1080p resolution can result in too small UI, enabling HiDPI-mode can solve/change this problem. As macOS doesn't support flexible UI scaling like Windows (e.g. 125%), the only option is to force maximum graphic card resolution and use half of the resolution in HiDPI-mode.

As 1280x720 is the highest possible HiDPI-resolution, the UI will appear quite big, so the perfect step between is missing. But every other configuration will result in unsharp or pixelized resolutions. To enable 1280x720 in HiDPI-resolution:

  1. Follow instructions from How To Enable HiDPI Mode In MacOS:

    sudo defaults write /Library/Preferences/com.apple.windowserver.plist DisplayResolutionEnabled -bool true
    
  2. Download and Install SwitchResX and open System Preferences -> SwitchResX

  3. Select Integrated Display -> Available Resolutions -> 1280 x 720, 60 Hz (HiDPI)

  4. The display resolution should change immediately, close SwitchResX and save settings


Kexts in use

Patch Engine: acidanthera/Lilu

Graphics: acidanthera/WhateverGreen

WiFi: acidanthera/AirportBrcmFixup

Bluetooth: acidanthera/BrcmPatchRAM

Sensors: acidanthera/VirtualSMC

Audio: acidanthera/AppleALC

TouchPad: BAndysc/VoodooPS2

ALS/FN-Keys: hieplpvip/AsusSMC

USB

USB-Ethernet

Card-Reader


Driver and Tools

Driver

Hackintosh Tools

ACPI-Patching Tools


Useful Links

Guides

Clover

OpenCore

ACPI

PCI

Sleep

Power Management

Security

Errors

FN-Keys

Card-Reader

Linux