Contribute
Register

[GUIDE/KEXT] Elan (elantech) PS/2 kext

Status
Not open for further replies.
Hi @Bandysc,

I have ASUS K53E (basically it's the same for at least every ASUS K53 Series though) with ELAN touchpad. IOReg shows in the property "RM,TrackpadInfo" that it's "Elan v 3, fw: 450f01, bus: 0", SMBus is not supported. I have the following experience with your kext:
  • Gestures work fine except 4 finger ones (though afaik ELANv3 can't recognize 4+ fingers)
  • Physical buttons also work fine
  • 2F Scrolling is a major downgrade for me compared to the EMlyDinEsH's one. I've changed the settings of the latter kext a bit so in result I had supersmooth 60fps scrolling in both directions on default macOS settings. With your kext however scrolling seems to be in 30fps, scrolling inertia is 60fps, and I had to raise the scrolling speed in macOS settings up to almost maximum to achieve an acceptable speed. I tried playing around with settings in Info.plist but I don't think they change anything for me at all so I remained on default settings. I've attached my variant of EMlyDinEsH's kext for reference in case it's needed.
  • Also scrolling doesn't work on the lower 1/3 of touchpad though the cursor movement works there. There are TrackpointMultiplierX and Y in Info.plist but changing the Y property didn't change anything.
 

Attachments

  • ApplePS2SmartTouchPad.kext.zip
    359.2 KB · Views: 199
Hi. Using any of the versions of the kext you have made, anything besides pointing leads to erratic movement. However, using hongvietmtb's version leads to everything working almost perfectly.

There is no palm rejection, so typing leads to random clicks 99% of the time, and during 3/4 finger gestures, if I leave 1 or 2 fingers a bit early during the gesture, there is a very jarring stutter. I believe the official Voodoops2 has dealt with this, because on their GitHub they mention this on the bottom of their readme, maybe you can implement the same algorithm from there?

from acidanthera's VoodooPS2 project:
"** Due to the limitations of PS/2 bus, Synaptics touchpad reports only the number of fingers and coordinates of two of them to the computer. When there are two fingers on the touchpad and third finger is added, a 'jump' may happen, because the coordinates of one of the fingers are replaced with the coordinates of the added finger. Finger renumbering algorithm estimates the distance from old coordinates to new ones in order to hide this 'jump' from the OS and to calculate approximate position of the 'hidden' finger, in assumption that fingers move together in parallel to each other. Now third and fourth fingers are reported at the same position as one of the first two fingers."
 
The random jumps when using 2 or more fingers (when using v3/4) doesn't seem to apply to v1. Gestures are flawless for the first time on my elan v4 touchpad. I'm trying v2 to see what's different.

Edit: the jump came back on V2, so it was probably something added in V2.
 
Last edited:
Hi. Using any of the versions of the kext you have made, anything besides pointing leads to erratic movement. However, using hongvietmtb's version leads to everything working almost perfectly.

The random jumps when using 2 or more fingers (when using v3/4) doesn't seem to apply to v1. Gestures are flawless for the first time on my elan v4 touchpad. I'm trying v2 to see what's different.

Edit: the jump came back on V2, so it was probably something added in V2.

It should be fixed in this pull request. Please test this.
 

Attachments

  • VoodooPS2Controller-2.1.6-RELEASE.zip
    542.4 KB · Views: 190
It should be fixed in this pull request. Please test this.
Incredible! All my issues are resolved...
besides palm rejection.
Is there any software to prevent the touchpad from getting activated while typing?
Palm rejection is the one pain point, otherwise wow incredible job!
 
As I own lenovo ideapad 3 I can't get the touchpad to work. How should I proceed?
 
Will try it! I have an ELAN and ApplePS2SmartTouchpad is not working as it should.
 
Hi @Bandysc,

I have ASUS N56VV with ELAN touchpad. IOReg shows in the property "RM,TrackpadInfo" that it's "Elan v 4, fw: 361f03, bus: 0", SMBus is not supported. I have the following experience with your latest kext (ElanPS/2 0.4):

  • Trackpad preferences panel work after i fixed battery statut indicator
  • Gestures work fine even 4 finger

    Only double tap to select not work, I have to use physical buttons. I hope next release will fix it.

Anyway, I'm happy because it's the first time I can use gestures in mackintosh and very helpful for me. I'm planning to update to Big Sur. Hope it will works.

Thanks!
 
Last edited:
wow great!!

I use HP Pavilion x360 Touchscreen, Elan v4, and now work better than ApplePS2Controller

work fine even 5 finger :D

only dragging and double tap to select are not work. Feeling good for the nex release

thanks
 
Status
Not open for further replies.
Back
Top