When scrolling with a Logitech G502 Lightspeed mouse (046d:c08d) in wireless mode with the official wireless receiver (046d:c539, i.e. USB_DEVICE_ID_LOGITECH_NANO_RECEIVER_LIGHTSPEED_1 in `hid-logitech-dj.c`), the REL_WHEEL event is not fired consistently on mouse wheel notch/tick. [Note: This only affects wireless through receiver; wired works as expected] Rather than the event being fired when the mouse skips a notch/tick on the scroll wheel, it feels like the REL_WHEEL event is fired somewhere roughly around the middle point of the last notch/tick and the next notch/tick. I recorded a quick video to demonstrate this: https://youtu.be/IwaQAMDkotg In this clip I scroll the mouse wheel gently up and down, back and forth. Notice the appearance of REL_WHEEL_HI_RES with the value changing from 15 to -15 as the direction is changed; the wheel is being scrolled past the notch, but the REL_WHEEL event is not fired. When the hid-logitech-dj module is blacklisted, and linux defaults to a more generic driver (usbhid); this issue is not present; which can be seen here: https://youtu.be/8AkVWHUe88M To put this into a realistic end user perspective: If you try to play a game on Linux with the current behaviour; and perform an action that requires the use of a scroll wheel [for example; changing the current weapon in a shooter], the input is often 'dropped' from the user perspective, leading to frustration. I'm not exactly sure what further sort of information I could provide; I've only got back to using Linux on the desktop after 7 years; and it's my first time raising a kernel issue. That said, I'm happy to provide any further feedback, or even play with the kernel sources if someone could give me ideas of what I should experiment with.
<<attachment: evtest_samples.zip>>