Last active
November 1, 2020 13:45
-
-
Save tmk/6523cff860874e3dcff186da0a0832e0 to your computer and use it in GitHub Desktop.
Nintendo Procon 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
Bus 003 Device 017: ID 057e:2009 Nintendo Co., Ltd | |
Device Descriptor: | |
bLength 18 | |
bDescriptorType 1 | |
bcdUSB 2.00 | |
bDeviceClass 0 | |
bDeviceSubClass 0 | |
bDeviceProtocol 0 | |
bMaxPacketSize0 64 | |
idVendor 0x057e Nintendo Co., Ltd | |
idProduct 0x2009 | |
bcdDevice 2.10 | |
iManufacturer 1 Nintendo Co., Ltd. | |
iProduct 2 Pro Controller | |
iSerial 3 000000000001 | |
bNumConfigurations 1 | |
Configuration Descriptor: | |
bLength 9 | |
bDescriptorType 2 | |
wTotalLength 0x0029 | |
bNumInterfaces 1 | |
bConfigurationValue 1 | |
iConfiguration 0 | |
bmAttributes 0xa0 | |
(Bus Powered) | |
Remote Wakeup | |
MaxPower 500mA | |
Interface Descriptor: | |
bLength 9 | |
bDescriptorType 4 | |
bInterfaceNumber 0 | |
bAlternateSetting 0 | |
bNumEndpoints 2 | |
bInterfaceClass 3 Human Interface Device | |
bInterfaceSubClass 0 | |
bInterfaceProtocol 0 | |
iInterface 0 | |
HID Device Descriptor: | |
bLength 9 | |
bDescriptorType 33 | |
bcdHID 1.11 | |
bCountryCode 0 Not supported | |
bNumDescriptors 1 | |
bDescriptorType 34 Report | |
wDescriptorLength 203 | |
Report Descriptor: (length is 203) | |
Item(Global): Usage Page, data= [ 0x01 ] 1 | |
Generic Desktop Controls | |
Item(Global): Logical Minimum, data= [ 0x00 ] 0 | |
Item(Local ): Usage, data= [ 0x04 ] 4 | |
Joystick | |
Item(Main ): Collection, data= [ 0x01 ] 1 | |
Application | |
Item(Global): Report ID, data= [ 0x30 ] 48 | |
Item(Global): Usage Page, data= [ 0x01 ] 1 | |
Generic Desktop Controls | |
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): Report Size, data= [ 0x01 ] 1 | |
Item(Global): Report Count, data= [ 0x0a ] 10 | |
Item(Global): Unit Exponent, data= [ 0x00 ] 0 | |
Unit Exponent: 0 | |
Item(Global): Unit, data= [ 0x00 ] 0 | |
System: None, Unit: (None) | |
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= [ 0x0b ] 11 | |
(null) | |
Item(Local ): Usage Maximum, data= [ 0x0e ] 14 | |
(null) | |
Item(Global): Logical Minimum, data= [ 0x00 ] 0 | |
Item(Global): Logical Maximum, data= [ 0x01 ] 1 | |
Item(Global): Report Size, data= [ 0x01 ] 1 | |
Item(Global): Report Count, data= [ 0x04 ] 4 | |
Item(Main ): Input, data= [ 0x02 ] 2 | |
Data Variable Absolute No_Wrap Linear | |
Preferred_State No_Null_Position Non_Volatile Bitfield | |
Item(Global): Report Size, data= [ 0x01 ] 1 | |
Item(Global): Report Count, data= [ 0x02 ] 2 | |
Item(Main ): Input, data= [ 0x03 ] 3 | |
Constant Variable Absolute No_Wrap Linear | |
Preferred_State No_Null_Position Non_Volatile Bitfield | |
Item(Local ): Usage, data= [ 0x01 0x00 0x01 0x00 ] 65537 | |
Instance 1 | |
Item(Main ): Collection, data= [ 0x00 ] 0 | |
Physical | |
Item(Local ): Usage, data= [ 0x30 0x00 0x01 0x00 ] 65584 | |
(null) | |
Item(Local ): Usage, data= [ 0x31 0x00 0x01 0x00 ] 65585 | |
(null) | |
Item(Local ): Usage, data= [ 0x32 0x00 0x01 0x00 ] 65586 | |
(null) | |
Item(Local ): Usage, data= [ 0x35 0x00 0x01 0x00 ] 65589 | |
(null) | |
Item(Global): Logical Minimum, data= [ 0x00 ] 0 | |
Item(Global): Logical Maximum, data= [ 0xff 0xff 0x00 0x00 ] 65535 | |
Item(Global): Report Size, data= [ 0x10 ] 16 | |
Item(Global): Report Count, data= [ 0x04 ] 4 | |
Item(Main ): Input, data= [ 0x02 ] 2 | |
Data Variable Absolute No_Wrap Linear | |
Preferred_State No_Null_Position Non_Volatile Bitfield | |
Item(Main ): End Collection, data=none | |
Item(Local ): Usage, data= [ 0x39 0x00 0x01 0x00 ] 65593 | |
(null) | |
Item(Global): Logical Minimum, data= [ 0x00 ] 0 | |
Item(Global): Logical Maximum, data= [ 0x07 ] 7 | |
Item(Global): Physical Minimum, data= [ 0x00 ] 0 | |
Item(Global): Physical Maximum, data= [ 0x3b 0x01 ] 315 | |
Item(Global): Unit, data= [ 0x14 ] 20 | |
System: English Rotation, Unit: Degrees | |
Item(Global): Report Size, data= [ 0x04 ] 4 | |
Item(Global): Report Count, data= [ 0x01 ] 1 | |
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= [ 0x0f ] 15 | |
(null) | |
Item(Local ): Usage Maximum, data= [ 0x12 ] 18 | |
(null) | |
Item(Global): Logical Minimum, data= [ 0x00 ] 0 | |
Item(Global): Logical Maximum, data= [ 0x01 ] 1 | |
Item(Global): Report Size, data= [ 0x01 ] 1 | |
Item(Global): Report Count, data= [ 0x04 ] 4 | |
Item(Main ): Input, data= [ 0x02 ] 2 | |
Data Variable Absolute No_Wrap Linear | |
Preferred_State No_Null_Position Non_Volatile Bitfield | |
Item(Global): Report Size, data= [ 0x08 ] 8 | |
Item(Global): Report Count, data= [ 0x34 ] 52 | |
Item(Main ): Input, data= [ 0x03 ] 3 | |
Constant Variable Absolute No_Wrap Linear | |
Preferred_State No_Null_Position Non_Volatile Bitfield | |
Item(Global): Usage Page, data= [ 0x00 0xff ] 65280 | |
(null) | |
Item(Global): Report ID, data= [ 0x21 ] 33 | |
Item(Local ): Usage, data= [ 0x01 ] 1 | |
(null) | |
Item(Global): Report Size, data= [ 0x08 ] 8 | |
Item(Global): Report Count, data= [ 0x3f ] 63 | |
Item(Main ): Input, data= [ 0x03 ] 3 | |
Constant Variable Absolute No_Wrap Linear | |
Preferred_State No_Null_Position Non_Volatile Bitfield | |
Item(Global): Report ID, data= [ 0x81 ] 129 | |
Item(Local ): Usage, data= [ 0x02 ] 2 | |
(null) | |
Item(Global): Report Size, data= [ 0x08 ] 8 | |
Item(Global): Report Count, data= [ 0x3f ] 63 | |
Item(Main ): Input, data= [ 0x03 ] 3 | |
Constant Variable Absolute No_Wrap Linear | |
Preferred_State No_Null_Position Non_Volatile Bitfield | |
Item(Global): Report ID, data= [ 0x01 ] 1 | |
Item(Local ): Usage, data= [ 0x03 ] 3 | |
(null) | |
Item(Global): Report Size, data= [ 0x08 ] 8 | |
Item(Global): Report Count, data= [ 0x3f ] 63 | |
Item(Main ): Output, data= [ 0x83 ] 131 | |
Constant Variable Absolute No_Wrap Linear | |
Preferred_State No_Null_Position Volatile Bitfield | |
Item(Global): Report ID, data= [ 0x10 ] 16 | |
Item(Local ): Usage, data= [ 0x04 ] 4 | |
(null) | |
Item(Global): Report Size, data= [ 0x08 ] 8 | |
Item(Global): Report Count, data= [ 0x3f ] 63 | |
Item(Main ): Output, data= [ 0x83 ] 131 | |
Constant Variable Absolute No_Wrap Linear | |
Preferred_State No_Null_Position Volatile Bitfield | |
Item(Global): Report ID, data= [ 0x80 ] 128 | |
Item(Local ): Usage, data= [ 0x05 ] 5 | |
(null) | |
Item(Global): Report Size, data= [ 0x08 ] 8 | |
Item(Global): Report Count, data= [ 0x3f ] 63 | |
Item(Main ): Output, data= [ 0x83 ] 131 | |
Constant Variable Absolute No_Wrap Linear | |
Preferred_State No_Null_Position Volatile Bitfield | |
Item(Global): Report ID, data= [ 0x82 ] 130 | |
Item(Local ): Usage, data= [ 0x06 ] 6 | |
(null) | |
Item(Global): Report Size, data= [ 0x08 ] 8 | |
Item(Global): Report Count, data= [ 0x3f ] 63 | |
Item(Main ): Output, data= [ 0x83 ] 131 | |
Constant Variable Absolute No_Wrap Linear | |
Preferred_State No_Null_Position Volatile Bitfield | |
Item(Main ): End Collection, data=none | |
Endpoint Descriptor: | |
bLength 7 | |
bDescriptorType 5 | |
bEndpointAddress 0x81 EP 1 IN | |
bmAttributes 3 | |
Transfer Type Interrupt | |
Synch Type None | |
Usage Type Data | |
wMaxPacketSize 0x0040 1x 64 bytes | |
bInterval 8 | |
Endpoint Descriptor: | |
bLength 7 | |
bDescriptorType 5 | |
bEndpointAddress 0x01 EP 1 OUT | |
bmAttributes 3 | |
Transfer Type Interrupt | |
Synch Type None | |
Usage Type Data | |
wMaxPacketSize 0x0040 1x 64 bytes | |
bInterval 8 | |
Device Status: 0x0001 | |
Self Powered | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment