Last active
May 5, 2022 02:02
-
-
Save tmk/23bb1bfaf892e942fd4970e7e5586865 to your computer and use it in GitHub Desktop.
Anne Pro 2 USB 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
Waiting for new device:........ | |
Listening: | |
TMK:7b2827/LUFA:d6a7df/UHS2:96112d | |
Start | |
USB configured. | |
Loop start. | |
usb_state: 12 | |
usb_state: 20 | |
usb_state: 40 | |
usb_state: 50 | |
usb_state: 51 | |
usb_state: 90 | |
////////////////////////////////////////////////////////////////////// | |
// USB_desc_dump | |
// Address: 01 | |
// Lowspeed: 00 | |
// Devicer dump: | |
12 01 00 02 00 00 00 40 D9 04 93 A2 00 01 01 02 | |
03 01 | |
// Device: | |
bLength: 12 | |
bDescriptorType: 01 | |
bcdUSB: 0200 | |
bDeviceClass: 00 | |
bDeviceSubClass: 00 | |
bDeviceProtocol: 00 | |
bMaxPacketSize0: 40 | |
idVendor: 04D9 | |
idProduct: A293 | |
bcdDevice: 0100 | |
iManufacturer: 01 | |
iProduct: 02 | |
iSerialNumber: 03 | |
bNumConfigurations: 01 | |
// String Zero: len: 04 | |
// 04 03 09 04 | |
// LangId: 0409 | |
// iManufacturer: String1(0409): len: 0C | |
// 0C 03 4F 00 42 00 49 00 4E 00 53 00 | |
// OBINS | |
// iProduct: String2(0409): len: 1E | |
// 1E 03 4F 00 42 00 49 00 4E 00 53 00 0A 00 41 00 | |
// 6E 00 6E 00 65 00 50 00 72 00 6F 00 32 00 | |
// OBINS.AnnePro2 | |
// iSerialNumber: String3(0409): len: 1A | |
// 1A 03 53 00 4E 00 30 00 30 00 30 00 30 00 30 00 | |
// 30 00 30 00 30 00 30 00 31 00 | |
// SN0000000001 | |
// Config0 dump: len: 007B | |
09 02 7B 00 04 01 00 A0 FA 09 04 00 00 02 03 01 | |
01 00 09 21 10 01 21 01 22 4F 00 07 05 01 03 04 | |
00 0A 07 05 82 03 25 00 01 09 04 01 00 02 03 00 | |
00 00 09 21 10 01 21 01 22 1B 00 07 05 03 03 40 | |
00 0A 07 05 84 03 40 00 0A 09 04 02 00 01 03 00 | |
00 00 09 21 10 01 21 01 22 23 00 07 05 85 03 04 | |
00 0A 09 04 03 00 01 03 00 00 00 09 21 10 01 21 | |
01 22 49 00 07 05 86 03 08 00 0A | |
// Config: | |
bLength: 09 | |
bDescriptorType: 02 | |
wTotalLength: 007B | |
bNumInterfaces: 04 | |
bConfigurationValue: 01 | |
iConfiguration: 00 | |
bmAttributes: A0 | |
bMaxPower: FA | |
// Interface0.0: | |
bLength: 09 | |
bDescriptorType: 04 | |
bInterfaceNumber: 00 | |
bAlternateSetting: 00 | |
bNumEndpoints: 02 | |
bInterfaceClass: 03 | |
bInterfaceSubClass: 01 | |
bInterfaceProtocol: 01 | |
iInterface: 00 | |
// HID: | |
bLength: 09 | |
bDescriptorType: 21 | |
bcdHID: 0110 | |
bCountryCode: 21 | |
bNumDescriptors: 01 | |
bDescrType: 22 | |
wDescriptorLength: 004F | |
// Report0 dump: len: 004F | |
05 01 09 06 A1 01 75 01 95 05 05 08 19 01 29 05 | |
15 00 25 01 91 02 75 03 95 01 91 01 75 01 95 08 | |
05 07 19 E0 29 E7 15 00 25 01 81 02 75 08 95 01 | |
81 01 75 08 95 06 25 FF 19 00 29 DF 81 00 75 01 | |
95 E8 05 07 15 00 25 01 19 00 29 DF 81 02 C0 | |
// Endpoint: | |
bLength: 07 | |
bDescriptorType: 05 | |
bEndpointAddress: 01 | |
bmAttributes: 03 | |
wMaxPacketSize: 0004 | |
bInterval: 0A | |
// Endpoint: | |
bLength: 07 | |
bDescriptorType: 05 | |
bEndpointAddress: 82 | |
bmAttributes: 03 | |
wMaxPacketSize: 0025 | |
bInterval: 01 | |
// Interface1.0: | |
bLength: 09 | |
bDescriptorType: 04 | |
bInterfaceNumber: 01 | |
bAlternateSetting: 00 | |
bNumEndpoints: 02 | |
bInterfaceClass: 03 | |
bInterfaceSubClass: 00 | |
bInterfaceProtocol: 00 | |
iInterface: 00 | |
// HID: | |
bLength: 09 | |
bDescriptorType: 21 | |
bcdHID: 0110 | |
bCountryCode: 21 | |
bNumDescriptors: 01 | |
bDescrType: 22 | |
wDescriptorLength: 001B | |
// Report0 dump: len: 001B | |
05 01 09 00 A1 01 15 00 25 FF 19 01 29 08 75 08 | |
95 40 81 02 19 01 29 08 91 02 C0 | |
// Endpoint: | |
bLength: 07 | |
bDescriptorType: 05 | |
bEndpointAddress: 03 | |
bmAttributes: 03 | |
wMaxPacketSize: 0040 | |
bInterval: 0A | |
// Endpoint: | |
bLength: 07 | |
bDescriptorType: 05 | |
bEndpointAddress: 84 | |
bmAttributes: 03 | |
wMaxPacketSize: 0040 | |
bInterval: 0A | |
// Interface2.0: | |
bLength: 09 | |
bDescriptorType: 04 | |
bInterfaceNumber: 02 | |
bAlternateSetting: 00 | |
bNumEndpoints: 01 | |
bInterfaceClass: 03 | |
bInterfaceSubClass: 00 | |
bInterfaceProtocol: 00 | |
iInterface: 00 | |
// HID: | |
bLength: 09 | |
bDescriptorType: 21 | |
bcdHID: 0110 | |
bCountryCode: 21 | |
bNumDescriptors: 01 | |
bDescrType: 22 | |
wDescriptorLength: 0023 | |
// Report0 dump: len: 0023 | |
05 0C 09 01 A1 01 09 E2 09 E9 09 EA 09 CD 09 B5 | |
09 B6 75 01 95 06 81 02 15 00 25 01 75 01 95 1A | |
81 03 C0 | |
// Endpoint: | |
bLength: 07 | |
bDescriptorType: 05 | |
bEndpointAddress: 85 | |
bmAttributes: 03 | |
wMaxPacketSize: 0004 | |
bInterval: 0A | |
// Interface3.0: | |
bLength: 09 | |
bDescriptorType: 04 | |
bInterfaceNumber: 03 | |
bAlternateSetting: 00 | |
bNumEndpoints: 01 | |
bInterfaceClass: 03 | |
bInterfaceSubClass: 00 | |
bInterfaceProtocol: 00 | |
iInterface: 00 | |
// HID: | |
bLength: 09 | |
bDescriptorType: 21 | |
bcdHID: 0110 | |
bCountryCode: 21 | |
bNumDescriptors: 01 | |
bDescrType: 22 | |
wDescriptorLength: 0049 | |
// Report0 dump: len: 0049 | |
05 01 09 05 A1 01 A1 00 09 33 09 34 09 35 15 00 | |
25 FF 35 00 45 FF 75 08 95 03 81 02 C0 A1 00 09 | |
30 09 31 15 00 25 FF 35 00 45 FF 75 08 95 02 81 | |
02 C0 05 09 19 01 29 10 15 00 25 01 75 01 95 10 | |
81 02 75 08 95 01 81 01 C0 | |
// Endpoint: | |
bLength: 07 | |
bDescriptorType: 05 | |
bEndpointAddress: 86 | |
bmAttributes: 03 | |
wMaxPacketSize: 0008 | |
bInterval: 0A | |
// Parse data here: http://eleccelerator.com/usbdescreqparser/ | |
0x05, 0x01, // Usage Page (Generic Desktop Ctrls) | |
0x09, 0x06, // Usage (Keyboard) | |
0xA1, 0x01, // Collection (Application) | |
0x75, 0x01, // Report Size (1) | |
0x95, 0x05, // Report Count (5) | |
0x05, 0x08, // Usage Page (LEDs) | |
0x19, 0x01, // Usage Minimum (Num Lock) | |
0x29, 0x05, // Usage Maximum (Kana) | |
0x15, 0x00, // Logical Minimum (0) | |
0x25, 0x01, // Logical Maximum (1) | |
0x91, 0x02, // Output (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile) | |
0x75, 0x03, // Report Size (3) | |
0x95, 0x01, // Report Count (1) | |
0x91, 0x01, // Output (Const,Array,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile) | |
0x75, 0x01, // Report Size (1) | |
0x95, 0x08, // Report Count (8) | |
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) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x75, 0x08, // Report Size (8) | |
0x95, 0x01, // Report Count (1) | |
0x81, 0x01, // Input (Const,Array,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x75, 0x08, // Report Size (8) | |
0x95, 0x06, // Report Count (6) | |
0x25, 0xFF, // Logical Maximum (-1) | |
0x19, 0x00, // Usage Minimum (0x00) | |
0x29, 0xDF, // Usage Maximum (0xDF) | |
0x81, 0x00, // Input (Data,Array,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x75, 0x01, // Report Size (1) | |
0x95, 0xE8, // Report Count (-24) | |
0x05, 0x07, // Usage Page (Kbrd/Keypad) | |
0x15, 0x00, // Logical Minimum (0) | |
0x25, 0x01, // Logical Maximum (1) | |
0x19, 0x00, // Usage Minimum (0x00) | |
0x29, 0xDF, // Usage Maximum (0xDF) | |
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, 0x00, // Usage (Undefined) | |
0xA1, 0x01, // Collection (Application) | |
0x15, 0x00, // Logical Minimum (0) | |
0x25, 0xFF, // Logical Maximum (-1) | |
0x19, 0x01, // Usage Minimum (Pointer) | |
0x29, 0x08, // Usage Maximum (Multi-axis Controller) | |
0x75, 0x08, // Report Size (8) | |
0x95, 0x40, // Report Count (64) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x19, 0x01, // Usage Minimum (Pointer) | |
0x29, 0x08, // Usage Maximum (Multi-axis Controller) | |
0x91, 0x02, // Output (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position,Non-volatile) | |
0xC0, // End Collection | |
0x05, 0x0C, // Usage Page (Consumer) | |
0x09, 0x01, // Usage (Consumer Control) | |
0xA1, 0x01, // Collection (Application) | |
0x09, 0xE2, // Usage (Mute) | |
0x09, 0xE9, // Usage (Volume Increment) | |
0x09, 0xEA, // Usage (Volume Decrement) | |
0x09, 0xCD, // Usage (Play/Pause) | |
0x09, 0xB5, // Usage (Scan Next Track) | |
0x09, 0xB6, // Usage (Scan Previous Track) | |
0x75, 0x01, // Report Size (1) | |
0x95, 0x06, // Report Count (6) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x15, 0x00, // Logical Minimum (0) | |
0x25, 0x01, // Logical Maximum (1) | |
0x75, 0x01, // Report Size (1) | |
0x95, 0x1A, // Report Count (26) | |
0x81, 0x03, // Input (Const,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0xC0, // End Collection | |
0x05, 0x01, // Usage Page (Generic Desktop Ctrls) | |
0x09, 0x05, // Usage (Game Pad) | |
0xA1, 0x01, // Collection (Application) | |
0xA1, 0x00, // Collection (Physical) | |
0x09, 0x33, // Usage (Rx) | |
0x09, 0x34, // Usage (Ry) | |
0x09, 0x35, // Usage (Rz) | |
0x15, 0x00, // Logical Minimum (0) | |
0x25, 0xFF, // Logical Maximum (-1) | |
0x35, 0x00, // Physical Minimum (0) | |
0x45, 0xFF, // Physical Maximum (-1) | |
0x75, 0x08, // Report Size (8) | |
0x95, 0x03, // Report Count (3) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0xC0, // End Collection | |
0xA1, 0x00, // Collection (Physical) | |
0x09, 0x30, // Usage (X) | |
0x09, 0x31, // Usage (Y) | |
0x15, 0x00, // Logical Minimum (0) | |
0x25, 0xFF, // Logical Maximum (-1) | |
0x35, 0x00, // Physical Minimum (0) | |
0x45, 0xFF, // Physical Maximum (-1) | |
0x75, 0x08, // Report Size (8) | |
0x95, 0x02, // Report Count (2) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0xC0, // End Collection | |
0x05, 0x09, // Usage Page (Button) | |
0x19, 0x01, // Usage Minimum (0x01) | |
0x29, 0x10, // Usage Maximum (0x10) | |
0x15, 0x00, // Logical Minimum (0) | |
0x25, 0x01, // Logical Maximum (1) | |
0x75, 0x01, // Report Size (1) | |
0x95, 0x10, // Report Count (16) | |
0x81, 0x02, // Input (Data,Var,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0x75, 0x08, // Report Size (8) | |
0x95, 0x01, // Report Count (1) | |
0x81, 0x01, // Input (Const,Array,Abs,No Wrap,Linear,Preferred State,No Null Position) | |
0xC0, // End Collection |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment