Created
June 4, 2013 21:41
-
-
Save fendent/5709856 to your computer and use it in GitHub Desktop.
The XBox360 HID descriptor
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
char ReportDescriptor[196] = { | |
0x05, 0x01, // USAGE_PAGE (Generic Desktop) | |
0x09, 0x05, // USAGE (Game Pad) | |
0xa1, 0x01, // COLLECTION (Application) | |
0x05, 0x01, // USAGE_PAGE (Generic Desktop) | |
0x09, 0x3a, // USAGE (Counted Buffer) | |
0xa1, 0x02, // COLLECTION (Logical) | |
0x75, 0x08, // REPORT_SIZE (8) | |
0x95, 0x02, // REPORT_COUNT (2) | |
0x05, 0x01, // USAGE_PAGE (Generic Desktop) | |
0x09, 0x3f, // USAGE (Reserved) | |
0x09, 0x3b, // USAGE (Byte Count) | |
0x81, 0x01, // INPUT (Cnst,Ary,Abs) | |
0x75, 0x01, // REPORT_SIZE (1) | |
0x15, 0x00, // LOGICAL_MINIMUM (0) | |
0x25, 0x01, // LOGICAL_MAXIMUM (1) | |
0x35, 0x00, // PHYSICAL_MINIMUM (0) | |
0x45, 0x01, // PHYSICAL_MAXIMUM (1) | |
0x95, 0x04, // REPORT_COUNT (4) | |
0x05, 0x09, // USAGE_PAGE (Button) | |
0x19, 0x0c, // USAGE_MINIMUM (Button 12) | |
0x29, 0x0f, // USAGE_MAXIMUM (Button 15) | |
0x81, 0x02, // INPUT (Data,Var,Abs) | |
0x75, 0x01, // REPORT_SIZE (1) | |
0x15, 0x00, // LOGICAL_MINIMUM (0) | |
0x25, 0x01, // LOGICAL_MAXIMUM (1) | |
0x35, 0x00, // PHYSICAL_MINIMUM (0) | |
0x45, 0x01, // PHYSICAL_MAXIMUM (1) | |
0x95, 0x04, // REPORT_COUNT (4) | |
0x05, 0x09, // USAGE_PAGE (Button) | |
0x09, 0x09, // USAGE (Button 9) | |
0x09, 0x0a, // USAGE (Button 10) | |
0x09, 0x07, // USAGE (Button 7) | |
0x09, 0x08, // USAGE (Button 8) | |
0x81, 0x02, // INPUT (Data,Var,Abs) | |
0x75, 0x01, // REPORT_SIZE (1) | |
0x15, 0x00, // LOGICAL_MINIMUM (0) | |
0x25, 0x01, // LOGICAL_MAXIMUM (1) | |
0x35, 0x00, // PHYSICAL_MINIMUM (0) | |
0x45, 0x01, // PHYSICAL_MAXIMUM (1) | |
0x95, 0x03, // REPORT_COUNT (3) | |
0x05, 0x09, // USAGE_PAGE (Button) | |
0x09, 0x05, // USAGE (Button 5) | |
0x09, 0x06, // USAGE (Button 6) | |
0x09, 0x0b, // USAGE (Button 11) | |
0x81, 0x02, // INPUT (Data,Var,Abs) | |
0x75, 0x01, // REPORT_SIZE (1) | |
0x95, 0x01, // REPORT_COUNT (1) | |
0x81, 0x01, // INPUT (Cnst,Ary,Abs) | |
0x75, 0x01, // REPORT_SIZE (1) | |
0x15, 0x00, // LOGICAL_MINIMUM (0) | |
0x25, 0x01, // LOGICAL_MAXIMUM (1) | |
0x35, 0x00, // PHYSICAL_MINIMUM (0) | |
0x45, 0x01, // PHYSICAL_MAXIMUM (1) | |
0x95, 0x04, // REPORT_COUNT (4) | |
0x05, 0x09, // USAGE_PAGE (Button) | |
0x19, 0x01, // USAGE_MINIMUM (Button 1) | |
0x29, 0x04, // USAGE_MAXIMUM (Button 4) | |
0x81, 0x02, // INPUT (Data,Var,Abs) | |
0x75, 0x08, // REPORT_SIZE (8) | |
0x15, 0x00, // LOGICAL_MINIMUM (0) | |
0x26, 0xff, 0x00, // LOGICAL_MAXIMUM (255) | |
0x35, 0x00, // PHYSICAL_MINIMUM (0) | |
0x46, 0xff, 0x00, // PHYSICAL_MAXIMUM (255) | |
0x95, 0x02, // REPORT_COUNT (2) | |
0x05, 0x01, // USAGE_PAGE (Generic Desktop) | |
0x09, 0x32, // USAGE (Z) | |
0x09, 0x35, // USAGE (Rz) | |
0x81, 0x02, // INPUT (Data,Var,Abs) | |
0x75, 0x10, // REPORT_SIZE (16) | |
0x16, 0x00, 0x80, // LOGICAL_MINIMUM (-32768) | |
0x26, 0xff, 0x7f, // LOGICAL_MAXIMUM (32767) | |
0x36, 0x00, 0x80, // PHYSICAL_MINIMUM (-32768) | |
0x46, 0xff, 0x7f, // PHYSICAL_MAXIMUM (32767) | |
0x05, 0x01, // USAGE_PAGE (Generic Desktop) | |
0x09, 0x01, // USAGE (Pointer) | |
0xa1, 0x00, // COLLECTION (Physical) | |
0x95, 0x02, // REPORT_COUNT (2) | |
0x05, 0x01, // USAGE_PAGE (Generic Desktop) | |
0x09, 0x30, // USAGE (X) | |
0x09, 0x31, // USAGE (Y) | |
0x81, 0x02, // INPUT (Data,Var,Abs) | |
0xc0, // END_COLLECTION | |
0x05, 0x01, // USAGE_PAGE (Generic Desktop) | |
0x09, 0x01, // USAGE (Pointer) | |
0xa1, 0x00, // COLLECTION (Physical) | |
0x95, 0x02, // REPORT_COUNT (2) | |
0x05, 0x01, // USAGE_PAGE (Generic Desktop) | |
0x09, 0x33, // USAGE (Rx) | |
0x09, 0x34, // USAGE (Ry) | |
0x81, 0x02, // INPUT (Data,Var,Abs) | |
0xc0, // END_COLLECTION | |
0xc0, // END_COLLECTION | |
0xc0 // END_COLLECTION | |
}; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
I tried to use this HID on linux, but the POV didn't show up?