有一段时间我一直在使用罗技的统一接收器。当我将它连接到我的电脑时,有时候它可以工作[例如鼠标移动],有时它不工作。当它不工作时,接收器会被 lsusb 检测到:
Bus 001 Device 027: ID 046d:c52b Logitech, Inc. Unifying Receiver
但 xinput 无法检测到:
⎡ Virtual core pointer id=2 [master pointer (3)]
⎜ ↳ Virtual core XTEST pointer id=4 [slave pointer (2)]
⎜ ↳ Elan Touchpad id=13 [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)]
↳ Video Bus id=7 [slave keyboard (3)]
↳ Power Button id=8 [slave keyboard (3)]
↳ EasyCamera: EasyCamera id=12 [slave keyboard (3)]
↳ Ideapad extra buttons id=14 [slave keyboard (3)]
↳ AT Translated Set 2 keyboard id=15 [slave keyboard (3)]
当它工作时,xinput 会检测到我的鼠标和键盘。
有助于解决此问题但不是永久解决方案的措施:
登出\重置
多次重新连接 USB 接收器,最终可以工作。
我还应该注意到,接收器在我的 Windows 计算机上运行完美。
我已经被这个错误困扰了一段时间了,并没有找到任何其他可以帮助我解决这个问题的帖子...谢谢你的帮助!
答案1
创建这个小脚本/usr/local/bin/reset_logitech
:
#!/bin/bash
modprobe -r hid_logitech_dj
modprobe hid_logitech_dj
使其可执行:
sudo chmod a+x /usr/local/bin/reset_logitech
下次您的键盘和鼠标不工作时(假设您有第二个可以工作的键盘和鼠标),请输入:
sudo reset_logitech
如果此操作可靠,请将其添加到您的启动设置中:
答案2
我在笔记本电脑上运行 16.04 时也遇到了同样的问题,并且将罗技统一接收器插入 kvm。启动时它总是可以工作,但是循环 kvm 后有时却不行。按下多个 kvm 按钮或多次拔下并重新插入后,它最终会再次工作。
经过 Google 搜索并尝试了各种解决方案后,这个最终对我有用。
$ lsusb | grep Unifying
Bus 003 Device 123: ID 046d:c52b Logitech, Inc. Unifying Receiver
记下 ID,在本例中为046d:c52b
。第一部分是供应商 ID,后一部分是产品 ID。usb 设备需要位于 下/sys/bus/usb/devices/
。此文件夹下的符号链接每个都链接到一个带有idProduct
和idVendor
文件的文件夹。您可以使用以下命令搜索正确的文件夹。
ls /sys/bus/usb/devices/*/idVendor | xargs grep <vendor_id>
ls /sys/bus/usb/devices/*/idProduct | xargs grep <product_id>
例如:
$ ls /sys/bus/usb/devices/*/idProduct | xargs grep c52b
/sys/bus/usb/devices/3-6.4/idProduct:c52b
在此示例中,设备文件夹为3-6.4
。现在已识别出正确的 USB 设备,请运行以下命令:
echo 'on' | sudo tee /sys/bus/usb/devices/<device_folder>/power/control
运行该命令后,我需要拔下并再次插入接收器,之后每次都能检测到罗技统一接收器。
笔记:此解决方案不是永久性的,需要在重启后重新运行。您可以添加命令以/etc/rc.local
使其在启动时运行,但我不确定这些设备文件夹名称有多稳定。
原始解决方案链接:https://askubuntu.com/a/850597/92598