Contribute
Register

[Guide] ASUS Zenbook UX310UA (& UX310UQK) macOS Mojave / Catalina with Clover (& Big Sur / Monterey using OpenCore EFI) Installation Guide

Status
Not open for further replies.
Thank you again, Ben, for your patience and constant advice,
1 when I modify the DSDT as above, it gave me 7 erros, so I didn't save it.
2 That return (Zero) touch seems working and cure only part of the problem I have, it secures me to use the internal keyboard to type ( otherwise as soon as I KU/load the VoodooI2C in the s/l/e, the keyboard will be lost.
3 whenever I add the VoodooI2C, the booting is extremely long, and mouse is snailing and OS less responsive.
4 If with DSDT, there will be no Kernel panic when loading/KU I2C.kext.
5 I always do the DSDT first and install the VoodooI2C afterwards, I will reverse and try again ( Voodoo first, cache rebuilding, patch afterward)
6 The IOreg I uploaded last time is without the Voodoo I2C injection, now I upload it again with the kext.
7 The DSDT I patched this time:

[bat] Asus N55SL/VivoBook Battery (requires ACPIBatteryManager.kext)

[igpu] Brightness fix

[sys] add IMEI

[sys] Fix _WAK Argo v2

[sys] Fix Mutex with non-zero SyncLevel

[sys] HPET Fix

VoodooI2C repo: window 2015 patch, not the 2012

[sys] RTC Fix

[sys] Skylake LPC ( I didn't do this)

[sys] SMBUS Fix

[usb] 7-series/8-series USB

[usb] USB3 _PRW 0x6D Skylake (instant wake)

8 my understanding is: in general, load the kext in Clover, if not working, then use Kext utility to install into S/L/E or L/E. Do the DSDT patch before adding any new Kext.

Pardon me if I still didn't get it working. and appreciate your assist always.
Sorry, your DSDT won't compile with the suggested change because I accidentally copied a code for I2C1, instead of I2C0.
Try changing the mentioned code to this:
Code:
    Scope (_SB.PCI0)
    {
        Device (I2C0)
        {
            Name (LINK, "\\_SB.PCI0.I2C0")
            Method (_PSC, 0, NotSerialized)  // _PSC: Power State Current
            {
                Return (GETD (SB10))
            }

            Method (_PS0, 0, NotSerialized)  // _PS0: Power State 0
            {
                LPD0 (SB10)
            }

            Method (_PS3, 0, NotSerialized)  // _PS3: Power State 3
            {
                LPD3 (SB10)
            }

            If (LNotEqual (SMD0, 0x02))
            {
                Name (_HID, "INT3442")  // _HID: Hardware ID
                Method (_HRV, 0, NotSerialized)  // _HRV: Hardware Revision
                {
                    Return (LHRV (SB10))
                }

                Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
                {
                    Return (LCRS (SMD0, SB00, SIR0))
                }

                Method (_STA, 0, NotSerialized)  // _STA: Status
                {
                    Return (LSTA (SMD0))
                }
            }

            If (LEqual (SMD0, 0x02))
            {
                Name (_ADR, 0x00150000)  // _ADR: Address
                Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
                {
                    If (PCIC (Arg0))
                    {
                        Return (PCID (Arg0, Arg1, Arg2, Arg3))
                    }

                    Return (Buffer (One)
                    {
                         0x00                                        
                    })
                }
            }
        }
    }


Are you sure VoodooI2C killed your keyboard/mouse? I think the computer just froze, not something specific to keyboard.

And trackpad is still not working, am I correct? Try again, after you modify I2C0 code (no errors there, I checked ;))


Notice you didn't implement CPU PM (off topic here though...)
Read here:
https://www.tonymacx86.com/threads/guide-native-power-management-for-laptops.175801/

Recommended installation order:
1. Patch DSDT if needed
2. Manually load the kext with terminal, verify it's working. (safest way to install the kext, to avoid annoying KP's)
3. If not working, modify DSDT/other stuff in your setup, then try to load the kext again with terminal. Until it's working...
4. Install to /Library/Extensions :)
 
