Contribute
Register

Catalina on Asus Zenbook Pro UX580GE

Status
Not open for further replies.
Joined
Feb 4, 2011
Messages
71
Motherboard
Gigabyte GA-Z170N-WiFi
CPU
i7-6700K
Graphics
GT 640
Mac
  1. MacBook Air
  2. MacBook Pro
Mobile Phone
  1. Android
Hello all,

This is not an installation guide it is merely a log of what I've done so far. Once I have a working build I will do a guide with full how to.

res_aeda8bea707148c41589dca8d83d70f6_full.jpg


ASUS ZenBook Pro UX580GE-E2014R Factory Specs:

Processor : Intel i7-8750H (6C / 12T, 2.2GHz, 4.1GHz Turbo, 9MB Cache)
Memory : 16GB 2400MHz DDR4 Soldered
Graphics : Intel UHD Graphics 630 + Nvidia 1050Ti
Display : 15.6” LED-backlit 4K UHD (3840 x 2160) 16:9 touchscreen, color calibration: Delta E < 2, 100% Adobe RGB color gamut
Hard Drive : SAMSUNG PM981 1TB PCIe NVMe (replaced with SAMSUNG EVO Plust 2TB NVMe)
Wireless Network : Intel WiFi (Will replace with DW1830)
Trackpad : ScreenPad 2.0
Audio : ALC295
Camera : VGA webcam
Battery : 71Wh 8-cell lithium-polymer battery
BIOs : 302
Ethernet : ASUS Gigabit Dongle (Realtek RTL8153)
Connectors : 2 x Type-C™ USB 3.1 Gen 2 (Thunderbolt™ 3) + 2 x Type-A USB 3.1 Gen 2 + 1 x HDMI + 1 x Combo audio jack + 1 x MicroSD card slot

Status of what is working and what not
Intel i7-8750H Power Management Working
Intel UHD 630 Working
Nvidia 1050Ti No drivers available for Catalina - Disabled
4K Screen Working with HiDPI
HDMI It is connected to Nvidia 1050Ti so will not work
ScreenPad It is connected to Nvidia 1050Ti so will not work
Battery Working
Audio ALC295 Working
WiFi Will be replaced
Ethernet Dongle Working - Requires Realtek RTL8153 drivers
Type-A USB3.1 Working (Hotplug and extra current)
Type-C USB3.1/Thunderbolt 3 Works only if devices are connected at boot - work still needs to be done
MicroSD Reader Working
Camera Working OOB
Ambient Light Sensor Work in progress
Keyboard Backlight Working
Trackpad Work in progress
Function Keys Working
Touch Screen Working with VoodooI2C
Fingerprint Reader Will never work with OsX


I've created a USB with Catalina using Unibeast 10.0.0 .

First attempts to install Catalina were unsuccessful as I got stuck with NVME errors as PM981 is unsupported wit OsX so I replaced it with a Samsung Evo Plus 2TB NVME. Next attempts to install Catalina got stuck to "[ PCI configuration end, bridges 5, devices 20 ]".

At this point I went and created a USB with Mojave just to see if it gets also stuck at the same point but it got to installer screen without any issues so I got back to investigating why Catalina gets stuck. After reading many forum posts and looking at DSDT code I've found that if I enable PluginType, injecting UHD 630 properties (with enable-hdmi20 present as without I got black screens of KPs) with Devices -> Properties to get Whathevergreen do its stuff and added SSDT-EC with fake EC I get to installer.

I've installed Catalina, Windows 10 with Clover as bootloader.

NOTE - All the patching to DSDT and SSDT is done with hotpatching.

At this point I had a Catalina that booted with full CPU power management and with a working UHD 630 HiDPI 4K screen without Sleep or backlit control.

With SSDT-PNLF that is shipped with Whatevergreen I got black screen at boot but if I waited for the system to get to the point where the screen gets dimmed in preparation to sleep the image appeared on the screen. Digging into this issue I've fount that the SSDT did not inject properly the CLF value for Coffe Lake UHD 630 so I replaced the SSDT with another one, an older and simplified one, and the issue disappeared.

