2

for a while now i have been using logitech's unifying receiver. when i connect it to my computer, sometimes it works [e.g. mouse moving] and sometimes it doesn't. when it doesn't work, the receiver is detected by lsusb:

Bus 001 Device 027: ID 046d:c52b Logitech, Inc. Unifying Receiver

but undetected by 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)]

when it works, xinput detects my mouse and keyboard.

actions that helped solve this, but are not a permanent solution:

  1. logout\reset

  2. reconnecting the usb receiver multiple times, eventually it works.

i should also note that the receiver works flawlessly on a windows computer i have.

i've been suffering from this error for a while now and haven't found any other posts that helped me solve it... thanks for the help.!

abk
  • 21

2 Answers2

0

Create this little script called /usr/local/bin/reset_logitech:

#!/bin/bash
modprobe -r hid_logitech_dj
modprobe    hid_logitech_dj

Make it executable:

sudo chmod a+x /usr/local/bin/reset_logitech

The next time your keyboard and mouse aren't working (assuming you have a second one that is working) type:

sudo reset_logitech

If this works reliably add it to your boot setup:

0

I also had exactly the same problem on 16.04 running on a laptop and the logitech unifying receiver plugged into a kvm. On startup it always worked, however after cycling the kvm it sometimes did not. After either multiple kvm button presses or multiple times unplugging and plugging it back in and it would eventually work again.

Having googled around and trying various solutions, this is what finally worked for me.

$ lsusb | grep Unifying
Bus 003 Device 123: ID 046d:c52b Logitech, Inc. Unifying Receiver

Take note of the ID, in this case 046d:c52b. The first part is the vendor id and the latter the product id. The usb device needs to be located under /sys/bus/usb/devices/. The symlinks under this folder each link to a folder with an idProduct and idVendor file. You can search for the correct folder with the following commands.

ls /sys/bus/usb/devices/*/idVendor | xargs grep <vendor_id>
ls /sys/bus/usb/devices/*/idProduct | xargs grep <product_id>

For example:

$ ls /sys/bus/usb/devices/*/idProduct | xargs grep c52b
/sys/bus/usb/devices/3-6.4/idProduct:c52b

In this example the device folder is 3-6.4. Now that the correct usb device has been identified, run the following command:

echo 'on' | sudo tee /sys/bus/usb/devices/<device_folder>/power/control

After running that command I needed to unplug and plug the receiver again, and after that the logitech unifying receiver was detected every time.

NOTE: This solution is not permanent, it would need to be rerun after a reboot. You could add the command to /etc/rc.local to make it run on startup, however I am not sure how stable these device folder names are.

Link to original solution: https://askubuntu.com/a/850597/92598