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

タッチパッドが正しく検出されましたが、まだ正しく機能していません。幸いなことに、マルチタッチ、クリック、2本指のスクロール、およびある種のキャリブレーションの問題があります(タッチパッドの中央だけが反応し、他の領域は入力を無視します)。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でもこの問題が発生します。

~からArch Linux Wikiページ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コマンドもパスワードを要求しないように設定するのが最善です。

関連情報