Next step I took was to get the Sleep working and to do so I mapped all the USB ports and got the following map:
Phisical Port Type USB 2 Port USB 3 Port
Left side upper port Type-C USB3.1/Thunderbolt 3 HS13 SS03
Left side bottom port Type-C USB3.1/Thunderbolt 3 HS08 SS04
Right side upper port Type-A USB3.1 HS01 SS01
Right side bottom port Type-A USB3.1 HS02 SS02
Camera Internal HS09
Touch Screen Internal HS12
Bluetooth Internal HS14


Screen Shot 2020-02-28 at 4.30.23 PM.png
Screen Shot 2020-02-28 at 4.30.13 PM.png

Whit this information and following @RehabMan's guide on how to create a proper USB inject using SSDT I've created the SSDT-UIAC and SSDT-USBX and with them in place I've got the laptop to go to sleep (from menu, from lid close and from system sleep as is specified in Energy Saver)

Next I've went and solved (sort of) the audio by injecting layout-id - 3 with Device -> Properties and injecting CodecCommander properties using SSDT-ALC295. The following issues I have to fix at a later time :
- audio is distorted when connecting headphones but is clear on internal speakers - the hot plug of headphone is working so no need for alcplugfix
- the external microphone is not detected when plugged - always the internal microphone is active

Next I've injected RMNE device and added NullEthernet.kext as I'm still waiting for the replacement WiFi to arrive. For the Ethernet dongle I had to install Realtek RTL8153 driver (available on Realtek website) as Catalina has no kext for it (in Mojave is detected without any issue).

For the trackpad I've installed VoodooI2C.kext and it gets loaded but I have to figure out the GPIO pinning to make it work. The VoodooHID was loading but at this point in time is no longer gets loaded so I have to figure out what I did but for not it is not a priority as I want to get the battery working.

For the function keys I've installed AsusSMC and got the audio keys to work (Fn+F1 - mute, Fn+F2 - Vol down and Fn+F3 - Vol up) I will investigate this further.

Any hints or ideas on the things that are still not working or are partial working are welcome.

Attached is a debug dump of what I got at this point. There are 2 config files the config.plist is the "production" with the things that are working and the config-dev.plist is the "development" one that has possible issues.

06.03.2020 Update as per #13
04.03.2020 Update as per #12
03.03.2020 Update as per #11
02.03.2020 Update as per #7
01.03.2020 Update as per #6
 

Attachments

  • debug_24306.zip
    4.5 MB · Views: 151
Last edited:
Hello all,

This is not an installation guide it is merely a log of what I've done so far. Once I have a working build I will do a guide with full how to.

View attachment 452078

ASUS ZenBook Pro UX580GE-E2014R Factory Specs:

Processor : Intel i7-8750H (6C / 12T, 2.2GHz, 4.1GHz Turbo, 9MB Cache)
Memory : 16GB 2400MHz DDR4 Soldered
Graphics : Intel UHD Graphics 630 + Nvidia 1050Ti
Display : 15.6” LED-backlit 4K UHD (3840 x 2160) 16:9 touchscreen, color calibration: Delta E < 2, 100% Adobe RGB color gamut
Hard Drive : SAMSUNG PM981 1TB PCIe NVMe (replaced with SAMSUNG EVO Plust 2TB NVMe)
Wireless Network : Intel WiFi (Will replace with DW1830)
Trackpad : ScreenPad 2.0
Audio : ALC295
Camera : VGA webcam
Battery : 71Wh 8-cell lithium-polymer battery
BIOs : 302
Ethernet : ASUS Gigabit Dongle (Realtek RTL8153)
Connectors : 2 x Type-C™ USB 3.1 Gen 2 (Thunderbolt™ 3) + 2 x Type-A USB 3.1 Gen 2 + 1 x HDMI + 1 x Combo audio jack + 1 x MicroSD card slot

