Lenovo Y700 Elantech 터치패드 쿼리 0x01 실패

Lenovo Y700 Elantech 터치패드 쿼리 0x01 실패

나는 적어도 반년 동안 내 Elantech 터치패드에 성가신 문제를 겪었습니다. 대부분의 경우 무작위로 동기화가 끊어지고 다음과 같이 식별됩니다.PS/2 엘란텍 터치패드또는BYD 터치패드. 업데이트마다 다르지만 기본적으로 다음과 같은 오류가 여전히 존재합니다 dmesg.

psmouse serio1: Failed to enable mouse on isa0060/serio1
psmouse serio1: elantech: synaptics_send_cmd query 0x01 failed.
psmouse serio1: Failed to enable mouse on isa0060/serio1
input: PS/2 Generic Mouse as /devices/platform/i8042/serio1/input/input19

터치패드가 올바르게 감지되었지만 여전히 제대로 작동하지 않습니다. 다행히 멀티 터치, 클릭, 두 손가락 스크롤 및 일종의 보정 문제가 있습니다(터치패드 중앙만 반응하고 다른 영역은 입력을 무시합니다). dmesg이 시나리오의 경우 다음과 같습니다.

psmouse serio1: elantech: assuming hardware version 4 (with firmware version 0x595f03)
psmouse serio1: elantech: Synaptics capabilities query result 0x10, 0x15, 0x0e.
psmouse serio1: elantech: Elan sample query result 04, 02, 86
input: ETPS/2 Elantech Touchpad as /devices/platform/i8042/serio1/input/input2

시스템이 정상적으로 작동하는 동안 입력 클릭과 임의 방향의 움직임에 무작위로 반응하기 시작했습니다.

현재 Arch Linux를 사용하고 있는데 Ubuntu 16.04와 14.04에서도 이 문제가 발생합니다.

~에서아치 리눅스 위키 페이지Lenovo Y700에는 터치패드가 작동하려면 pata_legacy모듈이 완전히 블랙리스트에 등록되어야 한다는 메모가 있으므로 이를 커널 부트로더 구성에 추가했습니다.

options: ... modprobe.blacklist=pata_legacy ...

lsmod로드된 것으로 표시되지 않으므로 pata_legacy블랙리스트가 작동합니다. 하지만 터치패드 문제가 계속 발생하므로 이는 도움이 되지 않습니다.

나는 이 제품을 사용하고 libinput있으며 한동안 구성을 변경하지 않았습니다(터치패드가 좋다고 느끼는 기간에는 완벽하게 작동합니다).

Section "InputClass"
        Identifier "libinput touchpad catchall"
        MatchIsTouchpad "on"
        MatchDevicePath "/dev/input/event*"
        Driver "libinput"
        Option "Tapping" "True"
        Option "DisableWhileTyping" "True"
        Option "NaturalScrolling" "True"
        Option "MiddleEmulation" "True"
EndSection

나는 문제가 어떻게든 커널과 관련이 있다고 생각하지만 낮은 수준의 것을 좋아하지 않기 때문에 스스로 작동하게 할 수는 없습니다.

도움, 문서 참조, 디버깅 팁 등을 환영합니다. 직접 수정하는 것은 괜찮지만 어디서부터 시작해야 할지(어디를 봐야 할지) 모르기 때문입니다.

$ uname -r
4.10.13-1-ARCH

답변1

나는 똑같은 성가신 문제가 있습니다. 해결책을 찾지 못했기 때문에 이 간단한 bash 스크립트를 해결 방법으로 사용했습니다.

#!/usr/bin/bash

while [[ $(dmesg | tail -n 3 | grep ETPS) == "" ]]
do
    sudo modprobe --remove psmouse
    sudo modprobe psmouse
    sleep 3
done

notify-send "Touchback" "Your touchpad is back ready to use"

exit

물론 두 sudoers명령 모두 암호를 묻지 않도록 구성하는 것이 가장 좋습니다.

관련 정보