Created
June 21, 2020 19:09
-
-
Save darthcloud/0e6bb1f14a805f9d32075d2812a06abc to your computer and use it in GitHub Desktop.
Xbox One adaptive controller HID descriptor
This file contains hidden or 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
0x05, 0x01, // Usage Page (Generic Desktop Ctrls) | |
0x09, 0x05, // Usage (Game Pad) | |
0xA1, 0x01, // Collection (Application) | |
0x85, 0x01, // Report ID (1) | |
0x09, 0x01, // Usage (Pointer) | |
0xA1, 0x00, // Collection (Physical) | |
0x09, 0x30, // Usage (X) | |
0x09, 0x31, // Usage (Y) | |
0x15, 0x00, // Logical Minimum (0) | |
0x27, 0xFF, 0xFF, 0x00, 0x00, // Logical Maximum (65534) | |
0x95, 0x02, // Report Count (2) | |
0x75, 0x10, // Report Size (16) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0xC0, // End Collection | |
0x09, 0x01, // Usage (Pointer) | |
0xA1, 0x00, // Collection (Physical) | |
0x09, 0x32, // Usage (Z) | |
0x09, 0x35, // Usage (Rz) | |
0x15, 0x00, // Logical Minimum (0) | |
0x27, 0xFF, 0xFF, 0x00, 0x00, // Logical Maximum (65534) | |
0x95, 0x02, // Report Count (2) | |
0x75, 0x10, // Report Size (16) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0xC0, // End Collection | |
0x05, 0x02, // Usage Page (Sim Ctrls) | |
0x09, 0xC5, // Usage (Brake) | |
0x15, 0x00, // Logical Minimum (0) | |
0x26, 0xFF, 0x03, // Logical Maximum (1023) | |
0x95, 0x01, // Report Count (1) | |
0x75, 0x0A, // Report Size (10) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x15, 0x00, // Logical Minimum (0) | |
0x25, 0x00, // Logical Maximum (0) | |
0x75, 0x06, // Report Size (6) | |
0x95, 0x01, // Report Count (1) | |
0x81, 0x03, // Input (Const,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x05, 0x02, // Usage Page (Sim Ctrls) | |
0x09, 0xC4, // Usage (Accelerator) | |
0x15, 0x00, // Logical Minimum (0) | |
0x26, 0xFF, 0x03, // Logical Maximum (1023) | |
0x95, 0x01, // Report Count (1) | |
0x75, 0x0A, // Report Size (10) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x15, 0x00, // Logical Minimum (0) | |
0x25, 0x00, // Logical Maximum (0) | |
0x75, 0x06, // Report Size (6) | |
0x95, 0x01, // Report Count (1) | |
0x81, 0x03, // Input (Const,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x05, 0x01, // Usage Page (Generic Desktop Ctrls) | |
0x09, 0x39, // Usage (Hat switch) | |
0x15, 0x01, // Logical Minimum (1) | |
0x25, 0x08, // Logical Maximum (8) | |
0x35, 0x00, // Physical Minimum (0) | |
0x46, 0x3B, 0x01, // Physical Maximum (315) | |
0x66, 0x14, 0x00, // Unit (System: English Rotation, Length: Centimeter) | |
0x75, 0x04, // Report Size (4) | |
0x95, 0x01, // Report Count (1) | |
0x81, 0x42, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,Null State) | |
0x75, 0x04, // Report Size (4) | |
0x95, 0x01, // Report Count (1) | |
0x15, 0x00, // Logical Minimum (0) | |
0x25, 0x00, // Logical Maximum (0) | |
0x35, 0x00, // Physical Minimum (0) | |
0x45, 0x00, // Physical Maximum (0) | |
0x65, 0x00, // Unit (None) | |
0x81, 0x03, // Input (Const,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x05, 0x09, // Usage Page (Button) | |
0x19, 0x01, // Usage Minimum (0x01) | |
0x29, 0x0F, // Usage Maximum (0x0F) | |
0x15, 0x00, // Logical Minimum (0) | |
0x25, 0x01, // Logical Maximum (1) | |
0x75, 0x01, // Report Size (1) | |
0x95, 0x0F, // Report Count (15) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x15, 0x00, // Logical Minimum (0) | |
0x25, 0x00, // Logical Maximum (0) | |
0x75, 0x01, // Report Size (1) | |
0x95, 0x01, // Report Count (1) | |
0x81, 0x03, // Input (Const,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x05, 0x0C, // Usage Page (Consumer) | |
0x0A, 0x24, 0x02, // Usage (AC Back) | |
0x15, 0x00, // Logical Minimum (0) | |
0x25, 0x01, // Logical Maximum (1) | |
0x95, 0x01, // Report Count (1) | |
0x75, 0x01, // Report Size (1) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x15, 0x00, // Logical Minimum (0) | |
0x25, 0x00, // Logical Maximum (0) | |
0x75, 0x07, // Report Size (7) | |
0x95, 0x01, // Report Count (1) | |
0x81, 0x03, // Input (Const,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x05, 0x01, // Usage Page (Generic Desktop Ctrls) | |
0x09, 0x01, // Usage (Pointer) | |
0xA1, 0x00, // Collection (Physical) | |
0x09, 0x40, // Usage (Vx) | |
0x09, 0x41, // Usage (Vy) | |
0x15, 0x00, // Logical Minimum (0) | |
0x27, 0xFF, 0xFF, 0x00, 0x00, // Logical Maximum (65534) | |
0x95, 0x02, // Report Count (2) | |
0x75, 0x10, // Report Size (16) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0xC0, // End Collection | |
0x05, 0x01, // Usage Page (Generic Desktop Ctrls) | |
0x09, 0x01, // Usage (Pointer) | |
0xA1, 0x00, // Collection (Physical) | |
0x09, 0x43, // Usage (Vbrx) | |
0x09, 0x44, // Usage (Vbry) | |
0x15, 0x00, // Logical Minimum (0) | |
0x27, 0xFF, 0xFF, 0x00, 0x00, // Logical Maximum (65534) | |
0x95, 0x02, // Report Count (2) | |
0x75, 0x10, // Report Size (16) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0xC0, // End Collection | |
0x05, 0x01, // Usage Page (Generic Desktop Ctrls) | |
0x09, 0x42, // Usage (Vz) | |
0x15, 0x00, // Logical Minimum (0) | |
0x26, 0xFF, 0x03, // Logical Maximum (1023) | |
0x95, 0x01, // Report Count (1) | |
0x75, 0x0A, // Report Size (10) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x15, 0x00, // Logical Minimum (0) | |
0x25, 0x00, // Logical Maximum (0) | |
0x75, 0x06, // Report Size (6) | |
0x95, 0x01, // Report Count (1) | |
0x81, 0x03, // Input (Const,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x05, 0x01, // Usage Page (Generic Desktop Ctrls) | |
0x09, 0x45, // Usage (Vbrz) | |
0x15, 0x00, // Logical Minimum (0) | |
0x26, 0xFF, 0x03, // Logical Maximum (1023) | |
0x95, 0x01, // Report Count (1) | |
0x75, 0x0A, // Report Size (10) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x15, 0x00, // Logical Minimum (0) | |
0x25, 0x00, // Logical Maximum (0) | |
0x75, 0x06, // Report Size (6) | |
0x95, 0x01, // Report Count (1) | |
0x81, 0x03, // Input (Const,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x05, 0x01, // Usage Page (Generic Desktop Ctrls) | |
0x09, 0x37, // Usage (Dial) | |
0x15, 0x01, // Logical Minimum (1) | |
0x25, 0x08, // Logical Maximum (8) | |
0x35, 0x00, // Physical Minimum (0) | |
0x46, 0x3B, 0x01, // Physical Maximum (315) | |
0x66, 0x14, 0x00, // Unit (System: English Rotation, Length: Centimeter) | |
0x75, 0x04, // Report Size (4) | |
0x95, 0x01, // Report Count (1) | |
0x81, 0x42, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,Null State) | |
0x75, 0x04, // Report Size (4) | |
0x95, 0x01, // Report Count (1) | |
0x15, 0x00, // Logical Minimum (0) | |
0x25, 0x00, // Logical Maximum (0) | |
0x35, 0x00, // Physical Minimum (0) | |
0x45, 0x00, // Physical Maximum (0) | |
0x65, 0x00, // Unit (None) | |
0x81, 0x03, // Input (Const,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x05, 0x09, // Usage Page (Button) | |
0x19, 0x10, // Usage Minimum (0x10) | |
0x29, 0x1E, // Usage Maximum (0x1E) | |
0x15, 0x00, // Logical Minimum (0) | |
0x25, 0x01, // Logical Maximum (1) | |
0x75, 0x01, // Report Size (1) | |
0x95, 0x0F, // Report Count (15) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x15, 0x00, // Logical Minimum (0) | |
0x25, 0x00, // Logical Maximum (0) | |
0x75, 0x01, // Report Size (1) | |
0x95, 0x01, // Report Count (1) | |
0x81, 0x03, // Input (Const,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x05, 0x0C, // Usage Page (Consumer) | |
0x0A, 0x82, 0x00, // Usage (Mode Step) | |
0x15, 0x00, // Logical Minimum (0) | |
0x25, 0x01, // Logical Maximum (1) | |
0x95, 0x01, // Report Count (1) | |
0x75, 0x01, // Report Size (1) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x15, 0x00, // Logical Minimum (0) | |
0x25, 0x00, // Logical Maximum (0) | |
0x75, 0x07, // Report Size (7) | |
0x95, 0x01, // Report Count (1) | |
0x81, 0x03, // Input (Const,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x05, 0x0C, // Usage Page (Consumer) | |
0x09, 0x01, // Usage (Consumer Control) | |
0xA1, 0x01, // Collection (Application) | |
0x0A, 0x81, 0x00, // Usage (Assign Selection) | |
0x15, 0x00, // Logical Minimum (0) | |
0x26, 0xFF, 0x00, // Logical Maximum (255) | |
0x95, 0x01, // Report Count (1) | |
0x75, 0x04, // Report Size (4) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x15, 0x00, // Logical Minimum (0) | |
0x25, 0x00, // Logical Maximum (0) | |
0x95, 0x01, // Report Count (1) | |
0x75, 0x04, // Report Size (4) | |
0x81, 0x03, // Input (Const,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x0A, 0x84, 0x00, // Usage (Enter Channel) | |
0x15, 0x00, // Logical Minimum (0) | |
0x26, 0xFF, 0x00, // Logical Maximum (255) | |
0x95, 0x01, // Report Count (1) | |
0x75, 0x04, // Report Size (4) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x15, 0x00, // Logical Minimum (0) | |
0x25, 0x00, // Logical Maximum (0) | |
0x95, 0x01, // Report Count (1) | |
0x75, 0x04, // Report Size (4) | |
0x81, 0x03, // Input (Const,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x0A, 0x85, 0x00, // Usage (Order Movie) | |
0x15, 0x00, // Logical Minimum (0) | |
0x26, 0xFF, 0x00, // Logical Maximum (255) | |
0x95, 0x01, // Report Count (1) | |
0x75, 0x08, // Report Size (8) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x0A, 0x99, 0x00, // Usage (Media Select Security) | |
0x15, 0x00, // Logical Minimum (0) | |
0x26, 0xFF, 0x00, // Logical Maximum (255) | |
0x95, 0x01, // Report Count (1) | |
0x75, 0x04, // Report Size (4) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x15, 0x00, // Logical Minimum (0) | |
0x25, 0x00, // Logical Maximum (0) | |
0x95, 0x01, // Report Count (1) | |
0x75, 0x04, // Report Size (4) | |
0x81, 0x03, // Input (Const,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x0A, 0x9E, 0x00, // Usage (Media Select SAP) | |
0x15, 0x00, // Logical Minimum (0) | |
0x26, 0xFF, 0x00, // Logical Maximum (255) | |
0x95, 0x01, // Report Count (1) | |
0x75, 0x08, // Report Size (8) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x0A, 0xA1, 0x00, // Usage (Once) | |
0x15, 0x00, // Logical Minimum (0) | |
0x26, 0xFF, 0x00, // Logical Maximum (255) | |
0x95, 0x01, // Report Count (1) | |
0x75, 0x08, // Report Size (8) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x0A, 0xA2, 0x00, // Usage (Daily) | |
0x15, 0x00, // Logical Minimum (0) | |
0x26, 0xFF, 0x00, // Logical Maximum (255) | |
0x95, 0x01, // Report Count (1) | |
0x75, 0x08, // Report Size (8) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x0A, 0xA3, 0x00, // Usage (Weekly) | |
0x15, 0x00, // Logical Minimum (0) | |
0x26, 0xFF, 0x00, // Logical Maximum (255) | |
0x95, 0x01, // Report Count (1) | |
0x75, 0x08, // Report Size (8) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x0A, 0xA4, 0x00, // Usage (Monthly) | |
0x15, 0x00, // Logical Minimum (0) | |
0x26, 0xFF, 0x00, // Logical Maximum (255) | |
0x95, 0x01, // Report Count (1) | |
0x75, 0x08, // Report Size (8) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x0A, 0xB9, 0x00, // Usage (Random Play) | |
0x15, 0x00, // Logical Minimum (0) | |
0x26, 0xFF, 0x00, // Logical Maximum (255) | |
0x95, 0x01, // Report Count (1) | |
0x75, 0x08, // Report Size (8) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x0A, 0xBA, 0x00, // Usage (Select Disc) | |
0x15, 0x00, // Logical Minimum (0) | |
0x26, 0xFF, 0x00, // Logical Maximum (255) | |
0x95, 0x01, // Report Count (1) | |
0x75, 0x08, // Report Size (8) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x0A, 0xBB, 0x00, // Usage (Enter Disc) | |
0x15, 0x00, // Logical Minimum (0) | |
0x26, 0xFF, 0x00, // Logical Maximum (255) | |
0x95, 0x01, // Report Count (1) | |
0x75, 0x08, // Report Size (8) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x0A, 0xBE, 0x00, // Usage (Track Normal) | |
0x15, 0x00, // Logical Minimum (0) | |
0x26, 0xFF, 0x00, // Logical Maximum (255) | |
0x95, 0x01, // Report Count (1) | |
0x75, 0x08, // Report Size (8) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x0A, 0xC0, 0x00, // Usage (Frame Forward) | |
0x15, 0x00, // Logical Minimum (0) | |
0x26, 0xFF, 0x00, // Logical Maximum (255) | |
0x95, 0x01, // Report Count (1) | |
0x75, 0x08, // Report Size (8) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x0A, 0xC1, 0x00, // Usage (Frame Back) | |
0x15, 0x00, // Logical Minimum (0) | |
0x26, 0xFF, 0x00, // Logical Maximum (255) | |
0x95, 0x01, // Report Count (1) | |
0x75, 0x08, // Report Size (8) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x0A, 0xC2, 0x00, // Usage (Mark) | |
0x15, 0x00, // Logical Minimum (0) | |
0x26, 0xFF, 0x00, // Logical Maximum (255) | |
0x95, 0x01, // Report Count (1) | |
0x75, 0x08, // Report Size (8) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x0A, 0xC3, 0x00, // Usage (Clear Mark) | |
0x15, 0x00, // Logical Minimum (0) | |
0x26, 0xFF, 0x00, // Logical Maximum (255) | |
0x95, 0x01, // Report Count (1) | |
0x75, 0x08, // Report Size (8) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x0A, 0xC4, 0x00, // Usage (Repeat From Mark) | |
0x15, 0x00, // Logical Minimum (0) | |
0x26, 0xFF, 0x00, // Logical Maximum (255) | |
0x95, 0x01, // Report Count (1) | |
0x75, 0x08, // Report Size (8) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x0A, 0xC5, 0x00, // Usage (Return To Mark) | |
0x15, 0x00, // Logical Minimum (0) | |
0x26, 0xFF, 0x00, // Logical Maximum (255) | |
0x95, 0x01, // Report Count (1) | |
0x75, 0x08, // Report Size (8) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x0A, 0xC6, 0x00, // Usage (Search Mark Forward) | |
0x15, 0x00, // Logical Minimum (0) | |
0x26, 0xFF, 0x00, // Logical Maximum (255) | |
0x95, 0x01, // Report Count (1) | |
0x75, 0x08, // Report Size (8) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x0A, 0xC7, 0x00, // Usage (Search Mark Backwards) | |
0x15, 0x00, // Logical Minimum (0) | |
0x26, 0xFF, 0x00, // Logical Maximum (255) | |
0x95, 0x01, // Report Count (1) | |
0x75, 0x08, // Report Size (8) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x0A, 0xC8, 0x00, // Usage (Counter Reset) | |
0x15, 0x00, // Logical Minimum (0) | |
0x26, 0xFF, 0x00, // Logical Maximum (255) | |
0x95, 0x01, // Report Count (1) | |
0x75, 0x08, // Report Size (8) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0xC0, // End Collection | |
0x05, 0x0C, // Usage Page (Consumer) | |
0x09, 0x01, // Usage (Consumer Control) | |
0x85, 0x02, // Report ID (2) | |
0xA1, 0x01, // Collection (Application) | |
0x05, 0x0C, // Usage Page (Consumer) | |
0x0A, 0x23, 0x02, // Usage (AC Home) | |
0x15, 0x00, // Logical Minimum (0) | |
0x25, 0x01, // Logical Maximum (1) | |
0x95, 0x01, // Report Count (1) | |
0x75, 0x01, // Report Size (1) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x15, 0x00, // Logical Minimum (0) | |
0x25, 0x00, // Logical Maximum (0) | |
0x75, 0x07, // Report Size (7) | |
0x95, 0x01, // Report Count (1) | |
0x81, 0x03, // Input (Const,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0xC0, // End Collection | |
0x05, 0x0F, // Usage Page (PID Page) | |
0x09, 0x21, // Usage (0x21) | |
0x85, 0x03, // Report ID (3) | |
0xA1, 0x02, // Collection (Logical) | |
0x09, 0x97, // Usage (0x97) | |
0x15, 0x00, // Logical Minimum (0) | |
0x25, 0x01, // Logical Maximum (1) | |
0x75, 0x04, // Report Size (4) | |
0x95, 0x01, // Report Count (1) | |
0x91, 0x02, // Output (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile) | |
0x15, 0x00, // Logical Minimum (0) | |
0x25, 0x00, // Logical Maximum (0) | |
0x75, 0x04, // Report Size (4) | |
0x95, 0x01, // Report Count (1) | |
0x91, 0x03, // Output (Const,Var,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile) | |
0x09, 0x70, // Usage (0x70) | |
0x15, 0x00, // Logical Minimum (0) | |
0x25, 0x64, // Logical Maximum (100) | |
0x75, 0x08, // Report Size (8) | |
0x95, 0x04, // Report Count (4) | |
0x91, 0x02, // Output (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile) | |
0x09, 0x50, // Usage (0x50) | |
0x66, 0x01, 0x10, // Unit (System: SI Linear, Time: Seconds) | |
0x55, 0x0E, // Unit Exponent (-2) | |
0x15, 0x00, // Logical Minimum (0) | |
0x26, 0xFF, 0x00, // Logical Maximum (255) | |
0x75, 0x08, // Report Size (8) | |
0x95, 0x01, // Report Count (1) | |
0x91, 0x02, // Output (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile) | |
0x09, 0xA7, // Usage (0xA7) | |
0x15, 0x00, // Logical Minimum (0) | |
0x26, 0xFF, 0x00, // Logical Maximum (255) | |
0x75, 0x08, // Report Size (8) | |
0x95, 0x01, // Report Count (1) | |
0x91, 0x02, // Output (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile) | |
0x65, 0x00, // Unit (None) | |
0x55, 0x00, // Unit Exponent (0) | |
0x09, 0x7C, // Usage (0x7C) | |
0x15, 0x00, // Logical Minimum (0) | |
0x26, 0xFF, 0x00, // Logical Maximum (255) | |
0x75, 0x08, // Report Size (8) | |
0x95, 0x01, // Report Count (1) | |
0x91, 0x02, // Output (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile) | |
0xC0, // End Collection | |
0x05, 0x06, // Usage Page (Generic Dev Ctrls) | |
0x09, 0x20, // Usage (Battery Strength) | |
0x85, 0x04, // Report ID (4) | |
0x15, 0x00, // Logical Minimum (0) | |
0x26, 0xFF, 0x00, // Logical Maximum (255) | |
0x75, 0x08, // Report Size (8) | |
0x95, 0x01, // Report Count (1) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x06, 0x00, 0xFF, // Usage Page (Vendor Defined 0xFF00) | |
0x09, 0x01, // Usage (0x01) | |
0xA1, 0x02, // Collection (Logical) | |
0x85, 0x06, // Report ID (6) | |
0x09, 0x01, // Usage (0x01) | |
0x15, 0x00, // Logical Minimum (0) | |
0x25, 0x64, // Logical Maximum (100) | |
0x75, 0x08, // Report Size (8) | |
0x95, 0x01, // Report Count (1) | |
0xB1, 0x02, // Feature (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile) | |
0x09, 0x02, // Usage (0x02) | |
0x15, 0x00, // Logical Minimum (0) | |
0x25, 0x64, // Logical Maximum (100) | |
0x75, 0x08, // Report Size (8) | |
0x95, 0x01, // Report Count (1) | |
0xB1, 0x02, // Feature (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile) | |
0x09, 0x03, // Usage (0x03) | |
0x15, 0x00, // Logical Minimum (0) | |
0x26, 0xFF, 0x00, // Logical Maximum (255) | |
0x75, 0x08, // Report Size (8) | |
0x95, 0x01, // Report Count (1) | |
0xB1, 0x02, // Feature (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile) | |
0x09, 0x04, // Usage (0x04) | |
0x26, 0xFF, 0x00, // Logical Maximum (255) | |
0x75, 0x08, // Report Size (8) | |
0x95, 0x3C, // Report Count (60) | |
0xB2, 0x02, 0x01, // Feature (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile,Buffered Bytes) | |
0xC0, // End Collection | |
0x06, 0x00, 0xFF, // Usage Page (Vendor Defined 0xFF00) | |
0x09, 0x02, // Usage (0x02) | |
0xA1, 0x02, // Collection (Logical) | |
0x85, 0x07, // Report ID (7) | |
0x09, 0x05, // Usage (0x05) | |
0x15, 0x00, // Logical Minimum (0) | |
0x25, 0x64, // Logical Maximum (100) | |
0x75, 0x08, // Report Size (8) | |
0x95, 0x01, // Report Count (1) | |
0xB1, 0x02, // Feature (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile) | |
0x09, 0x06, // Usage (0x06) | |
0x15, 0x00, // Logical Minimum (0) | |
0x25, 0x64, // Logical Maximum (100) | |
0x75, 0x08, // Report Size (8) | |
0x95, 0x01, // Report Count (1) | |
0xB1, 0x02, // Feature (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile) | |
0x09, 0x07, // Usage (0x07) | |
0x15, 0x00, // Logical Minimum (0) | |
0x25, 0x64, // Logical Maximum (100) | |
0x75, 0x08, // Report Size (8) | |
0x95, 0x01, // Report Count (1) | |
0xB1, 0x02, // Feature (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile) | |
0xC0, // End Collection | |
0x06, 0x00, 0xFF, // Usage Page (Vendor Defined 0xFF00) | |
0x09, 0x03, // Usage (0x03) | |
0xA1, 0x02, // Collection (Logical) | |
0x85, 0x08, // Report ID (8) | |
0x09, 0x08, // Usage (0x08) | |
0x15, 0x00, // Logical Minimum (0) | |
0x25, 0x64, // Logical Maximum (100) | |
0x75, 0x08, // Report Size (8) | |
0x95, 0x01, // Report Count (1) | |
0xB1, 0x02, // Feature (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile) | |
0x09, 0x09, // Usage (0x09) | |
0x15, 0x00, // Logical Minimum (0) | |
0x25, 0x64, // Logical Maximum (100) | |
0x75, 0x08, // Report Size (8) | |
0x95, 0x01, // Report Count (1) | |
0xB1, 0x02, // Feature (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile) | |
0x09, 0x0A, // Usage (0x0A) | |
0x15, 0x00, // Logical Minimum (0) | |
0x26, 0xFF, 0x00, // Logical Maximum (255) | |
0x75, 0x08, // Report Size (8) | |
0x95, 0x01, // Report Count (1) | |
0xB1, 0x02, // Feature (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile) | |
0xC0, // End Collection | |
0x06, 0x00, 0xFF, // Usage Page (Vendor Defined 0xFF00) | |
0x09, 0x04, // Usage (0x04) | |
0xA1, 0x01, // Collection (Application) | |
0x85, 0x09, // Report ID (9) | |
0x09, 0x0B, // Usage (0x0B) | |
0x15, 0x00, // Logical Minimum (0) | |
0x25, 0x64, // Logical Maximum (100) | |
0x75, 0x08, // Report Size (8) | |
0x95, 0x01, // Report Count (1) | |
0xB1, 0x02, // Feature (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile) | |
0x09, 0x0C, // Usage (0x0C) | |
0x15, 0x00, // Logical Minimum (0) | |
0x25, 0x64, // Logical Maximum (100) | |
0x75, 0x08, // Report Size (8) | |
0x95, 0x01, // Report Count (1) | |
0xB1, 0x02, // Feature (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile) | |
0x09, 0x0D, // Usage (0x0D) | |
0x15, 0x00, // Logical Minimum (0) | |
0x25, 0x64, // Logical Maximum (100) | |
0x75, 0x08, // Report Size (8) | |
0x95, 0x01, // Report Count (1) | |
0xB1, 0x02, // Feature (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile) | |
0x09, 0x0E, // Usage (0x0E) | |
0x15, 0x00, // Logical Minimum (0) | |
0x26, 0xFF, 0x00, // Logical Maximum (255) | |
0x75, 0x08, // Report Size (8) | |
0x95, 0x01, // Report Count (1) | |
0xB1, 0x02, // Feature (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile) | |
0x09, 0x0F, // Usage (0x0F) | |
0x26, 0xFF, 0x00, // Logical Maximum (255) | |
0x75, 0x08, // Report Size (8) | |
0x95, 0x3C, // Report Count (60) | |
0xB2, 0x02, 0x01, // Feature (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile,Buffered Bytes) | |
0xC0, // End Collection | |
0x06, 0x00, 0xFF, // Usage Page (Vendor Defined 0xFF00) | |
0x09, 0x05, // Usage (0x05) | |
0xA1, 0x01, // Collection (Application) | |
0x85, 0x0A, // Report ID (10) | |
0x09, 0x10, // Usage (0x10) | |
0x15, 0x00, // Logical Minimum (0) | |
0x27, 0xFF, 0xFF, 0xFF, 0x7F, // Logical Maximum (2147483646) | |
0x75, 0x20, // Report Size (32) | |
0x95, 0x01, // Report Count (1) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x09, 0x11, // Usage (0x11) | |
0x15, 0x00, // Logical Minimum (0) | |
0x27, 0xFF, 0xFF, 0xFF, 0x7F, // Logical Maximum (2147483646) | |
0x75, 0x20, // Report Size (32) | |
0x95, 0x01, // Report Count (1) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x09, 0x12, // Usage (0x12) | |
0x15, 0x00, // Logical Minimum (0) | |
0x26, 0xFF, 0x00, // Logical Maximum (255) | |
0x75, 0x08, // Report Size (8) | |
0x95, 0x02, // Report Count (2) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x09, 0x13, // Usage (0x13) | |
0x15, 0x00, // Logical Minimum (0) | |
0x26, 0xFF, 0x00, // Logical Maximum (255) | |
0x75, 0x08, // Report Size (8) | |
0x95, 0x01, // Report Count (1) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0xC0, // End Collection | |
0x06, 0x00, 0xFF, // Usage Page (Vendor Defined 0xFF00) | |
0x09, 0x06, // Usage (0x06) | |
0xA1, 0x02, // Collection (Logical) | |
0x85, 0x0B, // Report ID (11) | |
0x09, 0x14, // Usage (0x14) | |
0x15, 0x00, // Logical Minimum (0) | |
0x25, 0x64, // Logical Maximum (100) | |
0x75, 0x08, // Report Size (8) | |
0x95, 0x01, // Report Count (1) | |
0xB1, 0x02, // Feature (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile) | |
0xC0, // End Collection | |
0xC0, // End Collection | |
0x05, 0x01, // Usage Page (Generic Desktop Ctrls) | |
0x09, 0x06, // Usage (Keyboard) | |
0xA1, 0x01, // Collection (Application) | |
0x85, 0x05, // Report ID (5) | |
0x05, 0x07, // Usage Page (Kbrd/Keypad) | |
0x19, 0xE0, // Usage Minimum (0xE0) | |
0x29, 0xE7, // Usage Maximum (0xE7) | |
0x15, 0x00, // Logical Minimum (0) | |
0x25, 0x01, // Logical Maximum (1) | |
0x75, 0x01, // Report Size (1) | |
0x95, 0x08, // Report Count (8) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x95, 0x01, // Report Count (1) | |
0x75, 0x08, // Report Size (8) | |
0x81, 0x03, // Input (Const,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x95, 0x06, // Report Count (6) | |
0x75, 0x08, // Report Size (8) | |
0x15, 0x00, // Logical Minimum (0) | |
0x25, 0x65, // Logical Maximum (101) | |
0x05, 0x07, // Usage Page (Kbrd/Keypad) | |
0x19, 0x00, // Usage Minimum (0x00) | |
0x29, 0x65, // Usage Maximum (0x65) | |
0x81, 0x00, // Input (Data,Array,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0xC0, // End Collection | |
// 1224 bytes | |
wiiu pro: | |
05010905a1018510150026ff00750895010600ff09019100851195010901910085129502090191008513950109019100851495010901910085159501090191008516951509019100851795060901910085189515090191008519950109019100851a950109019100852095060901810085219515090181008522950409018100853095020901810085319505090181008532950a0901810085339511090181008534951509018100853595150901810085369515090181008537951509018100853d951509018100853e951509018100853f951509018100c0 | |
0x05, 0x01, // Usage Page (Generic Desktop Ctrls) | |
0x09, 0x05, // Usage (Game Pad) | |
0xA1, 0x01, // Collection (Application) | |
0x85, 0x10, // Report ID (16) | |
0x15, 0x00, // Logical Minimum (0) | |
0x26, 0xFF, 0x00, // Logical Maximum (255) | |
0x75, 0x08, // Report Size (8) | |
0x95, 0x01, // Report Count (1) | |
0x06, 0x00, 0xFF, // Usage Page (Vendor Defined 0xFF00) | |
0x09, 0x01, // Usage (0x01) | |
0x91, 0x00, // Output (Data,Array,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile) | |
0x85, 0x11, // Report ID (17) | |
0x95, 0x01, // Report Count (1) | |
0x09, 0x01, // Usage (0x01) | |
0x91, 0x00, // Output (Data,Array,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile) | |
0x85, 0x12, // Report ID (18) | |
0x95, 0x02, // Report Count (2) | |
0x09, 0x01, // Usage (0x01) | |
0x91, 0x00, // Output (Data,Array,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile) | |
0x85, 0x13, // Report ID (19) | |
0x95, 0x01, // Report Count (1) | |
0x09, 0x01, // Usage (0x01) | |
0x91, 0x00, // Output (Data,Array,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile) | |
0x85, 0x14, // Report ID (20) | |
0x95, 0x01, // Report Count (1) | |
0x09, 0x01, // Usage (0x01) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment