Las*_*ini 5 mouse xinput usbhid
当我按下右侧按钮之一(不是通常的后退/前进按钮)时,鼠标冻结,并且 -22 错误(见下文)出现在 dmesg 中。当我取出鼠标并再次放入时,它可以工作,但按钮仍然冻结鼠标。
我找不到有关错误 -22 或有关 Sensei 鼠标的任何有用信息。
这是启动后的 dmesg:
[ 2.473271] input: La-VIEW Technology SteelSeries as /devices/pci0000:00/0000:00:1d.0/usb2/2-1/2-1.6/2-1.6:1.0/input/input3
[ 2.473445] generic-usb 0003:1038:1361.0001: input,hidraw0: USB HID v1.00 Mouse [La-VIEW Technology SteelSeries ] on usb-0000:00:1d.0-1.6/input0
[ 2.474360] generic-usb: probe of 0003:1038:1361.0002 failed with error -22
[ 2.474427] usbcore: registered new interface driver usbhid
[ 2.474493] usbhid: USB HID core driver
Run Code Online (Sandbox Code Playgroud)
xinput list-props 8 产量:
Device 'La-VIEW Technology SteelSeries ':
Device Enabled (142): 1
Coordinate Transformation Matrix (144): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
Device Accel Profile (271): 0
Device Accel Constant Deceleration (272): 3.000000
Device Accel Adaptive Deceleration (273): 1.000000
Device Accel Velocity Scaling (274): 10.000000
Device Product ID (260): 4152, 4961
Device Node (261): "/dev/input/event3"
Evdev Axis Inversion (275): 0, 0
Evdev Axes Swap (277): 0
Axis Labels (278): "Rel X" (152), "Rel Y" (153), "Rel Horiz Wheel" (269), "Rel Vert Wheel" (270)
Button Labels (279): "Button Left" (145), "Button Middle" (146), "Button Right" (147), "Button Wheel Up" (148), "Button Wheel Down" (149), "Button Horiz Wheel Left" (150), "Button Horiz Wheel Right" (151), "Button Side" (264), "Button Extra" (265), "Button Forward" (266), "Button Back" (267), "Button Task" (268), "Button Unknown" (263), "Button Unknown" (263), "Button Unknown" (263), "Button Unknown" (263)
Evdev Middle Button Emulation (280): 0
Evdev Middle Button Timeout (281): 50
Evdev Third Button Emulation (282): 0
Evdev Third Button Emulation Timeout (283): 1000
Evdev Third Button Emulation Button (284): 3
Evdev Third Button Emulation Threshold (285): 20
Evdev Wheel Emulation (286): 0
Evdev Wheel Emulation Axes (287): 0, 0, 4, 5
Evdev Wheel Emulation Inertia (288): 10
Evdev Wheel Emulation Timeout (289): 200
Evdev Wheel Emulation Button (290): 4
Evdev Drag Lock Buttons (291): 0
Run Code Online (Sandbox Code Playgroud)
更新 1:
我现在尝试嗅探 USB 数据包以查看当我按下冻结鼠标的按钮时发生了什么。我把它们放在下面:
No. Time Source Destination Protocol Length Info
199479 390.237182 6.1 host USB 64 URB_INTERRUPT in
Frame 199479: 64 bytes on wire (512 bits), 64 bytes captured (512 bits)
USB URB
URB id: 0xffff8801ca55ba80
URB type: URB_COMPLETE ('C')
URB transfer type: URB_INTERRUPT (0x01)
Endpoint: 0x81, Direction: IN
1... .... = Direction: IN (1)
.000 0001 = Endpoint value: 1
Device: 6
URB bus id: 2
Device setup request: not relevant ('-')
Data: present (0)
URB sec: 1343162038
URB usec: 333931
URB status: Protocol error (-EPROTO) (-71)
URB length [bytes]: 0
Data length [bytes]: 0
[Request in: 194548]
[Time from request: 23.890818000 seconds]
No. Time Source Destination Protocol Length Info
199480 390.251625 host 6.1 USB 64 URB_INTERRUPT in
Frame 199480: 64 bytes on wire (512 bits), 64 bytes captured (512 bits)
USB URB
URB id: 0xffff8801ca55ba80
URB type: URB_SUBMIT ('S')
URB transfer type: URB_INTERRUPT (0x01)
Endpoint: 0x81, Direction: IN
1... .... = Direction: IN (1)
.000 0001 = Endpoint value: 1
Device: 6
URB bus id: 2
Device setup request: not relevant ('-')
Data: not present ('<')
URB sec: 1343162038
URB usec: 348374
URB status: Operation now in progress (-EINPROGRESS) (-115)
URB length [bytes]: 8
Data length [bytes]: 0
[Response in: 199481]
No. Time Source Destination Protocol Length Info
199481 390.255254 6.1 host USB 64 URB_INTERRUPT in
Frame 199481: 64 bytes on wire (512 bits), 64 bytes captured (512 bits)
USB URB
URB id: 0xffff8801ca55ba80
URB type: URB_COMPLETE ('C')
URB transfer type: URB_INTERRUPT (0x01)
Endpoint: 0x81, Direction: IN
1... .... = Direction: IN (1)
.000 0001 = Endpoint value: 1
Device: 6
URB bus id: 2
Device setup request: not relevant ('-')
Data: present (0)
URB sec: 1343162038
URB usec: 352003
URB status: Protocol error (-EPROTO) (-71)
URB length [bytes]: 0
Data length [bytes]: 0
[Request in: 199480]
[Time from request: 0.003629000 seconds]
No. Time Source Destination Protocol Length Info
199488 390.279626 host 6.1 USB 64 URB_INTERRUPT in
Frame 199488: 64 bytes on wire (512 bits), 64 bytes captured (512 bits)
USB URB
URB id: 0xffff8801ca55ba80
URB type: URB_SUBMIT ('S')
URB transfer type: URB_INTERRUPT (0x01)
Endpoint: 0x81, Direction: IN
1... .... = Direction: IN (1)
.000 0001 = Endpoint value: 1
Device: 6
URB bus id: 2
Device setup request: not relevant ('-')
Data: not present ('<')
URB sec: 1343162038
URB usec: 376375
URB status: Operation now in progress (-EINPROGRESS) (-115)
URB length [bytes]: 8
Data length [bytes]: 0
[Response in: 199489]
No. Time Source Destination Protocol Length Info
199489 390.283255 6.1 host USB 64 URB_INTERRUPT in
Frame 199489: 64 bytes on wire (512 bits), 64 bytes captured (512 bits)
USB URB
URB id: 0xffff8801ca55ba80
URB type: URB_COMPLETE ('C')
URB transfer type: URB_INTERRUPT (0x01)
Endpoint: 0x81, Direction: IN
1... .... = Direction: IN (1)
.000 0001 = Endpoint value: 1
Device: 6
URB bus id: 2
Device setup request: not relevant ('-')
Data: present (0)
URB sec: 1343162038
URB usec: 380004
URB status: Protocol error (-EPROTO) (-71)
URB length [bytes]: 0
Data length [bytes]: 0
[Request in: 199488]
[Time from request: 0.003629000 seconds]
No. Time Source Destination Protocol Length Info
199504 390.331599 host 6.1 USB 64 URB_INTERRUPT in
Frame 199504: 64 bytes on wire (512 bits), 64 bytes captured (512 bits)
USB URB
URB id: 0xffff8801ca55ba80
URB type: URB_SUBMIT ('S')
URB transfer type: URB_INTERRUPT (0x01)
Endpoint: 0x81, Direction: IN
1... .... = Direction: IN (1)
.000 0001 = Endpoint value: 1
Device: 6
URB bus id: 2
Device setup request: not relevant ('-')
Data: not present ('<')
URB sec: 1343162038
URB usec: 428348
URB status: Operation now in progress (-EINPROGRESS) (-115)
URB length [bytes]: 8
Data length [bytes]: 0
[Response in: 199505]
No. Time Source Destination Protocol Length Info
199505 390.335256 6.1 host USB 64 URB_INTERRUPT in
Frame 199505: 64 bytes on wire (512 bits), 64 bytes captured (512 bits)
USB URB
URB id: 0xffff8801ca55ba80
URB type: URB_COMPLETE ('C')
URB transfer type: URB_INTERRUPT (0x01)
Endpoint: 0x81, Direction: IN
1... .... = Direction: IN (1)
.000 0001 = Endpoint value: 1
Device: 6
URB bus id: 2
Device setup request: not relevant ('-')
Data: present (0)
URB sec: 1343162038
URB usec: 432005
URB status: Protocol error (-EPROTO) (-71)
URB length [bytes]: 0
Data length [bytes]: 0
[Request in: 199504]
[Time from request: 0.003657000 seconds]
Run Code Online (Sandbox Code Playgroud)
更新 2:
我刚刚尝试从 Windows 重新启动(不要关闭并再次启动,请注意) - 现在鼠标可以很好地注册额外的按钮(它们是 btn 10 和 11)。
我的笔记本电脑上的触摸板发生了类似的事情(从 Windows 重新启动后它的行为有所不同 - 尽管在那种情况下情况并非如此)。我认为理由是硬件中一定有某种 ram/rom 存储了一些特定于驱动程序的东西,并且在重新启动时没有被正确清除。
我不知道这是否会对任何人有所帮助,但现在已记录在案。
小智 3
该问题似乎已在 3.7.x 内核 ( https://bbs.archlinux.org/viewtopic.php?id=139994 ) 中得到解决,因此在 13.04 发布时您应该拥有一个可以工作的鼠标。