Das Mausrad hat zu arbeiten aufgehört

2955
thornjad

Vor etwa einer Woche haben die Scroll-Räder von Mäusen aufgehört zu arbeiten (nicht nur eine, alle Mäuse). Hier ist, was ich versucht habe, das Problem zu untersuchen und zu beheben, alles bisher ohne Erfolg:

  • Bestätigt, dass das Problem bei drei Mäusen besteht. Einer ist Corsair, zwei sind Logitech
  • Bestätigt, dass alle drei Mäuse unter anderen Betriebssystemen einwandfrei funktionieren
  • Windows wurde auf demselben Computer gebootet und bestätigt, dass der Bildlauf funktioniert. Es handelt sich also nicht um ein Hardwareproblem
  • xinput zeigt die Maus einschließlich des Scrollrads und die Button-Map ist 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
  • xevzeigt kein Ereignis an, wenn das Scrollrad bewegt wird. Der mittlere Mausklick funktioniert jedoch einwandfrei.
  • Der Neustart des Fenstermanagers hatte keine Auswirkungen
  • Der Wechsel zu einem anderen Fenstermanager hatte keine Auswirkungen
  • Ein Neustart von X hatte keine Auswirkungen
  • Ein Neustart hatte keine Auswirkungen
  • Ich habe drei USB-Anschlüsse, auf einen von ihnen zu wechseln, hat keine Auswirkungen. Versucht, zu einer anderen Maus zu wechseln, dasselbe Problem. Versuchte eine dritte Maus, dasselbe Problem.
  • Die gesamte Software wurde aktualisiert und der Kernel aktualisiert
  • Gesucht wurde nach Antworten zu Reddit, Super User, Quora usw., aber alle Lösungen wurden bereits von den oben genannten ausgeschlossen
  • Ich habe eine Frage zu Reddit r / linuxmint gestellt, aber sie waren keine Hilfe

Hier sind einige Informationen zu meiner Verwendung:

  • Betriebssystem: Linux Mint 18.1
  • Kernel: x86-64 Linux 4.10.0-14-generisch
  • WM: i3, auch super probiert und Zimt

Das größte Problem, das ich sehe, ist, dass xev kein Ereignis zeigt und dass das Problem bei verschiedenen Mäusen konsistent ist. Dieses Problem ist gerade erst vor einer Woche aufgetaucht und hatte vor etwa einem Jahr ohne Pflege gearbeitet. Ich kann mir keine Änderungen vorstellen, die dies in den letzten Tagen zuvor verursacht haben könnten, und ich werde zunehmend frustriert.

Irgendwelche Ideen, einen Fix, was als nächstes zu untersuchen?

Update: Wie pro Kommentar, hier ist die Ausgabe von xinput list-props:

Device 'ckb1: Corsair Gaming Sabre PRO RGB Mouse': Device Enabled (152): 1 Coordinate Transformation Matrix (154): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000 Device Accel Profile (276): 0 Device Accel Constant Deceleration (277): 1.000000 Device Accel Adaptive Deceleration (278): 1.000000 Device Accel Velocity Scaling (279): 10.000000 Device Product ID (269): 6940, 6959 Device Node (270): "/dev/input/event8" Evdev Axis Inversion (280): 0, 0 Evdev Axes Swap (282): 0 Axis Labels (283): "Rel X" (162), "Rel Y" (163), "Rel Z" (581), "Rel Rotary X" (582), "Rel Rotary Y" (583), "Rel Rotary Z" (584), "Rel Horiz Wheel" (489), "Rel Dial" (585), "Rel Vert Wheel" (275), "Rel Misc" (586), "None" (0), "None" (0), "None" (0), "None" (0), "None" (0) Button Labels (284): "Button Left" (155), "Button Middle" (156), "Button Right" (157), "Button Wheel Up" (158), "Button Wheel Down" (159), "Button Horiz Wheel Left" (160), "Button Horiz Wheel Right" (161), "Button Side" (273), "Button Extra" (274), "Button Forward" (298), "Button Back" (299), "Button Task" (300), "Button 8" (579), "Button 9" (580), "Button Unknown" (272), "Button Unknown" (272), "Button Unknown" (272), "Button Unknown" (272), "Button Unknown" (272), "Button Unknown" (272), "Button Unknown" (272), "Button Unknown" (272), "Button Unknown" (272), "Button Unknown" (272) Evdev Scrolling Distance (285): -77, -77, 1 Evdev Middle Button Emulation (286): 0 Evdev Middle Button Timeout (287): 50 Evdev Third Button Emulation (288): 0 Evdev Third Button Emulation Timeout (289): 1000 Evdev Third Button Emulation Button (290): 3 Evdev Third Button Emulation Threshold (291): 20 Evdev Wheel Emulation (292): 0 Evdev Wheel Emulation Axes (293): 0, 0, 4, 5 Evdev Wheel Emulation Inertia (294): 10 Evdev Wheel Emulation Timeout (295): 200 Evdev Wheel Emulation Button (296): 4 Evdev Drag Lock Buttons (297): 0 

