我在 Acer Swift SF314-42 上运行着 Ubuntu 22.04
触摸板一直运行正常,但今天不行。几天前,我的键盘上落了几滴小雨滴,我立即用厨房用纸擦干,而且雨滴很少,所以我乐观地认为这无关紧要。
我尝试重新启动,尝试了 Wayland 和 Xorg,但遗憾的是,无论哪种方式,触摸板都没有任何反应。
除了触摸板之外,我还有一个罗技 M525 鼠标,它仍然可以正常工作。
我已经对如何诊断问题进行了一些 DuckDucking 操作。以下是摘录自:
~$ cat /proc/bus/input/devices
I: Bus=0018 Vendor=04f3 Product=312b Version=0100
N: Name="ELAN0504:01 04F3:312B Touchpad"
P: Phys=i2c-ELAN0504:01
S: Sysfs=/devices/platform/AMDI0010:03/i2c-0/i2c-ELAN0504:01/0018:04F3:312B.0001/input/input28
U: Uniq=
H: Handlers=mouse1 event10
B: PROP=5
B: EV=1b
B: KEY=e520 10000 0 0 0 0
B: ABS=2e0800000000003
B: MSC=20
运行 Xorg 时,xinput list 显示以下内容
~$ xinput list
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ Logitech K400 id=10 [slave pointer (2)]
⎜ ↳ Logitech M525 id=11 [slave pointer (2)]
⎜ ↳ ELAN0504:01 04F3:312B Mouse id=13 [slave pointer (2)]
⎜ ↳ ELAN0504:01 04F3:312B Touchpad id=14 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ Acer Wireless Radio Control id=6 [slave keyboard (3)]
↳ Video Bus id=7 [slave keyboard (3)]
↳ Power Button id=8 [slave keyboard (3)]
↳ Sleep Button id=9 [slave keyboard (3)]
↳ HD User Facing: HD User Facing id=12 [slave keyboard (3)]
↳ AT Translated Set 2 keyboard id=15 [slave keyboard (3)]
↳ Acer WMI hotkeys id=16 [slave keyboard (3)]
↳ Logitech K400 id=17 [slave keyboard (3)]
运行 Wayland 时,我得到以下信息
$ xinput list
WARNING: running xinput against an Xwayland server. See the xinput man page for details.
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ xwayland-pointer:17 id=6 [slave pointer (2)]
⎜ ↳ xwayland-relative-pointer:17 id=7 [slave pointer (2)]
⎜ ↳ xwayland-pointer-gestures:17 id=8 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ xwayland-keyboard:17 id=9 [slave keyboard (3)]
这一页: https://devicetests.com/fix-touchpad-not-working-ubuntu 让我尝试:
~$ sudo dmesg | fgrep -i elan
[ 1.041238] input: ELAN0504:01 04F3:312B Mouse as /devices/platform/AMDI0010:03/i2c-0/i2c-ELAN0504:01/0018:04F3:312B.0001/input/input5
[ 1.041370] input: ELAN0504:01 04F3:312B Touchpad as /devices/platform/AMDI0010:03/i2c-0/i2c-ELAN0504:01/0018:04F3:312B.0001/input/input7
[ 1.041456] hid-generic 0018:04F3:312B.0001: input,hidraw0: I2C HID v1.00 Mouse [ELAN0504:01 04F3:312B] on i2c-ELAN0504:01
[ 4.592854] input: ELAN0504:01 04F3:312B Mouse as /devices/platform/AMDI0010:03/i2c-0/i2c-ELAN0504:01/0018:04F3:312B.0001/input/input26
[ 4.592999] input: ELAN0504:01 04F3:312B Touchpad as /devices/platform/AMDI0010:03/i2c-0/i2c-ELAN0504:01/0018:04F3:312B.0001/input/input28
[ 4.593096] hid-multitouch 0018:04F3:312B.0001: input,hidraw0: I2C HID v1.00 Mouse [ELAN0504:01 04F3:312B] on i2c-ELAN0504:01
~$ sudo dmesg | fgrep -i touch
[ 1.041370] input: ELAN0504:01 04F3:312B Touchpad as /devices/platform/AMDI0010:03/i2c-0/i2c-ELAN0504:01/0018:04F3:312B.0001/input/input7
[ 4.592999] input: ELAN0504:01 04F3:312B Touchpad as /devices/platform/AMDI0010:03/i2c-0/i2c-ELAN0504:01/0018:04F3:312B.0001/input/input28
[ 4.593096] hid-multitouch 0018:04F3:312B.0001: input,hidraw0: I2C HID v1.00 Mouse [ELAN0504:01 04F3:312B] on i2c-ELAN0504:01
这一页:https://unix.stackexchange.com/questions/400153/how-to-find-logs-about-touchpad-malfunction-in-debian-on-wayland 说服我尝试“evtest”,我必须使用以下命令安装:
sudo apt install evtest
Evtest 会显示输入设备列表,要求您选择一个,然后显示支持的事件,然后显示该设备的实际事件。对我来说,Touchpad 是 10
~$ sudo evtest
No device specified, trying to scan all of /dev/input/event*
Available devices:
/dev/input/event0: Power Button
/dev/input/event1: Sleep Button
/dev/input/event2: Lid Switch
/dev/input/event3: AT Translated Set 2 keyboard
/dev/input/event4: Video Bus
/dev/input/event5: Acer WMI hotkeys
/dev/input/event6: ELAN0504:01 04F3:312B Mouse
/dev/input/event7: Logitech M525
/dev/input/event8: Logitech K400
/dev/input/event9: Acer Wireless Radio Control
/dev/input/event10: ELAN0504:01 04F3:312B Touchpad
/dev/input/event11: HD User Facing: HD User Facing
/dev/input/event12: HD-Audio Generic HDMI/DP,pcm=3
/dev/input/event13: HD-Audio Generic Front Headphone
Select the device event number [0-13]: 10
Input driver version is 1.0.1
Input device ID: bus 0x18 vendor 0x4f3 product 0x312b version 0x100
Input device name: "ELAN0504:01 04F3:312B Touchpad"
Supported events:
Event type 0 (EV_SYN)
Event type 1 (EV_KEY)
Event code 272 (BTN_LEFT)
Event code 325 (BTN_TOOL_FINGER)
Event code 328 (BTN_TOOL_QUINTTAP)
Event code 330 (BTN_TOUCH)
Event code 333 (BTN_TOOL_DOUBLETAP)
Event code 334 (BTN_TOOL_TRIPLETAP)
Event code 335 (BTN_TOOL_QUADTAP)
Event type 3 (EV_ABS)
Event code 0 (ABS_X)
Value 0
Min 0
Max 3204
Resolution 32
Event code 1 (ABS_Y)
Value 0
Min 0
Max 1945
Resolution 32
Event code 47 (ABS_MT_SLOT)
Value 0
Min 0
Max 4
Event code 53 (ABS_MT_POSITION_X)
Value 0
Min 0
Max 3204
Resolution 32
Event code 54 (ABS_MT_POSITION_Y)
Value 0
Min 0
Max 1945
Resolution 32
Event code 55 (ABS_MT_TOOL_TYPE)
Value 0
Min 0
Max 2
Event code 57 (ABS_MT_TRACKING_ID)
Value 0
Min 0
Max 65535
Event type 4 (EV_MSC)
Event code 5 (MSC_TIMESTAMP)
Properties:
Property type 0 (INPUT_PROP_POINTER)
Property type 2 (INPUT_PROP_BUTTONPAD)
Testing ... (interrupt to exit)
触摸触摸板不会产生任何事件。
相比之下,如果我选择 Logitech 鼠标 7,我会看到鼠标移动事件,BTN_LEFT 和 BTN_RIGHT。
我看了一下 BIOS,但没有看到任何关于启用/禁用触摸板的内容。
有什么想法可以让触摸板开始工作或者什么可以阻止触摸板事件发生?