Status of what is working and what not
Intel i7-8750H Power Management Working
Intel UHD 630 Working
Nvidia 1050Ti No drivers available for Catalina - Disabled
4K Screen Working with HiDPI
HDMI Have to check where is connected - if it is connected to 1050Ti then it will not work
ScreenPad Would be a cool thing to have - have to check where is connected and if it is connected to UHD630 then I might have a change of geting it to work
Battery Work in progress
Audio ALC295 Partial - work still needs to be done
WiFi Will be replaced
Ethernet Dongle Working - Requires Realtek RTL8153 drivers
Type-A USB3.1 Working (Hotplug and extra current)
Type-C USB3.1/Thunderbolt 3 Works only if devices are connected at boot - work still needs to be done
MicroSD Reader Not yet tackled
Trackpad Work in progress
Function Keys For now only audio keys are working - work in progress
Touch Screen Working OOB


I've created a USB with Catalina using Unibeast 10.0.0 .

First attempts to install Catalina were unsuccessful as I got stuck with NVME errors as PM981 is unsupported wit OsX so I replaced it with a Samsung Evo Plus 2TB NVME. Next attempts to install Catalina got stuck to "[ PCI configuration end, bridges 5, devices 20 ]".

At this point I went and created a USB with Mojave just to see if it gets also stuck at the same point but it got to installer screen without any issues so I got back to investigating why Catalina gets stuck. After reading many forum posts and looking at DSDT code I've found that if I enable PluginType, injecting UHD 630 properties (with enable-hdmi20 present as without I got black screens of KPs) with Devices -> Properties to get Whathevergreen do its stuff and added SSDT-EC with fake EC I get to installer.

I've installed Catalina, Windows 10 with Clover as bootloader.

NOTE - All the patching to DSDT and SSDT is done with hotpatching.

At this point I had a Catalina that booted with full CPU power management and with a working UHD 630 HiDPI 4K screen without Sleep of backlit control.

With SSDT-PNLF that is shipped with Whatevergreen I got black screen at boot but if I waited for the system to get to the point where the screen gets dimmed in preparation to sleep the image appeared on the screen. Digging into this issue I've fount that the SSDT did not inject properly the CLF value for Coffe Lake UHD 630 so I replaced the SSDT with another one, an older and simplified one, and the issue disappeared.

Next step I took was to get the Sleep working and to do so I mapped all the USB ports and got the following map:
Phisical Port Type USB 2 Port USB 3 Port
Left side upper port Type-C USB3.1/Thunderbolt 3 HS13 SS03
Left side bottom port Type-C USB3.1/Thunderbolt 3 HS08 SS04
Right side upper port Type-A USB3.1 HS01 SS01
Right side bottom port Type-A USB3.1 HS02 SS02
Camera Internal HS09
Touch Screen Internal HS12
Bluetooth Internal HS14


View attachment 452075View attachment 452076
Whit this information and following @RehabMan's guide on how to create a proper USB inject using SSDT I've created the SSDT-UIAC and SSDT-USBX and with them in place I've got the laptop to go to sleep (from menu, from lid close and from system sleep as is specified in Energy Saver)

Next I've went and solved (sort of) the audio by injecting layout-id - 3 with Device -> Properties and injecting CodecCommander properties using SSDT-ALC295. The following issues I have to fix at a later time :
- audio is distorted when connecting headphones but is clear on internal speakers - the hot plug of headphone is working so no need for alcplugfix
- the external microphone is not detected when plugged - always the internal microphone is active

Next I've injected RMNE device and added NullEthernet.kext as I'm still waiting for the replacement WiFi to arrive. For the Ethernet dongle I had to install Realtek RTL8153 driver (available on Realtek website) as Catalina has no kext for it (in Mojave is detected without any issue).

For the trackpad I've installed VoodooI2C.kext and it gets loaded but I have to figure out the GPIO pinning to make it work. The VoodooHID was loading but at this point in time is no longer gets loaded so I have to figure out what I did but for not it is not a priority as I want to get the battery working.

For the function keys I've installed AsusSMC and got the audio keys to work (Fn+F1 - mute, Fn+F2 - Vol down and Fn+F3 - Vol up) I will investigate this further.

Any hints or ideas on the things that are still not working or are partial working are welcome.

Attached is a debug dump of what I got at this point. There are 2 config files the config.plist is the "production" with the things that are working and the config-dev.plist is the "development" one that has possible issues.
AsusSMC github has a list of patches to patch your DSDT for FN buttons