Und die Ausgabe evtestals ich das Rad auf und ab scrollen:

Event: time 1491756163.211018, type 2 (EV_REL), code 8 (REL_WHEEL), value -1 Event: time 1491756163.211018, -------------- SYN_REPORT ------------ Event: time 1491756163.459021, type 2 (EV_REL), code 8 (REL_WHEEL), value -1 Event: time 1491756163.459021, -------------- SYN_REPORT ------------ Event: time 1491756163.684019, type 2 (EV_REL), code 8 (REL_WHEEL), value -1 Event: time 1491756163.684019, -------------- SYN_REPORT ------------ Event: time 1491756164.165007, type 2 (EV_REL), code 8 (REL_WHEEL), value -1 Event: time 1491756164.165007, -------------- SYN_REPORT ------------ Event: time 1491756164.582066, type 2 (EV_REL), code 8 (REL_WHEEL), value 1 Event: time 1491756164.582066, -------------- SYN_REPORT ------------ Event: time 1491756164.712050, type 2 (EV_REL), code 8 (REL_WHEEL), value 1 Event: time 1491756164.712050, -------------- SYN_REPORT ------------ Event: time 1491756164.872037, type 2 (EV_REL), code 8 (REL_WHEEL), value 1 Event: time 1491756164.872037, -------------- SYN_REPORT ------------ Event: time 1491756165.095999, type 2 (EV_REL), code 8 (REL_WHEEL), value 1 Event: time 1491756165.095999, -------------- SYN_REPORT ------------ Event: time 1491756166.027074, type 2 (EV_REL), code 8 (REL_WHEEL), value -1 Event: time 1491756166.027074, -------------- SYN_REPORT ------------ Event: time 1491756166.419054, type 2 (EV_REL), code 8 (REL_WHEEL), value -1 Event: time 1491756166.419054, -------------- SYN_REPORT ------------ 

