Contribute
Register

VoodooI2C Help and Support

pastrychef

Moderator
Joined
May 29, 2013
Messages
17,689
Motherboard
Gigabyte Z390 M Gaming
CPU
i9-9900K OC'd @ 5.0GHz
Graphics
Vega 56 (Bios flashed to 64)
Mac
  1. MacBook
  2. Mac Pro
Classic Mac
  1. iBook
  2. Power Mac
  3. PowerBook
Mobile Phone
  1. iOS
NkkI.gif

Look what I have!!! All gestures working!!!
Screen Shot 2020-09-11 at 10.13.12 PM.png

After leaving here, I proceeded to do the GPIO Pinning in hopes that would solve my problem and, in fact, it did, sort of... TPD0 was now attached to VoodooI2C but the trackpad still wasn't recognized as a trackpad. Looking at the kernel logs, I saw the problem.
Screen Shot 2020-09-11 at 10.30.13 PM.png
SSCN and FMCN were not working right. A whole lot of Googling led me to the discovery of a hot patch that addresses this very problem, SSDT-I2CxConf. No other SSDTs are needed, including XOSI and GPIO. I'm using the basic VoodooI2CHID. VoodooI2CELAN doesn't work.

The acidanthera fork of VoodooPS2Controller must be used for VoodooI2C to work. It will not work with Rehabman's VoodooPS2Controller.

Trackpad pointer control works in Recovery partition but clicking and gestures don't. Therefore, if you need to do anything in Recovery, make sure you have a mouse.

I have attached the .aml file for those who may come across the same problem as I did.

Lastly, for anyone with the same laptop as mine, the GPIO pin is 0x0083.
 

Attachments

  • SSDT-I2CxConf.aml
    1 KB · Views: 100
Last edited:
Joined
Apr 21, 2016
Messages
1,011
Motherboard
ASUS X556UA-Clover
CPU
i5-6200U
Graphics
HD 520,1366x768
Mobile Phone
  1. iOS
View attachment 487883

Look what I have!!! All gestures working!!!
View attachment 487879

After leaving here, I proceeded to do the GPIO Pinning in hopes that would solve my problem and, in fact, it did, sort of... TPD0 was now attached to VoodooI2C but the trackpad still wasn't recognized as a trackpad. Looking at the kernel logs, I saw the problem.
View attachment 487882
SSCN and FMCN were not working right. A whole lot of Googling led me to the discovery of a hot patch that addresses this very problem, SSDT-I2CxConf. No other SSDTs are needed, including XOSI and GPIO. I'm using the basic VoodooI2CHID. VoodooI2CELAN doesn't work.

The acidanthera fork of VoodooPS2Controller must be used for VoodooI2C to work. It will not work with Rehabman's VoodooPS2Controller.

Trackpad pointer control works in Recovery partition but clicking and gestures don't. Therefore, if you need to do anything in Recovery, make sure you have a mouse.

I have attached the .aml file for those who may come across the same problem as I did.

Lastly, for anyone with the same laptop as mine, the GPIO pin is 0x0083.
Great!

Notice your DSDT already has SSCN and FMCN, they are just disabled by the USTP variable.
You can try to patch this variable to a non-zero value (One/Ones) to make a simpler patch, if you want to spend some more time and make the values non-hardcoded (Slightly lower CPU usage? Better performance? Really no idea) :)
 

pastrychef

Moderator
Joined
May 29, 2013
Messages
17,689
Motherboard
Gigabyte Z390 M Gaming
CPU
i9-9900K OC'd @ 5.0GHz
Graphics
Vega 56 (Bios flashed to 64)
Mac
  1. MacBook
  2. Mac Pro
Classic Mac
  1. iBook
  2. Power Mac
  3. PowerBook
Mobile Phone
  1. iOS
Great!

Notice your DSDT already has SSCN and FMCN, they are just disabled by the USTP variable.
You can try to patch this variable to a non-zero value (One/Ones) to make a simpler patch, if you want to spend some more time and make the values non-hardcoded (Slightly lower CPU usage? Better performance? Really no idea) :)

I previously had "Store (One, USTP)" in my SSDT-AWAC.aml but it wasn't enough... I was still getting the SSCN and FMCN errors.
 
Joined
Apr 21, 2016
Messages
1,011
Motherboard
ASUS X556UA-Clover
CPU
i5-6200U
Graphics
HD 520,1366x768
Mobile Phone
  1. iOS
I previously had "Store (One, USTP)" in my SSDT-AWAC.aml but it wasn't enough... I was still getting the SSCN and FMCN errors.
On my device I patch USTP, 8 (Find: 55535450 08) to XSTP, 8 (Replace: 58535450 08).
Then added this via an SSDT: Name (USTP, One)
 

pastrychef

