Contribute
Register

[Guide][New VoodooI2C] Asus Vivobook S15 X510UAR 10.13+

Regarding USB ports SSDT: SSDT-UIAC-ALL.aml (in EFI/Clover/ACPI/patched) is incredibly blown-up (2 kb, 567 lines) and has all sorts of ports which are in there for other mainboards, NOT our Asus Vivobooks! I had already streamlined it before but it obviously got lost, so here's the link again (SSDT-UIAC-ALL.aml, only 424 bytes, 139 lines):

SSDT-UIAC-ALL.aml.zip

Backup the existing SSDT-UIAC-ALL.aml and copy the optimized SSDT-UIAC-ALL.aml into EFI/Clover/ACPI/patched, reboot.

You can test yourself by (one after an other or at the same time) inserting one or three USB 2.0 mass storage device(s) to all USB ports, eject, then do the same with one or three USB 3.0 mass storage device(s) to all USB ports, and also a USB 3.0/ 3.1 device to the small USB-C port on the right.

If all mount, and the webcam (which is internally connected via a USB port, too) works, too, you're all fine.

Needless to say any less code which Clover will have to parse or even load into memory will make our HackBooks run smoother .. ;)
I have noticed that in the original UIAC provided by the git there is no SS03 port, and same in your UIAC. I don't know about other models, but mine, which is X510UA-BQ490, does not seem to have a switch for the USBC port for 3.0. So with yours, or the original, if I plug in the USB3 up, I get it recognized as 2.0 on both Hackintool and on System Profiler with speed down as 480mps. I made a patch to inject the switch in SS02, but that only made the laptop impossible to recognize USB3 in up position at all. Then I injected port SS03, both SS02 and SS03 with USBConnector=10 and everything works as it should with 5gps in System Profiler. (But then with a 2.0 device, there seems to be a switch, and no additional HSxx port is needed for 2.0 up or down...)
At first I thought it might be because I don't actually have a USBC, but an A to C gender, but then even with a gender, I should have full speed if I have the correct configuration, just like how @RehabMan used a USB3 hub in his USB guide.
Can you please check if my settings are correct or if they even go well with yours? Also, I have 255 for HS04 because I have a USB dongle for WiFi. Recognized as an internal device, it does not cause any shutdown issues. I do not know who originally came up with this idea, but I got this information from SuperRaptor at x86.co.kr, one of the largest Hackintosh communities in Korea. Sadly, with HS04 as 255, my UIAC isn't the "perfectly" correct configuration...until I get a proper WiFi card.
 

Attachments

  • SSDT-UIAC.aml
    458 bytes · Views: 80
@bugsb @whatnameisit
On Asus Zenbook, SSDT-UIAC and USBInjectAll is not needed! Asus has already defined the right ports in DSDT according to ACPI specs. I'm running without SSDT-UIAC/USBInjectAll, and everything works fine!

You guys should try it too
 
@baohiep
From the SSDT-UIAC guide,
Not only does a custom SSDT allow you to avoid the port limit patch, but disabling USB ports that are not used can have some power saving properties, and can avoid bugs with sleep, restart, or shutdown.
And this is so true. Even though I have "misconfigured" my SSDT, I get no shutdown issues with my USB dongle. This is why we create USBPorts.kext or SSDT-UIAC.aml in laptops...although for desktops it's definitely to kill unnecessary ports to be within the 15 port limit.
 
@whatnameisit Asus does disable unused ports in DSDT. To check, search for
Code:
_SB.PCI0.XHC.RHUB.****
where **** is HS01, HS02, SS01, etc., then look for method _UPC. There are four bytes: connectable, type, reserved0, reserved1 (according to ACPI specs). For unused ports, the first byte (connectable) is zero, which means the port is disabled.

To double-check this, boot without SSDT-UIAC/USBInjectAll, then use IORegistryEditor to check. You should see that only used ports are injected.

Regarding sleep/restart/shutdown problems, I have none of them.

Even if you still want USBInjectAll, default configuration in DSDT can still be used as a template for SSDT-UIAC.
 
@baohiep, for now with the USB dongle, I have issues if I don't patch my USB configuration, but after I replace the stock WiFi card with a broadcom one, I'll check with my DSDT and IOReg. Thanks for the info!
 
@bugsb @whatnameisit
On Asus Zenbook, SSDT-UIAC and USBInjectAll is not needed! Asus has already defined the right ports in DSDT according to ACPI specs. I'm running without SSDT-UIAC/USBInjectAll, and everything works fine!

You guys should try it too
Very helpful, confirmed - thank you, @baohiep! The less kexts and SSDTs the better. Now I can use my Lenovo FRU 04X6020 w/o SSDT, which was NOT possible w/o at first BT not working correctly anymore then macOS crashing after a few sleep/ wake cycles. I have been testing for a week - all fine!

(also: have been testing hibernate today which does NOT work for me - am about to write a summary next)
 
Hey folks, does hibernate (aka "Safe Sleep" in Apple terms) work for you?

Even though saintno1997 writes that supposedly it does, for me it doesn't. Here's what's happening:

When I force-invoke hibernate via DeepSleep latest version 2.4, macOS powers down all the way until even the LED on the right does not bling anymore.

I wait a while then power back on. Clover UI displays "Boot form macOS (hibernated)", but before it really starts to boot -> full crash & reboot.

Here's all I tried:
- High Sierra and Mojave
- hibernatemode set to either 3 or 25
- made sure that /private/var/vm/sleepimage is a file not a folder and that it is actually being written (file date and size)
- stock saintno1997/ tctien342 EFI v.9 folder with MacBookPro11,1 smbios sysdef
- my EFI folder based on tctien342's EFI v.9 + all kexts and Clover updated + MacBookPro14,1 smbios sysdef
- kexts only present in Clover/kexts/Other, and kexts also installed to /L/E
- only HibernationFixup.kext active, or only HibernationFixup enabled in Clover config.plist / Boot, or both
- several other Hibernation options active in Clover config.plist / Boot

What I did not try:
- changed the "darkwake" parameters
- changed anything NVRAM related like AptioMemoryFix.efi (tctien commit) vs. AptioMemoryFix-64.efi (Clover)

For now I'm back to hibernatemode 0

Who does hibernate work for? @saintno1997, @baohiep, @ anybody?

Mind that you DO need to see "Boot form macOS (hibernated)" in Clover, and that macOS then does need to boot all the way back into your Desktop! On a real Mac you should see a segmented progress bar when your Mac wakes from safe sleep.

For testing best use DeepSleep 2.4.

I opened an issue about this on github for more productive trouble shooting.
 
Last edited:
I can confirm this issue with the 309 ver. Had to rollback to 308.
please you have fixed your NVIDIA Graphic card (940MX)
 
no issues neither with High Sierra latest Security Update 2019-03 nor with Mojave 10.14.5 update - all smooth.
 
Folks, does any of you ever experience a black screen when waking up from sleep, requiring you to power off (long press on power button) and power back on?
 
Back
Top