Update 2: Relevanter Abschnitt von /var/log/Xorg.0.log. Um klar zu sein, hier ist die Maus Corsair, aber ich hatte auch das gleiche Problem mit Logitech- und Microsoft-Mäusen.

 (II) config/udev: Adding input device ckb1: Corsair Gaming Sabre PRO RGB Mouse (/dev/input/event6) (**) ckb1: Corsair Gaming Sabre PRO RGB Mouse: Applying InputClass "evdev keyboard catchall" (II) Using input driver 'evdev' for 'ckb1: Corsair Gaming Sabre PRO RGB Mouse' (**) ckb1: Corsair Gaming Sabre PRO RGB Mouse: always reports core events (**) evdev: ckb1: Corsair Gaming Sabre PRO RGB Mouse: Device: "/dev/input/event6" (--) evdev: ckb1: Corsair Gaming Sabre PRO RGB Mouse: Vendor 0x1b1c Product 0x1b2f (--) evdev: ckb1: Corsair Gaming Sabre PRO RGB Mouse: Found 20 mouse buttons (--) evdev: ckb1: Corsair Gaming Sabre PRO RGB Mouse: Found keys (II) evdev: ckb1: Corsair Gaming Sabre PRO RGB Mouse: Forcing relative x/y axes to exist. (II) evdev: ckb1: Corsair Gaming Sabre PRO RGB Mouse: Configuring as mouse (II) evdev: ckb1: Corsair Gaming Sabre PRO RGB Mouse: Configuring as keyboard (**) evdev: ckb1: Corsair Gaming Sabre PRO RGB Mouse: YAxisMapping: buttons 4 and 5 (**) evdev: ckb1: Corsair Gaming Sabre PRO RGB Mouse: EmulateWheelButton: 4, EmulateWheelInertia: 10, EmulateWheelTimeout: 200 (**) Option "config_info" "udev:/sys/devices/virtual/input/input15/event6" (II) XINPUT: Adding extended input device "ckb1: Corsair Gaming Sabre PRO RGB Mouse" (type: KEYBOARD, id 14) (**) Option "xkb_rules" "evdev" (**) Option "xkb_model" "pc105" (**) Option "xkb_layout" "us" (II) config/udev: Adding input device ckb1: Corsair Gaming Sabre PRO RGB Mouse (/dev/input/event8) (**) ckb1: Corsair Gaming Sabre PRO RGB Mouse: Applying InputClass "evdev pointer catchall" (**) ckb1: Corsair Gaming Sabre PRO RGB Mouse: Applying InputClass "evdev keyboard catchall" (**) ckb1: Corsair Gaming Sabre PRO RGB Mouse: Applying InputClass "Natural Scrolling" (II) Using input driver 'evdev' for 'ckb1: Corsair Gaming Sabre PRO RGB Mouse' (**) ckb1: Corsair Gaming Sabre PRO RGB Mouse: always reports core events (**) evdev: ckb1: Corsair Gaming Sabre PRO RGB Mouse: Device: "/dev/input/event8" (--) evdev: ckb1: Corsair Gaming Sabre PRO RGB Mouse: Vendor 0x1b1c Product 0x1b2f (--) evdev: ckb1: Corsair Gaming Sabre PRO RGB Mouse: Found 20 mouse buttons (--) evdev: ckb1: Corsair Gaming Sabre PRO RGB Mouse: Found scroll wheel(s) (--) evdev: ckb1: Corsair Gaming Sabre PRO RGB Mouse: Found relative axes (--) evdev: ckb1: Corsair Gaming Sabre PRO RGB Mouse: Found x and y relative axes (--) evdev: ckb1: Corsair Gaming Sabre PRO RGB Mouse: Found keys (II) evdev: ckb1: Corsair Gaming Sabre PRO RGB Mouse: Configuring as mouse (II) evdev: ckb1: Corsair Gaming Sabre PRO RGB Mouse: Configuring as keyboard (II) evdev: ckb1: Corsair Gaming Sabre PRO RGB Mouse: Adding scrollwheel support (**) Option "VertScrollDelta" "-77" (**) Option "HorizScrollDelta" "-77" (**) evdev: ckb1: Corsair Gaming Sabre PRO RGB Mouse: YAxisMapping: buttons 4 and 5 (**) evdev: ckb1: Corsair Gaming Sabre PRO RGB Mouse: EmulateWheelButton: 4, EmulateWheelInertia: 10, EmulateWheelTimeout: 200 (**) Option "config_info" "udev:/sys/devices/virtual/input/input16/event8" (II) XINPUT: Adding extended input device "ckb1: Corsair Gaming Sabre PRO RGB Mouse" (type: KEYBOARD, id 15) (**) Option "xkb_rules" "evdev" (**) Option "xkb_model" "pc105" (**) Option "xkb_layout" "us" (EE) BUG: triggered 'if (axnum >= dev->valuator->numAxes)' (EE) BUG: ../../Xi/exevents.c:2103 in InitValuatorAxisStruct() (EE)  (EE) Backtrace: (EE) 0: /usr/lib/xorg/Xorg (xorg_backtrace+0x4e) [0x560d79deaade] (EE) 1: /usr/lib/xorg/Xorg (InitValuatorAxisStruct+0x67) [0x560d79d7b677] (EE) 2: /usr/lib/xorg/modules/input/evdev_drv.so (0x7f48d221e000+0x4b15) [0x7f48d2222b15] (EE) 3: /usr/lib/xorg/modules/input/evdev_drv.so (0x7f48d221e000+0x58de) [0x7f48d22238de] (EE) 4: /usr/lib/xorg/modules/input/evdev_drv.so (0x7f48d221e000+0x6d23) [0x7f48d2224d23] (EE) 5: /usr/lib/xorg/Xorg (ActivateDevice+0x4a) [0x560d79c80c4a] (EE) 6: /usr/lib/xorg/Xorg (0x560d79c38000+0xa2b19) [0x560d79cdab19] (EE) 7: /usr/lib/xorg/Xorg (0x560d79c38000+0xb4f0b) [0x560d79cecf0b] (EE) 8: /usr/lib/xorg/Xorg (0x560d79c38000+0xb54f3) [0x560d79ced4f3] (EE) 9: /usr/lib/xorg/Xorg (config_init+0x9) [0x560d79cebea9] (EE) 10: /usr/lib/xorg/Xorg (InitInput+0xbb) [0x560d79ccefdb] (EE) 11: /usr/lib/xorg/Xorg (0x560d79c38000+0x57d91) [0x560d79c8fd91] (EE) 12: /lib/x86_64-linux-gnu/libc.so.6 (__libc_start_main+0xf0) [0x7f48d8c8d830] (EE) 13: /usr/lib/xorg/Xorg (_start+0x29) [0x560d79c7a049] (EE)  (II) evdev: ckb1: Corsair Gaming Sabre PRO RGB Mouse: initialized for relative axes. (**) ckb1: Corsair Gaming Sabre PRO RGB Mouse: (accel) keeping acceleration scheme 1 (**) ckb1: Corsair Gaming Sabre PRO RGB Mouse: (accel) acceleration profile 0 (**) ckb1: Corsair Gaming Sabre PRO RGB Mouse: (accel) acceleration factor: 2.000 (**) ckb1: Corsair Gaming Sabre PRO RGB Mouse: (accel) acceleration threshold: 4 (II) config/udev: Adding input device ckb1: Corsair Gaming Sabre PRO RGB Mouse (/dev/input/mouse0) (II) No input driver specified, ignoring this device. (II) This device may have been added with another device file. 

