sriemer / fix-linux-mouse

Hints how to fix USB mouse issues on Linux
44 stars 5 forks source link

Logitech mouse not working after boot in X11, extracting and reinserting it works #25

Closed mimmus closed 4 years ago

mimmus commented 4 years ago

Hi, I have a Logitech Mouse with this description: Bus 002 Device 005: ID 046d:c00f Logitech, Inc. MouseMan Traveler/Mobile After boot, it doesn't work in X11, it is "frozen" but can be temporarily unblocked clicking on right button and definitely unblocked extracting and reinserting USB. No errors in dmesg and X11.log. I tried all fixes I was able to find on your and other pages.

Any other idea?

Thanks in advance

sriemer commented 4 years ago

Thanks for your report. Sounds strange indeed. Sounded first like USB auto-suspend but if you say you've tested that, it is just X11 and not an issue on the VT, then it might be something else. Product ID c00f is indeed still not in the Linux kernel HID quirks table.

This mouse is from 2002, right? USB 3.0 wasn't invented yet, Windows 7 neither. Some devices have firmware issues and never work on USB 3.x ports this way. That is usually visible by freezes or reconnects. I haven't heard about any mice misbehaving like that yet - only touch screens with special driver.

Sounds like this is not an issue on usbhid level but on usbcore level instead. I can recommend looking at the usbcore quirks shown in #21. There are many quirks to be tried in https://elixir.bootlin.com/linux/v5.3-rc6/source/include/linux/usb/quirks.h#L9. For a Logitech M90 from 2008, there is USB_QUIRK_RESET_RESUME set. So that one should be tried first. Further possibilities: USB_QUIRK_RESET, USB_QUIRK_NO_LPM (no link power management), USB_QUIRK_NO_SET_INTF.

The possibility to change usbcore quirks without kernel recompile is rather new and not all distros backport it. With Ubuntu you would be lucky. Which distro and which kernel version are you using?

If all this does not work, then debugging with a USB sniffer would be required to check the device on protocol level.

I hope this helps.

sriemer commented 4 years ago

I see no matching quirks in libinput https://github.com/wayland-project/libinput/blob/master/quirks/30-vendor-logitech.quirks. If it would be really usbhid, then I can only imagine HID_QUIRK_NO_INIT_REPORTS (0x20000000).

sriemer commented 4 years ago

Kernel boot parameter usbcore.old_scheme_first=1 is another option for better support of old devices.

mimmus commented 4 years ago

No luck! Yes, it is an old, small (portable) mouse.

Thank you anyway, I will keep to re-insert it after booting

sriemer commented 4 years ago

Sorry, got no better idea but to contact the linux-input mailing list otherwise. Those guys are pretty overloaded and old mice are not their priority esp. if it is not a distro where you pay for support. Maybe somebody with a similar issue finds this and has a solution. Closing for now.