#StackBounty: #linux #fedora #usb #keyboard #mouse Linux can't use USB devices attached to a KVM switch

Bounty: 100

I was using an old KVM switch between a Linux desktop and a Windows 10 notebook and all worked fine. Now I’m trying a new 4K display capable KVM switch and the mouse and the keyboard only work when switched to the Windows 10 notebook.

enter image description here

When I boot the Linux desktop the mouse and keyboard work to enter the bios setup and to choose the kernel version but when it starts booting into Linux the mouse and keyboard are lost. I tried various bios USB configurations.

The manufacturer site has this in its FAQ

The dedicated mouse and keyboard ports have EDID programming. This emulation is what allows the switch to receive hotkeys and mouse gestures but conflicts with gaming peripherals and select mouse/keyboard brands. This is an issue with all KVM switches that have hotkey and mouse gesture switching. We recommend using the USB port with a powered USB hub as a workaround. Because the USB port does not have EDID emulation, keyboard hotkeys and mouse gesture switching are not available to devices that use the USB input.

Would this EDID issue be the problem although my devices work fine when switched to Windows?

With the keyboard and the mouse connected to the desktop usb ports they show up like this

$ lsusb | grep Dell
Bus 003 Device 012: ID 413c:2003 Dell Computer Corp. Keyboard
Bus 003 Device 016: ID 413c:301d Dell Computer Corp. Dell Universal Receiver

dmesg output when disconnecting and reconnecting the mouse from and to the desktop USB:

[44207.307355] usb 3-1: USB disconnect, device number 16
[44237.459814] usb 3-1: new full-speed USB device number 17 using xhci_hcd
[44237.588780] usb 3-1: New USB device found, idVendor=413c, idProduct=301d, bcdDevice= 0.09
[44237.588793] usb 3-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[44237.588795] usb 3-1: Product: Dell Universal Receiver
[44237.588796] usb 3-1: Manufacturer: Dell
[44237.592182] input: Dell Dell Universal Receiver as /devices/pci0000:00/0000:00:14.0/usb3/3-1/3-1:1.0/0003:413C:301D.001D/input/input42
[44237.644089] hid-generic 0003:413C:301D.001D: input,hidraw3: USB HID v1.11 Keyboard [Dell Dell Universal Receiver] on usb-0000:00:14.0-1/input0
[44237.646362] input: Dell Dell Universal Receiver Mouse as /devices/pci0000:00/0000:00:14.0/usb3/3-1/3-1:1.1/0003:413C:301D.001E/input/input43
[44237.646539] input: Dell Dell Universal Receiver Consumer Control as /devices/pci0000:00/0000:00:14.0/usb3/3-1/3-1:1.1/0003:413C:301D.001E/input/input44
[44237.697939] input: Dell Dell Universal Receiver System Control as /devices/pci0000:00/0000:00:14.0/usb3/3-1/3-1:1.1/0003:413C:301D.001E/input/input45
[44237.698040] hid-generic 0003:413C:301D.001E: input,hidraw4: USB HID v1.11 Mouse [Dell Dell Universal Receiver] on usb-0000:00:14.0-1/input1
[44237.699622] hid-generic 0003:413C:301D.001F: hiddev96,hidraw5: USB HID v1.11 Device [Dell Dell Universal Receiver] on usb-0000:00:14.0-1/input2

When connected to the kvm dedicated ports they do not show.

I guess the kvm dedicated ports are here:

$ lsusb | grep Terminus
Bus 003 Device 011: ID 1a40:0101 Terminus Technology Inc. Hub

dmesg output when the kvm is connected to the desktop with the devices attached to it:

[44978.128957] usb 3-4: new high-speed USB device number 24 using xhci_hcd
[44978.255178] usb 3-4: New USB device found, idVendor=1a40, idProduct=0101, bcdDevice= 1.11
[44978.255181] usb 3-4: New USB device strings: Mfr=0, Product=1, SerialNumber=0
[44978.255183] usb 3-4: Product: USB 2.0 Hub
[44978.256899] hub 3-4:1.0: USB hub found
[44978.257119] hub 3-4:1.0: 4 ports detected
[44978.638953] usb 3-4.2: new low-speed USB device number 25 using xhci_hcd
[44978.830754] usb 3-4.2: New USB device found, idVendor=046d, idProduct=c534, bcdDevice= 1.01
[44978.830757] usb 3-4.2: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[44978.838801] logitech-djreceiver 0003:046D:C534.002A: hidraw0: USB HID v1.00 Keyboard [HID 046d:c534] on usb-0000:00:14.0-4.2/input0
[44978.895119] logitech-djreceiver 0003:046D:C534.002B: hidraw1: USB HID v1.11 Mouse [HID 046d:c534] on usb-0000:00:14.0-4.2/input1

So the devices can be seen as logitech-djreceiver. Is there some parameter that can be passed to the kernel or some driver hack to make it work? How to troubleshot?

Whenever I hit a key or move the mouse this line keeps appearing in the dmesg output:

[19064.570003] delayedwork_callback: delayedwork queued before hidpp interface was enumerated

So the devices signal is being passed through but Linux is not getting it as mouse and keyboard devices.

I have installed unifying-receiver-udev and rebooted and still does not work.

Also tried a Logitech mouse with the same results.

Get this bounty!!!

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.