Die Ausgabe von, xinput --testwenn ich scrolle, ist:

motion a[8]=-1 motion a[8]=-2 motion a[8]=-3 motion a[8]=-2 motion a[8]=-1 motion a[8]=0 motion a[8]=1 motion a[8]=2 motion a[8]=3 motion a[8]=4 motion a[8]=3 motion a[8]=2 motion a[8]=1 motion a[8]=0

3
Bearbeiten Sie die Frage mit der Ausgabe von "xinput list-props 123", wobei "123" die ID Ihrer Maus ist, wie in "xinput" dargestellt. Führen Sie "evtest / dev / input / eventX" als root auf dem Pfad aus, der in "list-props" angezeigt wird, und sehen Sie, was passiert, wenn Sie das Scrollrad verwenden. dirkt vor 7 Jahren 0
Ok, "evtest" -Ergebnisse sind korrekt, daher liegt das Problem im "evdev" -Treiber. Es gibt eine Menge Achsen für die Maus (hat sie so viele Räder oder andere Gizmos?) Möglicherweise verwirrt dies "evdev". Bitte schauen Sie in `/ var / log / Xorg.0.log` nach Zeilen, deren evdev sich auf diese Maus + umgebende Zeilen bezieht, und aktualisieren Sie die Frage mit dem entsprechenden Teil. Auf welcher Achse befindet sich das Scrollrad, wenn Sie `xinput --test 123` ausführen (wieder Ihre ID anstelle von` 123`)? Ist vielleicht eine der anderen Achsen auf die Tasten 4 und 5 abgebildet? Haben Sie vor einer Woche `X` oder den` evdev`-Treiber aktualisiert? dirkt vor 7 Jahren 0
Ich habe meinen Beitrag aktualisiert (Entschuldigung für die Verzögerung). Ich habe X oder evdev zu dieser Zeit nicht aktualisiert, es sei denn, es war apt. Gibt es eine Möglichkeit, das zu überprüfen? Ich stelle auch fest, dass die Ausgabe in Xorg.0.log angibt, dass meine Maus 20 Schaltflächen hat, und wie Sie darauf hinweisen, gibt es viele Achsen. Was meine Maus physisch hat: Links- und Rechtsklick, Mausrad, auf das geklickt werden kann, Schaltflächen vorwärts und rückwärts und ein DPI-Wähler. thornjad vor 7 Jahren 0

