profzei / Matebook-X-Pro-2018

💻 Latest macOS on Huawei Matebook X Pro 2018
Apache License 2.0
371 stars 49 forks source link

Trackpad Occasionally Stops Working After Sleep #46

Closed panda2k closed 3 years ago

panda2k commented 4 years ago

Once I close the lid to sleep my MBXP (2018), there is a chance that once I reawaken it, the trackpad stops working. This isn't a reproducible issue but it is annoying since it requires a full restart. I have already tried to update VoodooI2CHID.kext and VoodooI2C.kext to v2.4.4 but that hasn't fixed the issue. It might be of use to note that if I plug in an external mouse, I am able to control my cursor. I am on Catalina 10.15.6

yamanadamnor commented 4 years ago

I am having the same issue. Also on catalina 10.15.6 and release 1.4.0 from this repo

panda2k commented 4 years ago

I just found the fix. I changed the wakedelay to 1000 in /efi/boot/oc/Kexts/VoodooPS2Controller.kext/Contents/Info.plist. I then changed the wakedelay in /efi/boot/oc/Kexts/VoodooPS2Controller.kext/Contents/VoodooPS2Trackpad.kext/Contents/Info.plist to 10.

panda2k commented 4 years ago

Update: this didn't fix it. After around an hour or more of sleep, trackpad stops working on wake up

huotarih commented 4 years ago

I have the same issue. I already upgraded to big sur, still same issue. Lmk if you find a fix.

R-Teer commented 4 years ago

Been having this issue since 10.15.5. Restart seems to be the only fix

hudp16 commented 4 years ago

Have no trackpad whatsoever (but kb is fine) not sure what I'd want more.

bfrorum10 commented 4 years ago

Hello friends,

ich have the same Problem. Trackpad is not working after Sleep. did have any one the solution for this problem?

jmalfara commented 4 years ago

I don't recall having this issue before 1.4.0 but no i get it. I might revert back to 1.3.0 and test

profzei commented 4 years ago

...try to replace your config.plist with the following: config.plist.zip and, please, let me know your feedback (...our touchpad is quite weird in its behaviour) !

