ELAN Touchpad not working in KDE

I installed Manjaro KDE a few days ago. It worked fine after installation, but after the first reboot the touch-pad/track-pad stopped working, although if I connect a wireless mouse, it works. I tried following many of the archived forum tips to fix the problem but it doesn’t seem to work. Also, for some reason if I plug my laptop to charge then the track-pad works, even after I pull out the charger.

Under ‘system setting’ I see the touchpad, it is there and everything is ticked as it should be but the touchpad still doesn’t work. And even when it doesnt work it still recognizes it.

Also, sorry for my English, not my native tongue.


neofetch

(I removed some unnecesary stuff like theme to focus on important stuff)

OS: Manjaro Linux x86_64 
Host: 82A2 Yoga Slim 7 14ARE05 
Kernel: 5.18.12-3-MANJARO 
Uptime: 10 mins 
Packages: 1303 (pacman), 7 (flatpak) 
Shell: bash 5.1.16 
DE: Plasma 5.24.6 
WM: KWin 
Terminal: konsole 
CPU: AMD Ryzen 7 4700U with Radeon Graphics (8) @ 2.000GHz 
GPU: AMD ATI 03:00.0 Renoir 
Memory: 2769MiB / 15363MiB 

This is what I get when I have my laptop charging:

libinput list-devices

Device:           ELAN0634:00 04F3:3124 Touchpad
Kernel:           /dev/input/event6
Group:            8
Seat:             seat0, default
Size:             100x61mm
Capabilities:     pointer gesture
Tap-to-click:     disabled
Tap-and-drag:     enabled
Tap drag lock:    disabled
Left-handed:      disabled
Nat.scrolling:    disabled
Middle emulation: disabled
Calibration:      n/a
Scroll methods:   *two-finger edge 
Click methods:    *button-areas clickfinger 
Disable-w-typing: enabled
Disable-w-trackpointing: enabled
Accel profiles:   flat *adaptive
Rotation:         n/a

cat /etc/X11/xorg.conf.d/30-touchpad.conf

Section "InputClass"
    Identifier "touchpad"
    Driver "libinput"
    MatchIsTouchpad "on"
    Option "Tapping" "on"
EndSection

This is what I get when my touchpad doesn’t work:

libinput list-devices

Device:           Elan Touchpad
Kernel:           /dev/input/event5
Group:            8
Seat:             seat0, default
Size:             104x61mm
Capabilities:     pointer gesture
Tap-to-click:     disabled
Tap-and-drag:     enabled
Tap drag lock:    disabled
Left-handed:      disabled
Nat.scrolling:    disabled
Middle emulation: disabled
Calibration:      n/a
Scroll methods:   *two-finger edge 
Click methods:    *button-areas clickfinger 
Disable-w-typing: enabled
Disable-w-trackpointing: enabled
Accel profiles:   flat *adaptive
Rotation:         n/a

cat /etc/X11/xorg.conf.d/30-touchpad.conf

Section "InputClass"
    Identifier "touchpad"
    Driver "libinput"
    MatchIsTouchpad "on"
    Option "Tapping" "on"
EndSection

sudo xinput --list-props "Elan Touchpad"

Device 'Elan Touchpad':
        Device Enabled (162):   1
        Coordinate Transformation Matrix (164): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
        libinput Tapping Enabled (313): 1
        libinput Tapping Enabled Default (314): 0
        libinput Tapping Drag Enabled (315):    1
        libinput Tapping Drag Enabled Default (316):    1
        libinput Tapping Drag Lock Enabled (317):       0
        libinput Tapping Drag Lock Enabled Default (318):       0
        libinput Tapping Button Mapping Enabled (319):  1, 0
        libinput Tapping Button Mapping Default (320):  1, 0
        libinput Natural Scrolling Enabled (290):       1
        libinput Natural Scrolling Enabled Default (291):       0
        libinput Disable While Typing Enabled (321):    1
        libinput Disable While Typing Enabled Default (322):    1
        libinput Scroll Methods Available (292):        1, 1, 0
        libinput Scroll Method Enabled (293):   1, 0, 0
        libinput Scroll Method Enabled Default (294):   1, 0, 0
        libinput Click Methods Available (323): 1, 1
        libinput Click Method Enabled (324):    1, 0
        libinput Click Method Enabled Default (325):    1, 0
        libinput Middle Emulation Enabled (299):        0
        libinput Middle Emulation Enabled Default (300):        0
        libinput Accel Speed (301):     0.000000
        libinput Accel Speed Default (302):     0.000000
        libinput Accel Profiles Available (303):        1, 1
        libinput Accel Profile Enabled (304):   1, 0
        libinput Accel Profile Enabled Default (305):   1, 0
        libinput Left Handed Enabled (306):     0
        libinput Left Handed Enabled Default (307):     0
        libinput Send Events Modes Available (275):     1, 1
        libinput Send Events Mode Enabled (276):        0, 0
        libinput Send Events Mode Enabled Default (277):        0, 0
        Device Node (278):      "/dev/input/event5"
        Device Product ID (279):        1267, 7
        libinput Drag Lock Buttons (308):       <no items>
        libinput Horizontal Scroll Enabled (309):       1
        libinput Scrolling Pixel Distance (310):        15
        libinput Scrolling Pixel Distance Default (311):        15
        libinput High Resolution Wheel Scroll Enabled (312):    1

Is there a way to make Device: ELAN0634:00 04F3:3124 Touchpad; Kernel: /dev/input/event6 permanent (on start-up) and not only run when plugged in?

try to edit /etc/modprobe.d/psmouse.conf and insert this to the file

options psmouse elantech_smbus=0

reboot and check

see also
https://wiki.archlinux.org/title/Touchpad

Unfortunately it still doesn’t work.

might not be the solution but a part of it. i have the same touchpad and i had trouble in the past until i read a advice to check the bios and set the touchpad to “basic” instead of “enhanced” properties because the advanced/enhanced setting troubles with linux.

So I have been browsing the Arch Wiki and saw this:

Touchpad


The touchpad does not work to begin with. It may work initially with libinput or synaptics, but only sometimes. The touchpad can be seen registered either as Elan Touchpad or ELAN0634:00 04F3:3124 in the Xorg logs. Since the touchpad only works, when it is seen registered as ELAN0634:00 04F3:3124 in the Xorglogs, the touchpad works quite randomly, but not consistently. To circumvent this, one has to blacklist the elan_i2c kernel module.

This seems to be the solution to the problem.
I have followed the steps on the Kernel Module - Wiki, to blacklist the elan_i2c kernel.

Solution

Create a .conf file inside /etc/modprobe.d/ and append a line for each module you want to blacklist, using the blacklist keyword.

sudo nano /etc/modprobe.d/psmouse.conf
blacklist elan_i2c

Edit: I now know how to post links :smiley: :
https://wiki.archlinux.org/title/Lenovo_Yoga_Slim_7_(AMD_Ryzen_7)
https://wiki.archlinux.org/title/Kernel_module#Blacklisting

2 Likes

Very random P.S.:

1 Like

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.