2 Antworten auf die Frage

1
thornjad

Vielen herzlichen Dank an alle hier und auf Reddit, besonders @dirkt, für all die Hilfe. Am Ende bin ich mit der Nuklearoption gegangen: Ich habe meine Root-Partition gelöscht und Linux neu installiert. Mein Scrollrad funktioniert jetzt einwandfrei und es wurden ein paar andere Probleme behoben, die ich hatte.

Ich empfehle das nicht für die meisten Benutzer, die auf ein Problem wie dieses stoßen, obwohl es funktioniert. Gehen Sie einige Arbeiten durch, um das Problem zu beheben, bevor Sie alles in Ordnung bringen (und natürlich zuerst alle Daten sichern).

Ich bin jetzt unter Linux Mint 18.2 und verwende den Standard-Kernel 4.8. Ich kann meine Frage mit weiteren Informationen aktualisieren, wenn jemand neugierig ist, was die gleichen Befehlsausgaben jetzt sind.

0
dirkt

Teilantwort:

Wie Sie sehen, werden die Ereignisse des Scrollrads gut angezeigt. Der X evdev-Treiber wird jedoch verwirrt, weil er die Information erhält, dass das entsprechende Eingabegerät über viele Achsen, viele Schaltflächen und sogar Tasten verfügt (weshalb Sie in den Protokollen Konfiguration als Tastatur sehen ). Aus diesem Grund werden die Radereignisse nicht wie üblich in die Tasten 4 und 5 übersetzt. Daher erkennen Anwendungen auch die Radereignisse nicht.

Die Frage ist also, warum das Gerät behauptet, so viele Eingaben zu haben. Ich vermute, dass, wenn Sie laufen evtest, wird es Liste eine Menge der unterstützten Ereignisse von Typ 1 und 2. Zum Vergleich, hier ist das, was ich für meine Maus erhalten:

$ sudo evtest ... Supported events: Event type 0 (EV_SYN) Event type 1 (EV_KEY) Event code 272 (BTN_LEFT) Event code 273 (BTN_RIGHT) Event code 274 (BTN_MIDDLE) Event type 2 (EV_REL) Event code 0 (REL_X) Event code 1 (REL_Y) Event code 8 (REL_WHEEL) Event type 4 (EV_MSC) Event code 4 (MSC_SCAN) 

Sie erhalten wahrscheinlich alle Achsen von 0 bis 8 und möglicherweise auch alle Tasten.

Wenn dies der Fall ist, deutet dies auf ein Problem mit den Kernel-Treibern hin. Bitte aktualisieren Sie auf den neuesten Kernel und versuchen Sie es erneut.

Alle Ihre Mäuse sind wahrscheinlich HID-Geräte (ein standardisiertes USB-Eingangsprotokoll). Wenn das Aktualisieren des Kernels nicht funktioniert, besteht der nächste Schritt darin, den HID-Deskriptor zu überprüfen (siehe die Anweisungen hier ), um zu sehen, ob er richtig ist, aber das wird sehr technisch.

Danke für die Hilfe. Sie haben Recht, dass evtest viele unterstützte Ereignisse bietet. Ich hatte jedoch gedacht, dass der Kernel das Problem sein könnte, denn als dieses Problem aufkam, benutzte ich 4.4.0-66. Ich bin auf 4.10.0-14 gegangen und nichts hat sich geändert. Könnte es sich lohnen, zu 4.10.14 zu gehen? thornjad vor 7 Jahren 0
Ich versuche es nicht, es zu versuchen, weil wir bisher nicht wissen, was genau es verursacht, und wenn ein Kernel-Update es löst, ist das der einfache Weg. Das Debuggen wird haarig, ich habe keine Ahnung, was dieses Verhalten verursachen könnte. Ein Upgrade von "udev", "systemd" und allem, was damit zusammenhängt, ist ebenfalls einen Versuch wert. dirkt vor 7 Jahren 0
Ich habe ein Upgrade auf 4.10.14 sowie udev und systemd durchgeführt. Es hatte keine Wirkung. Am Ende habe ich das gesamte Betriebssystem neu installiert: / thornjad vor 7 Jahren 0