audio is distorted when connecting headphones but is clear on internal speakers
always a fun one to fix, you may need hda-verb and pass appropriate fix, then you can create an ALCPlugFix to sort that out

example, on the link above look at main.m file in ALCPlugFix and scroll down to:
hda-verb 0x1a SET_PIN_WIDGET_CONTROL 0x24
hda-verb 0x15 SET_UNSOLICITED_ENABLE 0x83

after installing hda-verb to /usr/local/bin and run those commands to see if that fixes your issue, if not, you will need to check your codec_dump from linux

had the same issue on mine, tried all layout-ids form here:

i found that some layout's worked better than other, and the one i ended up using, hdmi, speaker, internal mic, headphones worked, apart from distort on headphones, ran similar commands above, that fixed it, so editied the main.c file, saved, and xcode build the ALCplugFix and has worked great ever since
 
@Feartech thank you for the hints.

I will check the ALCPlugFix and see if the hda-verb fixes the headphone issue.

I tested all layouts from acidanthera for ALC295 and 3 is the only one that gives good output sound on one of the outputs - speakers the rest have crackling/distorted on both outputs but some have also hotswap mic detection so I will dig into that later.

For now I'm concentrating on battery as the patches that are available in MacIASL do not work because the way the ACPI device/methods related to battery are implemented in this laptop model. Some of the variables/methods are missing or have different names so I'm right now working on identifying them and find a way to make it work.
 
@Feartech thank you for the hints.

I will check the ALCPlugFix and see if the hda-verb fixes the headphone issue.

I tested all layouts from acidanthera for ALC295 and 3 is the only one that gives good output sound on one of the outputs - speakers the rest have crackling/distorted on both outputs but some have also hotswap mic detection so I will dig into that later.

For now I'm concentrating on battery as the patches that are available in MacIASL do not work because the way the ACPI device/methods related to battery are implemented in this laptop model. Some of the variables/methods are missing or have different names so I'm right now working on identifying them and find a way to make it work.
i didn't need to patch dsdt for working battery status

only virtualsmc and smcbatterymanager.kext

maybe xosi.dsl is required https://github.com/RehabMan/OS-X-USB-Inject-All/blob/master/SSDT-XOSI.dsl
save as .aml may make it work
 
I have no patches for battery on my other laptop (ASUS ZenBook UX330UA) to have working battery info but with this one it seems that is not that easy.

I've tested the _OSI to XOSI patch and no change in the behavior of the system. I will add it to my working build as it dose not hurt in any way to the way the system works and might be useful for future OsX updates.
 
Update:
- Checked ScreenPad and it is connected to Nvidia 1050Ti so it is a no go for Hackintosh.
- PCIe microSD Cardreader is now working with the help of spoofing Apple's only one available PCIe SD Cardreader. Tested it with microSD of 256Mb, 16Gb and 32Gb, I do not have SDXC available but is should work.

Attached is the debug achieve with the latest build status
 

Attachments

  • debug_4722.zip
    4.4 MB · Views: 73
Update:
- HDMI Port is also connected to Nvidia 1050Ti so it is a no go for Hackintosh
 
Update:
- HDMI Port is also connected to Nvidia 1050Ti so it is a no go for Hackintosh
unless you go back to using High Sierra and use web drivers
 
It is true what you are saying but this is an Optimus (and from my knowledge is not compatible with OsX) laptop with no option in BIOS to "force" the laptop to work only with dGPU.

After I have a working build for Catalina (same build should be posible to work also with Mojave) I will do a test run with High Sierra and see if I can make it work with Nvidia WebDrivers (posible it requires a moded BIOS to "disable" Optimus).
 
It is true what you are saying but this is an Optimus (and from my knowledge is not compatible with OsX) laptop with no option in BIOS to "force" the laptop to work only with dGPU.

After I have a working build for Catalina (same build should be posible to work also with Mojave) I will do a test run with High Sierra and see if I can make it work with Nvidia WebDrivers (posible it requires a moded BIOS to "disable" Optimus).
yes, optimus won't work, but the web drivers may work in outputting via your hdmi
 
Status
Not open for further replies.
Back
Top