Public bug reported: I've got a generic HID device Joystick with 2 buttons. On the latest 18.04 4.15 kernel both buttons were detected separately and work correctly. After upgrading to HWE 5.0.0-31 the second button disappeared. When I press it, the first button gets activated instead.
I've used Wireshark to make sure the Joystick continues to send the correct Interface descriptor, and it reports the 2 buttons separately in its payload, according to how the buttons are pressed. Here is the Interface descriptor the Joystick is submitting: 0x05, 0x01, // USAGE_PAGE (Generic Desktop) 0x09, 0x04, // USAGE (Joystick) 0xa1, 0x01, // COLLECTION (Application) 0x09, 0x01, // USAGE (Pointer) 0xA1, 0x00, // COLLECTION (Physical) 0x09, 0x30, // USAGE (X) 0x09, 0x31, // USAGE (Y) 0x15, 0x81, // LOGICAL_MINIMUM (-127) 0x25, 0x7F, // LOGICAL_MAXIMUM (127) 0x75, 0x08, // REPORT_SIZE (8) 0x95, 0x02, // REPORT_COUNT (2) 0x81, 0x02, // INPUT (Data,Var,Abs) 0x05, 0x09, // USAGE_PAGE (Button) 0x19, 0x01, // USAGE_MINIMUM 0x29, 0x01, // USAGE_MAXIMUM 0x15, 0x00, // LOGICAL_MINIMUM (0) 0x25, 0x01, // LOGICAL_MAXIMUM (1) 0x95, 0x02, // REPORT_COUNT (2) 0x75, 0x01, // REPORT_SIZE (1) 0x81, 0x02, // INPUT (Data,Var,Abs) 0x95, 0x01, // REPORT_COUNT (1) 0x75, 0x06, // REPORT_SIZE (6) 0x81, 0x03, // INPUT (Const,Var,Abs) 0xC0, // END_COLLECTION 0xC0, // END COLLECTION Here is the resulting report structure of 3 bytes, describing the current state of the Joystick: X7 X6 X5 X4 X3 X2 X1 X0 .... 8 bit signed relative coordinate x Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 .... 8 bit signed relative coordinate y . . . . . . B1 B0 .... two bits for Fire buttons I can confirm from Wireshark that the last byte will be 01 for button1 pressed, 02 for button2 pressed, and 03 for both buttons pressed. Nevertheless only one button is detected. I've tested that both with jstest-gtk, and with freedroid. I've tested on a 2nd machine, on which I did nothing but an upgrade from 4.15 to 5.0 HWE, on 4.15 it worked, on 5.0 it ceased working. Please advise if you need further info. ProblemType: Bug DistroRelease: Ubuntu 18.04 Package: linux-image-5.0.0-31-generic 5.0.0-31.33~18.04.1 ProcVersionSignature: Ubuntu 5.0.0-31.33~18.04.1-generic 5.0.21 Uname: Linux 5.0.0-31-generic x86_64 ApportVersion: 2.20.9-0ubuntu7.7 Architecture: amd64 Date: Sat Oct 12 02:03:06 2019 InstallationDate: Installed on 2019-10-08 (3 days ago) InstallationMedia: Ubuntu 18.04.3 LTS "Bionic Beaver" - Release amd64 (20190805) ProcEnviron: LANGUAGE=en_GB:en TERM=xterm-256color PATH=(custom, no user) LANG=en_GB.UTF-8 SHELL=/bin/bash SourcePackage: linux-signed-hwe UpgradeStatus: No upgrade log present (probably fresh install) ** Affects: linux-signed-hwe (Ubuntu) Importance: Undecided Status: New ** Tags: amd64 apport-bug bionic -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1847830 Title: HWE kernel 5.0 breaks Joystick 2nd button To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/linux-signed-hwe/+bug/1847830/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs