Когда я нажимаю одну из правых боковых кнопок (а не обычные кнопки назад / вперед), мышь зависает, и ошибка -22 (см. Ниже) появляется в dmesg. Когда я убираю мышь и вставляю ее снова, она работает, но кнопки все еще замораживают мышь.
Я не смог найти никакой полезной информации ни об ошибке -22, ни о мыши сэнсэя.
Это из 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
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
Обновление 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]
Обновление 2:
Я только что попытался перезагрузиться из Windows (не закрываясь и не загружаясь снова) - и теперь мышь регистрируется нормально с дополнительными кнопками (они 10 и 11).
У меня была та же самая вещь, случившаяся с моей сенсорной панелью на моем ноутбуке (когда после перезагрузки из окон она работала иначе - хотя и не в лучшую сторону в такой ситуации). Я думаю, что обоснование заключалось в том, что в аппаратном обеспечении должно было быть что-то вроде ram / rom, в котором хранились некоторые специфичные для драйвера вещи и которые не были очищены должным образом при перезагрузке. 1113 Я понятия не имею, поможет ли это кому-нибудь, но теперь это задокументировано.
Похоже, что проблема решена в ядре 3.7.x ( https://bbs.archlinux.org/viewtopic.php?id=139994 ), поэтому у вас должна быть работающая мышь когда 13.04 корабли.
К счастью, конфигурация настраивается через встроенное ПО мыши. Подключите мышь к любому ПК с Windows 7. Загрузите SteelSeries Engine для Windows, отключите кнопки вверх и вниз страницы. Подключите мышь к вашей Ubuntu.
У меня нет решения, но у меня может быть подсказка о том, что происходит.
У меня та же мышь и та же проблема, и я подозреваю, что ошибка ядра где-то в подсистеме USB. Используя ядро 3.2.0 (Debian-unstable) и следуя документации usbmon :
# mount -t debugfs none_debugfs /sys/kernel/debug
# modprobe usbmon
# grep -B5 SteelSeries /sys/kernel/debug/usb/devices
T: Bus=03 ...
...
# cat /sys/kernel/debug/usb/usbmon/3u
Теперь я должен увидеть след всего, что происходит на шине USB 3. И действительно, когда я двигаю мышь, я вижу строки вроде:
ee561cc0 3981940473 C Ii:3:016:1 0:1 8 = 01000000 ffff0000
ee561cc0 3981940545 S Ii:3:016:1 -115:1 8 <
Но когда я нажимаю одну из этих кнопок мыши справа, я ничего не получаю. И тогда я не получаю никаких данных, когда я больше двигаю мышь. Что я могу только предположить, означает, что драйвер USB пошел Вт.
Я бы поинтересовался мышью (и немного поработаю), но и OSX, и (я полагаю) Windows справляются с этим просто отлично.
Хорошо, это скорее обходной путь, чем решение, но, как сказал @skomorokh, отключите кнопки в Windows, а затем сохраните настройку в новом профиле и сохраните ее на мыши, чтобы избежать потери конфигурации при отключении мыши .
То же самое. За исключением того, что отключение этого в Windows только, кажется, временно решает проблему - это появляется снова, если мышь повторно подключена. Что, что интересно, похоже, сохранится до следующего посещения Windows. Я, вероятно, должен прекратить подключать его к моему монитору.
Я также попробовал ядро 3.4 из ядра PPA безрезультатно.
После некоторых поисков этой ошибки и исправлений для устройств ввода, которые перестали работать в Linux, я нашел несколько вещей, которые нужно попробовать. Увы, они, как правило, требуют перестройки ядра, чего я не делал в последнее время, за исключением простых монолитных ситуаций bzImage. И поэтому я поделюсь ими здесь, пока не исследую удобные средства перестройки модулей в Ubuntu:
В ядре USB есть файл quirks.c, который реализует обходные пути для некоторых неправильно работающих устройств:
Наша мышь не один из них. Но, возможно, один из этих твиков поможет? Они задокументированы в заголовке .
В качестве альтернативы, есть константа HID_MAX_USAGES в hid.h, которая была превышена некоторыми устройствами.
В одном случае , где это было исправлением, было также замечено, что мышь предложила несколько интерфейсов. Наша мышь тоже делает это, проверяет lsusb -v и ищет Ideazon (который является материнской компанией / производителем SteelSeries / как их называют на USB-земле). Может быть, мы можем просто как-то занести эту часть в черный список?