Moderator
Joined
May 29, 2013
Messages
17,689
Motherboard
Gigabyte Z390 M Gaming
CPU
i9-9900K OC'd @ 5.0GHz
Graphics
Vega 56 (Bios flashed to 64)
Mac
  1. MacBook
  2. Mac Pro
Classic Mac
  1. iBook
  2. Power Mac
  3. PowerBook
Mobile Phone
  1. iOS
On my device I patch USTP, 8 (Find: 55535450 08) to XSTP, 8 (Replace: 58535450 08).
Then added this via an SSDT: Name (USTP, One)

Ah! Thanks for that! I'll give it a go in the coming days. :thumbup:
 
Joined
Dec 10, 2013
Messages
160
Motherboard
Huawei Matebook D 2017
CPU
i5-7200U
Graphics
HD 620
Hi guys,
i need your help again to fix SYNA3602 touchpad.
Kexts are loaded correctly (VoodooI2C and HID) and VoodooGPIOSunrisePointLP is present in Ioreg under GPI0. Trackpad preferences are visibile under system preference but the pointer doesn't move.

I've done various try without any luck.. Thanks
Mattia
 

Attachments

  • Archive.zip
    26.5 MB · Views: 58
Joined
Sep 15, 2020
Messages
6
Motherboard
ASUS
CPU
i7-10510U
Graphics
Intel
Hello all.

Thank you guys for fantastic piece of work - VoodooI2C.

Used it in a few of my builds but with the latest one I hit a dead end.

I got a ASUS ZenBook PRO UX580GE with ScreenPad 2.0 and Touch Screen. The Touch Screen is working with VoodooI2C without anything done for it but the ScreenPad is giving me hard time. I managed to have the VoodooI2C and VoodooI2CHID loaded for it but is seems that something is wrong with enabling it or with my GPIO pinning.

The ETPD device is reported to be GDX1515

I've follows the VoodooI2C guide and did a SSDT with GPIO pinning and also attempted to do it with the help of GenI2C app and in both chases I got the same result - Kexts are loaded but there is no response from trackpad.

I also attempted the polling method with the same result.

I've tested with the following values for GPIO pinning: 57, D7 and F7.

I also replaced _STA method in ETPD device to return 0x0F with the same result as without replacing the method (with both I get the value of _STA set to 0xf - checked it with IOReg in ETPD device).

Any help or hints are welcome.
View attachment 453287View attachment 453288

I had the same problem with my ASUS UX434FLC. The Screenpad device did not work at all. A little detail helped to solve the problem in my case: As you can see in your ioreg the VoodooI2CTouchscreenHIDEventDriver is binding to ETPD. This is probably caused by the nature of Screenpad (it is both: Touchpad and Touchscreen). Thanks to the user zhen-zen who gave me this hint I could make my Screenpad usable:

- Find the right gpio-pin (as you already did).
- Use the latest version of VoodooI2C.kext and VoodooI2CHID.kext.
- Inside of VoodooI2CHID.kext edit the file Content/Info.plist and remove the whole section starting with "<key>VoodooI2CHIDDevice Touchscreen HID Event Driver" and also the following "<dict>" section.

This way there is no Touchscreen support inside VoodooI2CHID.kext. After this change, the "... Touchpad HID Event Driver" is now binding to ETPD. From now on the Screenpad is working for me.

A small problem remains: The clicks are not recognized properly and the multitouch is not working at all - but it is a start.
 
Joined
Feb 4, 2011
Messages
76
Motherboard
Gigabyte GA-Z170N-WiFi
CPU
i7-6700K
Graphics
GT 640
Mac
  1. MacBook Air
  2. MacBook Pro
Mobile Phone
  1. Android
@boardschauer thank you for the hint.
I will dig into it and see if it works for my rig and if it dose I will check why needs the Touchscreen HID to be removed from the VoodooI2CHID.kext.
 
Joined
Feb 4, 2011
Messages
76
Motherboard
Gigabyte GA-Z170N-WiFi
CPU
i7-6700K
Graphics
GT 640
Mac
  1. MacBook Air
  2. MacBook Pro
Mobile Phone
  1. Android
@boardschauer your hint worked perfectly. Now I have a working trackpad and also a working touch screen with stylus (no more finger touch response) and that is the perfect combo for me.
So once again thanks for the hint.
 
Joined
Sep 15, 2020
Messages
6
Motherboard
ASUS
CPU
i7-10510U
Graphics
Intel
@boardschauer your hint worked perfectly. Now I have a working trackpad and also a working touch screen with stylus (no more finger touch response) and that is the perfect combo for me.
So once again thanks for the hint.
I am facing one issue though: The touchpad is recognizing only one finger at a time. So no gestures are recognized, e.g. scrolling with two fingers. It doesn't matter which setting I choose in the touchpad settings. With the tool FingerMgmt I see that the touchpad is recognizing only one finger. Any hints on this?
 
Top