Sorry, your DSDT won't compile with the suggested change because I accidentally copied a code for I2C1, instead of I2C0.
Try changing the mentioned code to this:
Code:
    Scope (_SB.PCI0)
    {
        Device (I2C0)
        {
            Name (LINK, "\\_SB.PCI0.I2C0")
            Method (_PSC, 0, NotSerialized)  // _PSC: Power State Current
            {
                Return (GETD (SB10))
            }

            Method (_PS0, 0, NotSerialized)  // _PS0: Power State 0
            {
                LPD0 (SB10)
            }

            Method (_PS3, 0, NotSerialized)  // _PS3: Power State 3
            {
                LPD3 (SB10)
            }

            If (LNotEqual (SMD0, 0x02))
            {
                Name (_HID, "INT3442")  // _HID: Hardware ID
                Method (_HRV, 0, NotSerialized)  // _HRV: Hardware Revision
                {
                    Return (LHRV (SB10))
                }

                Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
                {
                    Return (LCRS (SMD0, SB00, SIR0))
                }

                Method (_STA, 0, NotSerialized)  // _STA: Status
                {
                    Return (LSTA (SMD0))
                }
            }

            If (LEqual (SMD0, 0x02))
            {
                Name (_ADR, 0x00150000)  // _ADR: Address
                Method (_DSM, 4, Serialized)  // _DSM: Device-Specific Method
                {
                    If (PCIC (Arg0))
                    {
                        Return (PCID (Arg0, Arg1, Arg2, Arg3))
                    }

                    Return (Buffer (One)
                    {
                         0x00                                     
                    })
                }
            }
        }
    }


Are you sure VoodooI2C killed your keyboard/mouse? I think the computer just froze, not something specific to keyboard.

And trackpad is still not working, am I correct? Try again, after you modify I2C0 code (no errors there, I checked ;))


Notice you didn't implement CPU PM (off topic here though...)
Read here:
https://www.tonymacx86.com/threads/guide-native-power-management-for-laptops.175801/

Recommended installation order:
1. Patch DSDT if needed
2. Manually load the kext with terminal, verify it's working. (safest way to install the kext, to avoid annoying KP's)
3. If not working, modify DSDT/other stuff in your setup, then try to load the kext again with terminal. Until it's working...
4. Install to /Library/Extensions :)

Thanks, Still no luck yet,
I copied and pasted the code as you suggested, and now it gave me one error. see attached PNG files.
I actually read and followed your other threads (https://www.tonymacx86.com/threads/wip-voodooi2c-i2c-trackpad-limited-support.204227/) well before our conversation, I thought yours are great, clear and I did follow them, but still I can't make it work.

I'm pretty sure it's the keyboard and/or mouse, not frozen OS. I reproduced them many many times ( I put lots of time on it, but I'm no computer guy, that's likely the root cause of my failure),
I will look at the CPU PM thing, I read Mr. Rehabman's Laptop FAQ and DSDT guides also a few times by now. There could be things that I haven't got it, I guess.

I will keep working on this trackpad, cause if that won't work, it will be meaningless for me to use this Hack-top (in my case.) and I will keep you posted.
 

Attachments

  • beforecode.png
    beforecode.png
    241.8 KB · Views: 175
  • aftercodemodify.png
    aftercodemodify.png
    286 KB · Views: 192
Thanks, Still no luck yet,
I copied and pasted the code as you suggested, and now it gave me one error. see attached PNG files.
I actually read and followed your other threads (https://www.tonymacx86.com/threads/wip-voodooi2c-i2c-trackpad-limited-support.204227/) well before our conversation, I thought yours are great, clear and I did follow them, but still I can't make it work.

I'm pretty sure it's the keyboard and/or mouse, not frozen OS. I reproduced them many many times ( I put lots of time on it, but I'm no computer guy, that's likely the root cause of my failure),
I will look at the CPU PM thing, I read Mr. Rehabman's Laptop FAQ and DSDT guides also a few times by now. There could be things that I haven't got it, I guess.

I will keep working on this trackpad, cause if that won't work, it will be meaningless for me to use this Hack-top (in my case.) and I will keep you posted.
I don't think this error is related to this change in DSDT.

Please attach current DSDT with patches (Without the I2C0 change which caused the error. preferably dsl, of course) so I can check it :)

You may try to connect an external keyboard to test :)
 