Edit: btw itlwm.kext is enabled in the above mentioned config.plist (only because I use it): please check your kexts before using config.plist (if you don't want use it, please, put accordingly false attribute)

elliotnash commented 4 years ago

The new config.plist doesn't seem to help, I'm still getting track pad freezes maybe every other sleep.

pablott commented 4 years ago

...try to replace your config.plist with the following: config.plist.zip and, please, let me know your feedback (...our touchpad is quite weird in its behaviour) !

What's the difference in this plist? Other than the itlwm.kext setting.

pablott commented 4 years ago

I can test suggestions and provide logs if that's needed.

yamanadamnor commented 4 years ago

Any new updates on the trackpad issue?

R-Teer commented 4 years ago

...try to replace your config.plist with the following: config.plist.zip and, please, let me know your feedback (...our touchpad is quite weird in its behaviour) !

Edit: btw itlwm.kext is enabled in the above mentioned config.plist (only because I use it): please check your kexts before using config.plist (if you don't want use it, please, put accordingly false attribute)

Currently testing this plist @profzei, all seems pretty good so far, had a single isolated issue where i had no trackpad after waking from sleep - touchscreen continued to function though which is much better, allowed me to save any open documents at least. Will let you know if I find any further issues!

profzei commented 4 years ago

@R-Teer Thank you very much for your feedback! ...nobody else?

profzei commented 4 years ago

What's the difference in this plist? Other than the itlwm.kext setting.

@pablott : I re-enabled VoodooPS2Mouse and VoodooPS2Trackpad.kext... they were previously disabled in Release 1.1.0 in July according to acidanthera buglist

I can test suggestions and provide logs if that's needed.

@pablott : thank you very much... Is your feedback still negative? ... this issue (for me) only appeared after applying Supplemental Update on 10.15.6, not before...

I'll make a new release in a few days surely before weekend!

R-Teer commented 4 years ago

@R-Teer Thank you very much for your feedback! ...nobody else?

Hey @profzei, hope you are well man!

I have been able to recreate the issue quite a few times now, having spend the past hour repeating the following;

  1. Connect to AC power
  2. Close lid of device
  3. Wait around 5 minutes
  4. Disconnect AC adapter
  5. Wait 5 minutes
  6. Open lid and wake from sleep

I have been able to recreate the issue about 5 or 6 times successfully.

This is occurring with both the old and new plist. I have also tried updating VoodooI2C and I2CHID to the latest versions from rehabman, and still facing the same issues. I'm currently running OS 11 and latest Opencore.

I hope this helps my friend!

R

profzei commented 4 years ago

@R-Teer Hi, I can't use my MBXP till tomorrow afternoon... so I can only suggest some more tests:

1- does the issue appear if sleep&wake phases are both on AC or on battery? I can guess the answer is no... at least in my case...

2- try to disable in config.plist 2 things: SSDT-ADP1.aml and the patch AC0_ to ADP1 (the need to be disabled together...)

It seems to me that the issue may be related to AC plug on&off during sleep&wake phases (I never do that before in my daily use)...

Please, at the moment, do not update VoodooI2C and VoodooI2CHID to 2.4.4+ since we are using a modified 2.4.3 version to fix some random boot issue for our "very annoying" touchpad!😆

yamanadamnor commented 4 years ago

the new config.plist did not fix anything in my case. Im running 10.15.6 on release 1.4.0 with itlwm kext enabled.

profzei commented 4 years ago

@yamanadamnor Have you also tried what I suggested yesterday in my previous post?

yamanadamnor commented 4 years ago

@yamanadamnor Have you also tried what I suggested yesterday in my previous post?

I will try and report back

yamanadamnor commented 4 years ago

@yamanadamnor Have you also tried what I suggested yesterday in my previous post? Unfortunately your suggestions did not fix the issue. The trackpad is still broken after sleep. Although i noticed that the trackpad worked for a split second upon opening the lid.

profzei commented 4 years ago

Hi everybody this issue seems to be general i.e. related to VoodooI2C & company. For reference see

Work in progress to fix it!

pablott commented 4 years ago

What's the difference in this plist? Other than the itlwm.kext setting.

@pablott : I re-enabled VoodooPS2Mouse and VoodooPS2Trackpad.kext... they were previously disabled in Release 1.1.0 in July according to acidanthera buglist

I can test suggestions and provide logs if that's needed.

@pablott : thank you very much... Is your feedback still negative? ... this issue (for me) only appeared after applying Supplemental Update on 10.15.6, not before...

I'll make a new release in a few days surely before weekend!

I couldn't test yet. I'm on 10.15.6 and always been I think, so I can't really compare. I don't think this was caused by plugging/unplugging to AC. I keep my laptop in a drawer and occassionally take it out, without plugging to AC. It still happens, usually after hours of sleeping. It seems is a bug in the Voodoo kext based on your last post so I may wait for a new release with the fix.

wiregen commented 4 years ago

I have a ThinkPad T460S running opencore. The git I was using migrated from VoodooI2C to VoodooRMI and it was so much better. Could something like that be implemented on the MateBook X Pro?

pablott commented 4 years ago

I have a ThinkPad T460S running opencore. The git I was using migrated from VoodooI2C to VoodooRMI and it was so much better. Could something like that be implemented on the MateBook X Pro?

Can you share the git repo? Maybe we can learn something form the plist that they are using.

wiregen commented 4 years ago

I have a ThinkPad T460S running opencore. The git I was using migrated from VoodooI2C to VoodooRMI and it was so much better. Could something like that be implemented on the MateBook X Pro?

Can you share the git repo? Maybe we can learn something form the plist that they are using.

Here you go! https://github.com/VoodooSMBus/VoodooRMI

wiregen commented 4 years ago

I have a ThinkPad T460S running opencore. The git I was using migrated from VoodooI2C to VoodooRMI and it was so much better. Could something like that be implemented on the MateBook X Pro?

Can you share the git repo? Maybe we can learn something form the plist that they are using.

Sorry here is the repo for the T460S Im using that uses VoodooRMI - https://github.com/simprecicchiani/ThinkPad-T460s-macOS-OpenCore

profzei commented 4 years ago

@wiregen : I'm trying to use VoodooRMI & VoodooSMBus project, but, at the moment, both touchpad and touchscreen are not working at all! I'll open an issue on the project section... maybe it's only a "not-yet supported device" issue!

wiregen commented 4 years ago

Interesting observation today. I updated my matebook x pro to 10.15.7 and I have woken my laptop about 5 times and the trackpad works each time. Beforehand the first or second time the trackpad would stop working. Will continue to test.

profzei commented 4 years ago

@wiregen I updated too my MBXP to 10.15.7, but I'm trying to use RMII2C (i.e. VoodooI2C + VoodooRMI since the couple VoodooSMBus + VoodooRMI seems not working) as suggested... Now I'll revert back to VoodooI2C + VoodooI2CHID and continue testing... Thanks!

profzei commented 4 years ago

@wiregen and anyone interested... could you, please, test the behaviour of the following updated SSDT-TPXX.aml? SSDT-TPXX.aml.zip

I'm using macOS Catalina 10.15.7: if you update your machine, please, keep in mind to apply first fixes suggested in Power management: Hibernation section Bios version 1.28

Please, let me know your feedback

wiregen commented 4 years ago

@wiregen and anyone interested... could you, please, test the behaviour of the following updated SSDT-TPXX.aml? SSDT-TPXX.aml.zip

I'm using macOS Catalina 10.15.7: if you update your machine, please, keep in mind to apply first fixes suggested in Power management: Hibernation section Bios version 1.28

Please, let me know your feedback

Trying it now! Will report back after testing!

profzei commented 4 years ago

@wiregen and anyone interested to help... Please use the SSDT-TPXX.aml file present in the above post with the following file: SSDT-ADP1.aml.zip

...thank you for your help!

yamanadamnor commented 4 years ago

@wiregen and anyone interested to help... Please use the SSDT-TPXX.aml file present in the above post with the following file: SSDT-ADP1.aml.zip

...thank you for your help!

Is it possible to revert back to macOS catalina after upgrading to Big Sur without resetting all my data?

profzei commented 4 years ago

Is it possible to revert back to macOS catalina after upgrading to Big Sur without resetting all my data?

I'm not an expert... but I guess you don't get a such chance... since upgrading to BS your experience could only improve... at least this is macOS perspective!

wiregen commented 4 years ago

@wiregen and anyone interested to help... Please use the SSDT-TPXX.aml file present in the above post with the following file: SSDT-ADP1.aml.zip

...thank you for your help!

Trying out the new SSDT-TPXX.aml I found that my trackpad would freeze 2/3 times coming out of sleep. Previously, my trackpad i would say would freeze 1/4 times. Reverting to my previous SSDT to do more thorough testing.

profzei commented 4 years ago

@wiregen I agree with you: the combination new SSDT-TPXX.aml & new SSDT-ADP1.aml is not the right choice...

Try, as you said, new SSDT-TPXX.aml and old SSDT-ADP1.aml

Then, please, try also this "new new" SSDT-TPXX.aml SSDT-TPXX.aml.zip

For the latter case, please, if you could, report your feedback for:

I'm not a fool asking so many trials... What's the difference between the old SSDT-ADP1.aml and new one? In the old one, we use the _PRW (Power Resource for Wake) planned by our machine MBXP while in the new one, instead, we use the _PRW made for MacBookPro...

What's the difference between new SSDT-TPXX.aml and new new SSDT-TPXX.aml? In both cases, I'm applying hints from @zhen-zen as suggested in VoodooRMI #67, but the problem is that we do not have a SHUB device attached to our TPD0 or TPL1 (it is not present in our DSDT.aml) so we need to try one by one...

Any help is very appreciated!

Btw, it seems that our bug i.e. "trackpad occasionally stops working after wake-up" also affected VoodooRMI

wiregen commented 4 years ago

@wiregen I agree with you: the combination new SSDT-TPXX.aml & new SSDT-ADP1.aml is not the right choice...

Try, as you said, new SSDT-TPXX.aml and old SSDT-ADP1.aml

Then, please, try also this "new new" SSDT-TPXX.aml SSDT-TPXX.aml.zip

For the latter case, please, if you could, report your feedback for:

  • new new SSDT-TPXX.aml + new SSDT-ADP1.aml
  • new new SSDT-TPXX.aml + old SSDT-ADP1.aml

I'm not a fool asking so many trials... What's the difference between the old SSDT-ADP1.aml and new one? In the old one, we use the _PRW (Power Resource for Wake) planned by our machine MBXP while in the new one, instead, we use the _PRW made for MacBookPro...

What's the difference between new SSDT-TPXX.aml and new new SSDT-TPXX.aml? In both cases, I'm applying hints from @zhen-zen as suggested in VoodooRMI #67, but the problem is that we do not have a SHUB device attached to our TPD0 or TPL1 (it is not present in our DSDT.aml) so we need to try one by one...

Any help is very appreciated!

Btw, it seems that our bug i.e. "trackpad occasionally stops working after wake-up" also affected VoodooRMI

Will do, will report my findings.

profzei commented 4 years ago

@wiregen : Hi, here are my thoughts:

Using the VoodooI2C modified version 2.4.3 present in this repo, the best combination for me is made by new new SSDT-TPXX.aml + new SSDT-ADP1.aml since I can report, during my daily use, zero issues after 37 sleep&wake-up phases... Could you confirm this "result"?

Yesterday, VoodooI2C released v. 2.4.5 (v.2.4.4 is bugged for our device...) implementing only two of the three fixes present in the modified 2.4.3 we are actually using... so now I'd like to test the behaviour of this new release with the combo new new SSDT-TPXX.aml + new SSDT-ADP1.aml

yamanadamnor commented 4 years ago

@wiregen : Hi, here are my thoughts:

Using the VoodooI2C modified version 2.4.3 present in this repo, the best combination for me is made by new new SSDT-TPXX.aml + new SSDT-ADP1.aml since I can report, during my daily use, zero issues after 37 sleep&wake-up phases... Could you confirm this "result"?

Yesterday, VoodooI2C released v. 2.4.5 (v.2.4.4 is bugged for our device...) implementing only two of the three fixes present in the modified 2.4.3 we are actually using... so now I'd like to test the behaviour of this new release with the combo new new SSDT-TPXX.aml + new SSDT-ADP1.aml

I would like to help as much as I can. What do you need me to do? Thanks for the tremendous effort you have put in to make this laptop run so smoothly on macOS.

panda2k commented 4 years ago

@wiregen : Hi, here are my thoughts:

Using the VoodooI2C modified version 2.4.3 present in this repo, the best combination for me is made by new new SSDT-TPXX.aml + new SSDT-ADP1.aml since I can report, during my daily use, zero issues after 37 sleep&wake-up phases... Could you confirm this "result"?

Yesterday, VoodooI2C released v. 2.4.5 (v.2.4.4 is bugged for our device...) implementing only two of the three fixes present in the modified 2.4.3 we are actually using... so now I'd like to test the behaviour of this new release with the combo new new SSDT-TPXX.aml + new SSDT-ADP1.aml

Thanks for creating this fix. I'll be testing this in the coming days.

wiregen commented 4 years ago

@wiregen : Hi, here are my thoughts:

Using the VoodooI2C modified version 2.4.3 present in this repo, the best combination for me is made by new new SSDT-TPXX.aml + new SSDT-ADP1.aml since I can report, during my daily use, zero issues after 37 sleep&wake-up phases... Could you confirm this "result"?

Yesterday, VoodooI2C released v. 2.4.5 (v.2.4.4 is bugged for our device...) implementing only two of the three fixes present in the modified 2.4.3 we are actually using... so now I'd like to test the behaviour of this new release with the combo new new SSDT-TPXX.aml + new SSDT-ADP1.aml

Hey there - I tried the new new SSDT-TPXX.aml and the new SSDT-ADP1.aml and I was getting freezing. After reading your findings, I decided to start again from scratch from your repo's OC folder here and just copied my SMBIOS settings over and the SSDT-TPXX.aml and the SSDT-ADP1.aml you attached here. Crossing my fingers here!

I have a couple of questions:

  1. Is your OC folder in your repo the latest revisions you made? I saw the releases section is over 30 days old
  2. Do I need to clear the nvram for EFI OC changes to take effect?
  3. I see in the changelog you added SSDT-FnKey.aml - I had to remap my modifer keys in system preferences -> keyboard to use alt as command and the windows key as option. Was this by design?

Some other changes - I deleted the itlwm.kext in your OC and followed your instructions to use the AirportItlwm.kext - so far it's working great!

profzei commented 4 years ago

@wiregen

Is your OC folder in your repo the latest revisions you made? I saw the releases section is over 30 days old

Yes, in my repo you can find the latest revision (in general it is not always stable since sometimes I needed to revert back from some experiments...). Next release for Catalina should be in next weekend with OC v. 0.6.2 and more stuff for improving battery life.

Do I need to clear the nvram for EFI OC changes to take effect?

No, you can use it only if you think there is something weird...

I see in the changelog you added SSDT-FnKey.aml - I had to remap my modifer keys in system preferences -> keyboard to use alt as command and the windows key as option. Was this by design?

You only need to disable your remap... A user opened an issue asking for this feature that honestly I forgot to implement previously...

Happy for AirportItlwm!

Update

  1. I'm using VoodooI2C 2.5 as stated in previous post for testing it with new new SSDT-TPXX.aml and SSDT-ADP1.aml: at the moment 7 sleep&wake-up cycles and no issue... crossing fingers here too!
  2. If you follow their Gitter page you can see that, at the moment, there is some mess with VoodooI2C release bumped first to 2.5, then 2.5.1 and then reverted back to 2.4.4... so we need to have patience for a completely debugged version...
panda2k commented 4 years ago

@wiregen : Hi, here are my thoughts: Using the VoodooI2C modified version 2.4.3 present in this repo, the best combination for me is made by new new SSDT-TPXX.aml + new SSDT-ADP1.aml since I can report, during my daily use, zero issues after 37 sleep&wake-up phases... Could you confirm this "result"? Yesterday, VoodooI2C released v. 2.4.5 (v.2.4.4 is bugged for our device...) implementing only two of the three fixes present in the modified 2.4.3 we are actually using... so now I'd like to test the behaviour of this new release with the combo new new SSDT-TPXX.aml + new SSDT-ADP1.aml

Hey there - I tried the new new SSDT-TPXX.aml and the new SSDT-ADP1.aml and I was getting freezing. After reading your findings, I decided to start again from scratch from your repo's OC folder here and just copied my SMBIOS settings over and the SSDT-TPXX.aml and the SSDT-ADP1.aml you attached here. Crossing my fingers here!

I have a couple of questions:

  1. Is your OC folder in your repo the latest revisions you made? I saw the releases section is over 30 days old
  2. Do I need to clear the nvram for EFI OC changes to take effect?
  3. I see in the changelog you added SSDT-FnKey.aml - I had to remap my modifer keys in system preferences -> keyboard to use alt as command and the windows key as option. Was this by design?

Some other changes - I deleted the itlwm.kext in your OC and followed your instructions to use the AirportItlwm.kext - so far it's working great!

I also tried the new new SSDT-TPXX.aml and the new SSDT-ADP1.aml and I still got trackpad freezing.

wiregen commented 4 years ago

@wiregen

Is your OC folder in your repo the latest revisions you made? I saw the releases section is over 30 days old

Yes, in my repo you can find the latest revision (in general it is not always stable since sometimes I needed to revert back from some experiments...). Next release for Catalina should be in next weekend with OC v. 0.6.2 and more stuff for improving battery life.

Do I need to clear the nvram for EFI OC changes to take effect?

No, you can use it only if you think there is something weird...

I see in the changelog you added SSDT-FnKey.aml - I had to remap my modifer keys in system preferences -> keyboard to use alt as command and the windows key as option. Was this by design?

You only need to disable your remap... A user opened an issue asking for this feature that honestly I forgot to implement previously...

Happy for AirportItlwm!

Update

  1. I'm using VoodooI2C 2.5 as stated in previous post for testing it with new new SSDT-TPXX.aml and SSDT-ADP1.aml: at the moment 7 sleep&wake-up cycles and no issue... crossing fingers here too!
  2. If you follow their Gitter page you can see that, at the moment, there is some mess with VoodooI2C release bumped first to 2.5, then 2.5.1 and then reverted back to 2.4.4... so we need to have patience for a completely debugged version...

Hey there Profzei, I am getting still getting trackpad freezes also using your new SSDTs. But they do seem pretty occasional. This is about my 6th lid opening today and it froze around that. I'll wait for your release, I'll just start fresh with your OC folder when you release your update.

Edit: I also noticed with the latest OC folder that the power button doesn't bring up the shutdown / logoff / sleep option. Usually when the trackpad freezes pressing and holding the power button brings the shutdown window up and I'm able to shutdown the laptop.

yamanadamnor commented 4 years ago

I have been testning with the new new SSDT-TPXX.aml and new SSDT-ADP1.aml for a few days and it did help alot. I was able to have around 4-6 sleep cycles before the trackpad stopped working. This is alot better than before but still not ideal. Im happy to test new configs and report back.

My EFI folder: EFI.zip

profzei commented 4 years ago

Hi all, I just made release v. 1.6.0 using new VoodooI2C v. 2.5.2... It seems quite stable, but not perfect (still some bugs ahimé...): I ran into the same issue after 12 sleep & wake-up phases. At this point I really don't know what I'm supposed to do for resolving this issue apart reverting back to VoodooI2C v. 2.3! (but in that case experience with gestures was less smooth!)

zhen-zen commented 4 years ago

Hi all, I just made release v. 1.6.0 using new VoodooI2C v. 2.5.2... It seems quite stable, but not perfect (still some bugs ahimé...): I ran into the same issue after 12 sleep & wake-up phases. At this point I really don't know what I'm supposed to do for resolving this issue apart reverting back to VoodooI2C v. 2.3! (but in that case experience with gestures was less smooth!)

Quite weird, maybe do a binary search like git-bisect? One issue I have run into during 2.3 -2.4 has "Timed out waiting for bus to change state" in log. However, I have no idea since there's nothing strange in your log.

tlefko commented 3 years ago

any fix found yet? have same issue