Hackintosh Installation Guide for Asus VivoBook S10UA-DS71 and macOS 14.4.1 "Sonoma"
Please consider donating to support this project. Thanks!
- Intel Core i7-8550U [Kaby Lake Refresh] Processor 1.8 GHz (Turbo up to 4.0 GHz)
- Intel UHD Graphics 620
- Intel Dual Band Wireless-AC 8265
- Conexant Audio CX8050
- Realtek Card Reader (RTL8411B_RTS5226_RTS5227)
- ELAN 1300 Trackpad
This guide is a work in progress and will be updated accordingly.
Note
This system is fully functional now running Sonoma 14.4.1, and I'm beginning to put it through it's paces to find out where the ghosts in the machine are!
After a long hiatus from the hackintosh scene, I'm back in action wasting time trying to get this awful operating system running on this unit again for development purposes.
I've finally managed to get OpenCore running on this machine, after running into nothing but issues with macOS installer failing to load / kernel panic when following other Kaby Lake based configurations and examples. After finally getting the macOS installer to load when trying a prebuilt package for Cofeee Lake instead, I realized that both CpuTscSync.kext
and TSC_sync_margin=0
boot arg are needed to resolve this!
- Built the macOS USB installer using OCLP for macOS Sonoma 14.4.1
- Note this now requires a USB larger than 16GB!
- Based my initial OpenCore USB installer EFI off the OpenCore NoteBook KabyLake prebuilt package available from olarila.com (thank you to @MaLd0n)
Caution
You have to add CpuTscSync.kext and TSC_sync_margin=0
boot arg or macOS will fail to load!
- After successful install, then copied EFI folder to internal EFI partition and generated SMBIOS for
MacBookPro15,2
- Removed
MaLd0n.aml
file from prebuilt EFI and generated proper ACPI for Kaby Lake and OpenCore (as per dortania guide) using SSDTTime [under Windows] to dump DSDT and ran patches:FixHPET
,FakeEC Laptop
,PluginType
,PNLF
,XOSI
, andFix DMAR
- Generate USB Mapping via USBToolBox [under Windows] and replaced
USBInjectAll.kext
with generatedUTBMap.kext
and USBToolBox.kext- Note you need to insert SD card into reader during USB mapping or SD card reader will fail to function! (in relation to Sinetek-rtsx.kext)
- You should also insert a [USB3.0] device into every port during mapping, including USB-C port!
- Also note this will help fix issues with sleep!
Warning
If using OpenCore Configurator to modify your config.plist
, be aware that the Check Kexts
button/option under the Kernel -> Add
section has the potential to break your config and cause kexts to fail to load for some reason. Avoid using this to prevent headaches!
- Modified OpenCore
config.plist
and tweaked some values the olarila.com prebuilt EFI folder came with:- Modificed the
DeviceProperties
forPciRoot(0x0)/Pci(0x2,0x0)
aka the Intel UHD 620 IGPU; See table below.- This enables proper graphics accelleration/frame buffer with external HDMI output, 4095MB VRAM, and Metal 3 support.
- Changed AppleALC boot arg from
alcid=3
to instead usealcid=13
to better match Conexant Audio CX8050 which also enables internal microphone - Enabled wifi support for the Intel Dual Band Wireless-AC 8265 via the itlwm 2.3.0-alpha version kext.
- Debating if I should set country code via
itlwm_cc=
boot arg
- Debating if I should set country code via
- Enabled bluetooth support for the Intel Dual Band Wireless-AC 8265 via the IntelBluetoothFirmware package and only added
IntelBTPatcher.kext
andIntelBluetoothFirmware.kext
along with theBlueToolFixup.kext
from acidanthera/BrcmPatchRAM (as per these instructions) - Enabled Realtek Card Reader via Sinetek-rtsx.kext
- Note you need to insert SD card into reader during USB mapping or SD card reader will fail to function if using
UTBMap.kext
/USBToolBox.kext
- Note you need to insert SD card into reader during USB mapping or SD card reader will fail to function if using
- Added GPRW Instant Wake Patch to improve sleep
- Not certain if necessary but think sleep had issues if/when USB memory stick mounted when sleeping, and think this seems to help
- Installed and enabled AsusSMC.kext to enable keyboard backlight LEDs
- Requires additional SSDT-KBL.aml added to
config.plist
andEFI/OC/ACPI
to enable- This is a custom SSDT that I developed based off a combination of the [kbl] Kaby Lake/Kaby Lake-R patch and the Fake ALS patch available on the AsusSMC repo (both are required for keyboard backlight to illuminate)
- No additional function key patches were added; Use in conjunction with BrightnessKeys.kext, VirtualSMC, and the
SSDT-PNLF.aml
generated by SSDTTime. - Note that the
SMCLightSensor.kext
should not be installed/enabled as it is unnecessary and might conflict with AsusSMC and theFake ALS
patch. - Gained insight for this SSDT patching from here
- Requires additional SSDT-KBL.aml added to
- Added Wake Property and
SSDT-USBX.aml
USB Power Fix to OpenCore config- Wake from external USB keyboard/mouse still not working.
- Modified OC to use BsxDarkFenceLight1 theme
- Update kexts via kextupdater
- (Optional) Configured OpenCore to boot Linix via OpenLinuxBoot method
- Modificed the
- The
forceRenderStandby=0
boot arg may be needed if kernel panic on sleep occurs (as noted here) - Noticed that
-noDC9
boot arg is present in the Coffee Lake prebuilt EFI, not using currently or sure if needed but making note of it here. - Whatevergreen
igfxfw=2
boot arg causes failure when loading IGPU firmware, do not use! - Whatevergreen
-igfxblr
and/or-igfxblt
boot args will break brightness slider, do not use! - Debating if
-igfxbls
makes any difference in display backlight smoothness, not using currently. - Still tweaking and improving, will update here accordingly.
The following tables display the added PCI devices and their child keys.
Intel UHD 620 Graphics
Key | Type | Value |
---|---|---|
AAPL,ig-platform-id | Data | 00001B59 |
device-id | Data | 16590000 |
framebuffer-con1-alldata | Data | 01050A00 00080000 87010000 02040A00 00080000 87010000 FF000000 01000000 20000000 |
framebuffer-con1-enable | Data | 01000000 |
framebuffer-con2-enable | Data | 01050A00 00080000 87010000 03060A00 00040000 87010000 FF000000 01000000 20000000 |
framebuffer-fbmem | Data | 00009000 |
framebuffer-patch-enable | Data | 01000000 |
framebuffer-stolenmem | Data | 00003001 |
framebuffer-unifiedmem | Data | FFFFFFFF |
enable-metal | Data | 01000000 |