Вопрос или проблема
У меня есть беспроводная клавиатура Logitech и проводная мышь, подключенные к KVM-переключателю. Когда я нажимаю кнопку переключения, чтобы подключиться к ноутбуку с Windows или к этому ПК, загруженному на Windows, оба устройства работают нормально. Однако, когда я загружаю Ubuntu и переключаюсь на этот ПК, клавиатура работает, но мышь не работает на любом из 4 USB-портов KVM. В настоящее время я использую удлинительный USB-кабель, чтобы подключать и отключать USB-мышь между KVM и непосредственно к ПК по мере необходимости.
Поддержка USB legacy включена в BIOS, и я использую это ядро:
Linux ricardo-desktop 6.8.0-50-generic #51~22.04.1-Ubuntu SMP PREEMPT_DYNAMIC Thu Nov 21 12:03:03 UTC 2 x86_64 x86_64 x86_64 GNU/Linux
Если я запускаю lsusb с мышью, подключенной напрямую или через KVM-переключатель, Ubuntu распознает ее на обоих портах (Bus 010 Device 005 напрямую против Bus 008 Device 011 при подключении через KVM), но движение отсутствует при подключении через KVM-переключатель.
ricardo@ricardo-desktop:~$ lsusb
Bus 004 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 013 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 012 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 011 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 010 Device 005: ID 046d:c08b Logitech, Inc. G502 SE HERO Gaming Mouse
Bus 010 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 002: ID 1a40:0101 Terminus Technology Inc. Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 009 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 008 Device 010: ID 046d:c52b Logitech, Inc. Unifying Receiver
Bus 008 Device 006: ID 214b:7250 Huasheng Electronics USB2.0 HUB
Bus 008 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
ricardo@ricardo-desktop:~$ lsusb
Bus 004 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 007 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 013 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 012 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 011 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 010 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 006 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 002: ID 1a40:0101 Terminus Technology Inc. Hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 009 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 008 Device 011: ID 046d:c08b Logitech, Inc. G502 SE HERO Gaming Mouse
Bus 008 Device 010: ID 046d:c52b Logitech, Inc. Unifying Receiver
Bus 008 Device 006: ID 214b:7250 Huasheng Electronics USB2.0 HUB
Bus 008 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Похожий результат с xinput, идентификатор устройства остается прежним (8, 9 и 10):
ricardo@ricardo-desktop:~$ xinput
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ Logitech M310 id=11 [slave pointer (2)]
⎜ ↳ Logitech K520 id=13 [slave pointer (2)]
⎜ ↳ Logitech G502 HERO Gaming Mouse Keyboard id=8 [slave pointer (2)]
⎜ ↳ Logitech G502 HERO Gaming Mouse id=10 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ Power Button id=6 [slave keyboard (3)]
↳ Power Button id=7 [slave keyboard (3)]
↳ Eee PC WMI hotkeys id=12 [slave keyboard (3)]
↳ Logitech K520 id=14 [slave keyboard (3)]
↳ Logitech G502 HERO Gaming Mouse Keyboard id=9 [slave keyboard (3)]
ricardo@ricardo-desktop:~$ xinput
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ Logitech M310 id=11 [slave pointer (2)]
⎜ ↳ Logitech K520 id=13 [slave pointer (2)]
⎜ ↳ Logitech G502 HERO Gaming Mouse Keyboard id=8 [slave pointer (2)]
⎜ ↳ Logitech G502 HERO Gaming Mouse id=10 [slave pointer (2)]
⎣ Virtual core keyboard id=3 [master keyboard (2)]
↳ Virtual core XTEST keyboard id=5 [slave keyboard (3)]
↳ Power Button id=6 [slave keyboard (3)]
↳ Power Button id=7 [slave keyboard (3)]
↳ Eee PC WMI hotkeys id=12 [slave keyboard (3)]
↳ Logitech K520 id=14 [slave keyboard (3)]
↳ Logitech G502 HERO Gaming Mouse Keyboard id=9 [slave keyboard (3)]
если я расширяю информацию о USB при подключении напрямую:
Bus 010 Device 007: ID 046d:c08b Logitech, Inc. G502 SE HERO Gaming Mouse
Couldn't open device, some information will be missing
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x046d Logitech, Inc.
idProduct 0xc08b G502 SE HERO Gaming Mouse
bcdDevice 27.03
iManufacturer 1 Logitech
iProduct 2 G502 HERO Gaming Mouse
iSerial 3 047734553536
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 0x003b
bNumInterfaces 2
bConfigurationValue 1
iConfiguration 4
bmAttributes 0xa0
(Bus Powered)
Remote Wakeup
MaxPower 300mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 3 Human Interface Device
bInterfaceSubClass 1 Boot Interface Subclass
bInterfaceProtocol 2 Mouse
iInterface 0
HID Device Descriptor:
bLength 9
bDescriptorType 33
bcdHID 1.11
bCountryCode 0 Not supported
bNumDescriptors 1
bDescriptorType 34 Report
wDescriptorLength 67
Report Descriptors:
** UNAVAILABLE **
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0008 1x 8 bytes
bInterval 1
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 3 Human Interface Device
bInterfaceSubClass 0
bInterfaceProtocol 0
iInterface 0
HID Device Descriptor:
bLength 9
bDescriptorType 33
bcdHID 1.11
bCountryCode 0 Not supported
bNumDescriptors 1
bDescriptorType 34 Report
wDescriptorLength 151
Report Descriptors:
** UNAVAILABLE **
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0014 1x 20 bytes
bInterval 1
Расширенная информация при подключении через KVM-переключатель идентична за исключением USB-шины и устройства, как и ожидалось:
Bus 008 Device 013: ID 046d:c08b Logitech, Inc. G502 SE HERO Gaming Mouse
Couldn't open device, some information will be missing
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x046d Logitech, Inc.
idProduct 0xc08b G502 SE HERO Gaming Mouse
bcdDevice 27.03
iManufacturer 1 Logitech
iProduct 2 G502 HERO Gaming Mouse
iSerial 3 047734553536
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 0x003b
bNumInterfaces 2
bConfigurationValue 1
iConfiguration 4
bmAttributes 0xa0
(Bus Powered)
Remote Wakeup
MaxPower 300mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 3 Human Interface Device
bInterfaceSubClass 1 Boot Interface Subclass
bInterfaceProtocol 2 Mouse
iInterface 0
HID Device Descriptor:
bLength 9
bDescriptorType 33
bcdHID 1.11
bCountryCode 0 Not supported
bNumDescriptors 1
bDescriptorType 34 Report
wDescriptorLength 67
Report Descriptors:
** UNAVAILABLE **
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0008 1x 8 bytes
bInterval 1
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 1
bAlternateSetting 0
bNumEndpoints 1
bInterfaceClass 3 Human Interface Device
bInterfaceSubClass 0
bInterfaceProtocol 0
iInterface 0
HID Device Descriptor:
bLength 9
bDescriptorType 33
bcdHID 1.11
bCountryCode 0 Not supported
bNumDescriptors 1
bDescriptorType 34 Report
wDescriptorLength 151
Report Descriptors:
** UNAVAILABLE **
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x82 EP 2 IN
bmAttributes 3
Transfer Type Interrupt
Synch Type None
Usage Type Data
wMaxPacketSize 0x0014 1x 20 bytes
bInterval 1
Ответ или решение
Основная проблема заключается в том, что проводная мышь Logitech корректно работает при прямом подключении к ПК, но не через KVM-переключатель, когда система работает на Ubuntu. Стороны Windows, мышь функционирует корректно как при прямом подключении, так и через KVM. На основе предоставленной информации, проблема ограничивается взаимодействием KVM и Ubuntu.
Возможные причины проблемы:
-
Драйверы и Поддержка Устройств на Ubuntu:
- Убедитесь, что на Ubuntu установлены последние обновления системы и драйверов. Хотя мышь распознается командой
lsusb
, это не гарантирует, что необходимые драйверы полностью поддерживают устройство через KVM.
- Убедитесь, что на Ubuntu установлены последние обновления системы и драйверов. Хотя мышь распознается командой
-
Совместимость KVM-переключателя:
- Не все KVM-переключатели одинаково поддерживают работу с различными ОС. Возможное ограничение в аппаратной совместимости может препятствовать корректной работе мыши.
-
Конфигурация USB в BIOS:
- Несмотря на то, что поддержка USB Legacy включена, возможно, другие настройки BIOS могут влиять на совместимость работы KVM с Ubuntu. Проверьте наличие обновлений BIOS или дополнительных настроек, влияющих на работу USB, таких как XHCI Hand-off.
Рекомендации по устранению проблемы:
-
Обновление Системы:
- Настройте автоматическое обновление Ubuntu и убедитесь, что все пакеты обновлены, включая драйверы связанных устройств.
-
Проверка Журнала и Диагностика:
- Используйте команды
dmesg
иjournalctl
для поиска ошибок, связанных с USB или HID-устройствами, чтобы обнаружить детали, которые не были упомянуты вlsusb
.
- Используйте команды
-
Настройки KVM-переключателя:
- Если это возможно, попробуйте обновить прошивку KVM. Если устройство поддерживается, обновление может улучшить совместимость с устройствами различной ОС.
-
Проверка Альтернативных Портов:
- Если на KVM есть другие USB-порты, попробуйте подключить мышь к ним и проверьте совместимость. Это поможет выявить, нет ли проблемы с конкретным USB-портом на KVM.
-
Тестирование в Безопасном Режиме:
- Запустите Ubuntu в безопасном режиме, чтобы исключить влияние стороннего ПО или драйверов на работу мыши через KVM.
Заключение:
Проблема с совместимостью KVM-переключателя и Ubuntu при работе с проводной мышью Logitech может быть вызвана комбинацией аппаратных и программных факторов. Применяя предложенные рекомендации и проводя детальную диагностику, можно эффективно выявить и устранить причину неисправности. Если решение не найдено, стоит рассмотреть возможность использования альтернативных KVM-переключателей, которые гарантированно поддерживают работу в Linux-системах.