On 06.02.19 01:01, Peter Hutterer wrote: > On Tue, Feb 05, 2019 at 12:43:29PM +0100, Sebastian Parschauer wrote: >> Are there maybe other ways to handle this better? >> >> Enable HID_QUIRK_ALWAYS_POLL automatically if manufacturer information >> is PixArt for USB optical mice? > > does this issue affect *all* pixart-based mice or just some? > if all, then it seems like a reasonable solution. I actually use the following search words to locate further devices: "Manufacturer: PixArt" mouse "Manufacturer: PixArt" mouse disconnect I have a strong indication that this affects all PixArt based 800 CPI and 1000 CPI mice, PAN3511, and PAW3515. 093a:2510 is very frequent for 800 CPI mice and also occurs for some 1000 CPI mice. I have it for my Trust mouse, a Microsoft mouse (Microsoft optical mouse 100) identifies like that, and there are many other reports with unknown mouse (casing) vendor. See e.g.: https://github.com/sriemer/fix-linux-mouse/issues/14 https://bugs.launchpad.net/ubuntu-gnome/+bug/1430638 The known PixArt mice in the "hid_quirks" table speak for themselves. Usually, PixArt based gaming mice are not used together with Linux VTs but I bet they are affected as well. My latest suspicions are in: https://github.com/sriemer/fix-linux-mouse/issues/15 I'd vote for that every website selling USB mice has to publish vendor and product ID as well as IC manufacturer information. Would be interesting if somebody has much older devices where the PixArt mouse sensor chip was separate from the USB mouse controller chip. I bet they still work together with the same guys. For the optical mouse camera projects, usually old Agilent/Avago ADNS mouse sensors are used and those mice used Logitech USB mouse controller ICs. Those Avago chips are now PixArt chips. Example: https://www.instructables.com/id/Mouse-Cam/ So PixArt seems to integrate Logitech firmware. The first fully integrated chips appeared around 2009. Hmmm, I actually have a Dell branded Logitech mouse with the Dell MS111-L requiring HID_QUIRK_ALWAYS_POLL. Would be interesting if a PixArt IC is inside. >> Enable the gpm service by default? > > A trivial hack would be to have a udev rule that checks for the Pixart > string in the device name and starts a custom systemd service that does > nothing but > > fd = open(device node) > while (true) read(fd, buffer, sizeof(buffer)); > > This should be enough? or does gpm do anything different? Would be a pretty nasty hack, gpm makes the mouse actually usable. Then I'd rather enable the gpm service if a PixArt chip is detected or do the auto polling in the kernel with a module parameter to disable "pixart_autopoll" in case that misbehaves. Cheers, Sebastian