| 05 01 | Usage Page (Generic Desktop Control) |
| 09 05 | Usage (Game Pad) |
| A1 01 | Collection (Application) |
| 09 01 | Usage (Pointer) |
| A1 00 | Collection (Physical) |
| 05 01 | Usage Page (Generic Desktop Control) |
| 09 30 | Usage (X) |
| 09 31 | Usage (Y) |
| 15 00 | Logical Minimum (0) |
| 26 FF 00 | Logical Maximum (255) |
| 36 00 00 | Physical Minimum (0) |
| 46 FF 00 | Physical Maximum (255) |
| 66 00 00 | Unit (None) |
| 75 08 | Report Size (8) |
| 95 02 | Report Count (2) |
| 81 02 | Input (Data, Variable, Absolute) |
| 05 09 | Usage Page (Button) |
| 19 01 | Usage Minimum (1) |
| 29 0A | Usage Maximum (10) |
| 15 00 | Logical Minimum (0) |
| 25 01 | Logical Maximum (1) |
| 35 00 | Physical Minimum (0) |
| 45 01 | Physical Maximum (1) |
| 75 01 | Report Size (1) |
| 95 0A | Report Count (10) |
| 81 02 | Input (Data, Variable, Absolute) |
| 95 01 | Report Count (1) |
| 75 06 | Report Size (6) |
| 75 06 | Input (Constant) |
| C0 | End Collection |
| C0 | End Collection |
Report Descriptor: (length is 64)
Item(Global): Usage Page, data= [ 0x01 ] 1 Generic Desktop Controls Item(Local ): Usage, data= [ 0x05 ] 5 Gamepad Item(Main ): Collection, data= [ 0x01 ] 1 Application Item(Local ): Usage, data= [ 0x01 ] 1 Pointer Item(Main ): Collection, data= [ 0x00 ] 0 Physical Item(Global): Usage Page, data= [ 0x01 ] 1 Generic Desktop Controls Item(Local ): Usage, data= [ 0x30 ] 48 Direction-X Item(Local ): Usage, data= [ 0x31 ] 49 Direction-Y Item(Global): Logical Minimum, data= [ 0x00 ] 0 Item(Global): Logical Maximum, data= [ 0xff 0x00 ] 255 Item(Global): Physical Minimum, data= [ 0x00 0x00 ] 0 Item(Global): Physical Maximum, data= [ 0xff 0x00 ] 255 Item(Global): Unit, data= [ 0x00 0x00 ] 0 Item(Global): Report Size, data= [ 0x08 ] 8 Item(Global): Report Count, data= [ 0x02 ] 2 Item(Main ): Input, data= [ 0x02 ] 2 Data Variable Absolute No_Wrap Linear Preferred_State No_Null_Position Non_Volatile Bitfield Item(Global): Usage Page, data= [ 0x09 ] 9 Buttons Item(Local ): Usage Minimum, data= [ 0x01 ] 1 Button 1 (Primary) Item(Local ): Usage Maximum, data= [ 0x0a ] 10 (null) Item(Global): Logical Minimum, data= [ 0x00 ] 0 Item(Global): Logical Maximum, data= [ 0x01 ] 1 Item(Global): Physical Minimum, data= [ 0x00 ] 0 Item(Global): Physical Maximum, data= [ 0x01 ] 1 Item(Global): Report Size, data= [ 0x01 ] 1 Item(Global): Report Count, data= [ 0x0a ] 10 Item(Main ): Input, data= [ 0x02 ] 2 Data Variable Absolute No_Wrap Linear Preferred_State No_Null_Position Non_Volatile Bitfield Item(Global): Report Count, data= [ 0x01 ] 1 Item(Global): Report Size, data= [ 0x06 ] 6 Item(Main ): Input, data= [ 0x01 ] 1 Constant Array Absolute No_Wrap Linear Preferred_State No_Null_Position Non_Volatile Bitfield Item(Main ): End Collection, data=none Item(Main ): End Collection, data=none