I don't think this error is related to this change in DSDT.

Please attach current DSDT with patches (Without the I2C0 change which caused the error. preferably dsl, of course) so I can check it :)

You may try to connect an external keyboard to test :)
Again, thank you very much, all the way to assist so long:thumbup: here I attached DSDT without the I2C0 change. please help again:)
 

Attachments

  • DSDT.dsl
    1.2 MB · Views: 213
Again, thank you very much, all the way to assist so long:thumbup: here I attached DSDT without the I2C0 change. please help again:)
Happy to help!
All good here after this change, have a look :)

Try this DSDT (compile to aml before :p), reply with a new copy of IOReg if not working yet.
 

Attachments

  • DSDT.dsl
    1.2 MB · Views: 207
Thanks, Ben, see attached IOreg file, I hope this would be the last try, I felt shame of myself that still can't make it work with so many help/tips from you. :banghead: I save the DST to aml and no errors and smooth,
1 I terminal load the Voodooi2c.kext and it suggest loaded ( same as before, I accomplished before)
2 I used KCPM Utility Pro install it to L/E as you suggest, I rebuild the system and kext cache, But the trackpad didn't work, even after two times of rebooting. but no any complaints, and smooth running OS system.
3 so I deleted the kext from L/E and re-installed it to S/L/E, again rebuilding cache and rebooting, not working, plus I got sluggish USB mouse again ( funny action of the mouse), which I encountered in the past.
4 I aslo attached my S/L/E screen shot, suggesting that I installed it and deleted the stock AppleLPC....kext thing.
5 two things I failed to mention are: my latop is touchscreen and I had windows 10 installed as well ( I install the OS first and then the windows)
Thank you again, :O
 

Attachments

  • MacBook Air.ioreg
    3.8 MB · Views: 173
  • VoodooI2C.kextstatus.png
    VoodooI2C.kextstatus.png
    341.8 KB · Views: 184
Thanks, Ben, see attached IOreg file, I hope this would be the last try, I felt shame of myself that still can't make it work with so many help/tips from you. :banghead: I save the DST to aml and no errors and smooth,
1 I terminal load the Voodooi2c.kext and it suggest loaded ( same as before, I accomplished before)
2 I used KCPM Utility Pro install it to L/E as you suggest, I rebuild the system and kext cache, But the trackpad didn't work, even after two times of rebooting. but no any complaints, and smooth running OS system.
3 so I deleted the kext from L/E and re-installed it to S/L/E, again rebuilding cache and rebooting, not working, plus I got sluggish USB mouse again ( funny action of the mouse), which I encountered in the past.
4 I aslo attached my S/L/E screen shot, suggesting that I installed it and deleted the stock AppleLPC....kext thing.
5 two things I failed to mention are: my latop is touchscreen and I had windows 10 installed as well ( I install the OS first and then the windows)
Thank you again, :O
Please try the attached kext.

Did you remove AppleLPC? Or AppleIntelLpss...?
 

Attachments

  • VoodooI2C.kext.zip
    80.7 KB · Views: 104
Last edited:
Please try the attached kext.

Did you remove AppleLPC? Or AppleIntelLpss...?
Thank you Ben, I did remove all 3 AppleHPM,AppleIntelLpssI2C and AppleIntelLpssI2CController kexts ( from very beginning of my attempt month back)
This time, still no luck, I installed in L/E first, not working, so delete and install to S/L/E, still not working, delete and copy it to Clover folder, not working. in all conditions, , there is no any complaints or sluggish this round, seems very smooth.

Then I deleted it again and in terminal, load it again
it echos as: VooDooI2C.kext has no Info.plist. but I checked file and it has such file there, see attached PNG.

So quote from the Senator xxx, " You can't fix Stupid" ( about the Euaqfax breech news), It must be my problem that I somewhere did not do it right,:banghead: ( Like I didn't use iasil 6.1 when I did the DSDT patch and can't fix errors)

Rehabman, you are all great and thank you again for the help.:thumbup::clap:

I had struggling with it for more than 2 months. last time round dating back a few years, when the OS 10.7 was around, I tried with Asus eepc, and I did all the way until the end that I can't get the CE/QI working then,..:banghead:..:thumbdown

Don't waste your time to dig it for me now, I will cool down a bit, find a time later and re-start from scratch ( format the SSD and install the OS 10.12.6 again step by step...:beachball:. see what I can do.
I will keep you posted for sure.
Have a nice long weekend!:)
 

Attachments

  • VoodooI2C.kextstatusv2.png
    VoodooI2C.kextstatusv2.png
    95.4 KB · Views: 169
Thank you Ben, I did remove all 3 AppleHPM,AppleIntelLpssI2C and AppleIntelLpssI2CController kexts ( from very beginning of my attempt month back)
This time, still no luck, I installed in L/E first, not working, so delete and install to S/L/E, still not working, delete and copy it to Clover folder, not working. in all conditions, , there is no any complaints or sluggish this round, seems very smooth.

Then I deleted it again and in terminal, load it again
it echos as: VooDooI2C.kext has no Info.plist. but I checked file and it has such file there, see attached PNG.

So quote from the Senator xxx, " You can't fix Stupid" ( about the Euaqfax breech news), It must be my problem that I somewhere did not do it right,:banghead: ( Like I didn't use iasil 6.1 when I did the DSDT patch and can't fix errors)

Rehabman, you are all great and thank you again for the help.:thumbup::clap:

I had struggling with it for more than 2 months. last time round dating back a few years, when the OS 10.7 was around, I tried with Asus eepc, and I did all the way until the end that I can't get the CE/QI working then,..:banghead:..:thumbdown

Don't waste your time to dig it for me now, I will cool down a bit, find a time later and re-start from scratch ( format the SSD and install the OS 10.12.6 again step by step...:beachball:. see what I can do.
I will keep you posted for sure.
Have a nice long weekend!:)
Don't say stupid - many users experience problems, not just you. You can't say every one of them is stupid, I'm sure they, and you, are very clever. Everyone need guidance, you can't be good in anything. :

Maybe this kext got corrupt during upload/download/whatever, I don't know...
Try downloading the source code from here, then perform 2 changes:
https://github.com/alexandred/VoodooI2C

1. Change "ELAN0651" to "ELAN1200" in VoodooI2C.cpp, line 718.
2. Change 'uint16_t' to 'uint32_t' in VoodooPrecisionTouchpadDevice.cpp, line 52.

Another thing to check out: Re-extract ACPI using Clover F4, then re-patch it. It's known to do some magic :p
A fresh install as you suggested may also help.

Note: A rewrite of VoodooI2C is currently happening, to make it work better, smoother, more efficiently and much more stable.
Worth to have a look once a stable version of it is released (Even if you already make it work).
 
Don't say stupid - many users experience problems, not just you. You can't say every one of them is stupid, I'm sure they, and you, are very clever. Everyone need guidance, you can't be good in anything. :

Maybe this kext got corrupt during upload/download/whatever, I don't know...
Try downloading the source code from here, then perform 2 changes:
https://github.com/alexandred/VoodooI2C

1. Change "ELAN0651" to "ELAN1200" in VoodooI2C.cpp, line 718.
2. Change 'uint16_t' to 'uint32_t' in VoodooPrecisionTouchpadDevice.cpp, line 52.

Another thing to check out: Re-extract ACPI using Clover F4, then re-patch it. It's known to do some magic :p
A fresh install as you suggested may also help.

Note: A rewrite of VoodooI2C is currently happening, to make it work better, smoother, more efficiently and much more stable.
Worth to have a look once a stable version of it is released (Even if you already make it work).
Thank you, Ben, I will give it a try and keep you posted, Cheers!,:)
Update:
I made it work by downloading your file again ( I don't quite know the source code thing:D) and unzipped it differently, ( I assumed that I didn't unzip it correctly, because I have extra layer folders,). A big thanks for your tireless guidance, I'm so happy now;), that i can use it without external USB mouse.
You're great,:thumbup::thumbup::thumbup:. thank you and looking forward for your re-written of kext:)
 
Last edited:
Status
Not open for further replies.
Back
Top