Created
January 6, 2021 07:10
-
-
Save tmk/3e7af2b10b162b9eea853871918a0a2d to your computer and use it in GitHub Desktop.
Varmilo MA109C - EC Switch Keyboard
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 078: ID 04d9:d001 Holtek Semiconductor, Inc. | |
Device Descriptor: | |
bLength 18 | |
bDescriptorType 1 | |
bcdUSB 2.00 | |
bDeviceClass 0 | |
bDeviceSubClass 0 | |
bDeviceProtocol 0 | |
bMaxPacketSize0 8 | |
idVendor 0x04d9 Holtek Semiconductor, Inc. | |
idProduct 0xd001 | |
bcdDevice 2.50 | |
iManufacturer 0 | |
iProduct 2 Varmilo | |
iSerial 0 | |
bNumConfigurations 1 | |
Configuration Descriptor: | |
bLength 9 | |
bDescriptorType 2 | |
wTotalLength 0x005b | |
bNumInterfaces 3 | |
bConfigurationValue 1 | |
iConfiguration 0 | |
bmAttributes 0xa0 | |
(Bus Powered) | |
Remote Wakeup | |
MaxPower 300mA | |
Interface Descriptor: | |
bLength 9 | |
bDescriptorType 4 | |
bInterfaceNumber 0 | |
bAlternateSetting 0 | |
bNumEndpoints 1 | |
bInterfaceClass 3 Human Interface Device | |
bInterfaceSubClass 1 Boot Interface Subclass | |
bInterfaceProtocol 1 Keyboard | |
iInterface 0 | |
HID Device Descriptor: | |
bLength 9 | |
bDescriptorType 33 | |
bcdHID 1.10 | |
bCountryCode 0 Not supported | |
bNumDescriptors 1 | |
bDescriptorType 34 Report | |
wDescriptorLength 59 | |
Report Descriptor: (length is 59) | |
Item(Global): Usage Page, data= [ 0x01 ] 1 | |
Generic Desktop Controls | |
Item(Local ): Usage, data= [ 0x06 ] 6 | |
Keyboard | |
Item(Main ): Collection, data= [ 0x01 ] 1 | |
Application | |
Item(Global): Usage Page, data= [ 0x08 ] 8 | |
LEDs | |
Item(Global): Logical Minimum, data= [ 0x00 ] 0 | |
Item(Global): Logical Maximum, data= [ 0x01 ] 1 | |
Item(Local ): Usage Minimum, data= [ 0x01 ] 1 | |
NumLock | |
Item(Local ): Usage Maximum, data= [ 0x03 ] 3 | |
Scroll Lock | |
Item(Global): Report Size, data= [ 0x01 ] 1 | |
Item(Global): Report Count, data= [ 0x03 ] 3 | |
Item(Main ): Output, data= [ 0x02 ] 2 | |
Data Variable Absolute No_Wrap Linear | |
Preferred_State No_Null_Position Non_Volatile Bitfield | |
Item(Global): Report Count, data= [ 0x05 ] 5 | |
Item(Main ): Output, data= [ 0x01 ] 1 | |
Constant Array Absolute No_Wrap Linear | |
Preferred_State No_Null_Position Non_Volatile Bitfield | |
Item(Global): Usage Page, data= [ 0x07 ] 7 | |
Keyboard | |
Item(Local ): Usage Minimum, data= [ 0xe0 ] 224 | |
Control Left | |
Item(Local ): Usage Maximum, data= [ 0xe7 ] 231 | |
GUI Right | |
Item(Global): Report Size, data= [ 0x01 ] 1 | |
Item(Global): Report Count, data= [ 0x08 ] 8 | |
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= [ 0x08 ] 8 | |
Item(Main ): Input, data= [ 0x01 ] 1 | |
Constant Array Absolute No_Wrap Linear | |
Preferred_State No_Null_Position Non_Volatile Bitfield | |
Item(Global): Logical Minimum, data= [ 0x00 ] 0 | |
Item(Global): Logical Maximum, data= [ 0xff 0x00 ] 255 | |
Item(Local ): Usage Minimum, data= [ 0x00 ] 0 | |
No Event | |
Item(Local ): Usage Maximum, data= [ 0xff 0x00 ] 255 | |
(null) | |
Item(Global): Report Size, data= [ 0x08 ] 8 | |
Item(Global): Report Count, data= [ 0x06 ] 6 | |
Item(Main ): Input, data= [ 0x00 ] 0 | |
Data Array Absolute No_Wrap Linear | |
Preferred_State No_Null_Position Non_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 0x0008 1x 8 bytes | |
bInterval 2 | |
Interface Descriptor: | |
bLength 9 | |
bDescriptorType 4 | |
bInterfaceNumber 1 | |
bAlternateSetting 0 | |
bNumEndpoints 1 | |
bInterfaceClass 3 Human Interface Device | |
bInterfaceSubClass 0 | |
bInterfaceProtocol 1 Keyboard | |
iInterface 0 | |
HID Device Descriptor: | |
bLength 9 | |
bDescriptorType 33 | |
bcdHID 1.10 | |
bCountryCode 0 Not supported | |
bNumDescriptors 1 | |
bDescriptorType 34 Report | |
wDescriptorLength 150 | |
Report Descriptor: (length is 150) | |
Item(Global): Usage Page, data= [ 0x01 ] 1 | |
Generic Desktop Controls | |
Item(Local ): Usage, data= [ 0x06 ] 6 | |
Keyboard | |
Item(Main ): Collection, data= [ 0x01 ] 1 | |
Application | |
Item(Global): Report ID, data= [ 0x01 ] 1 | |
Item(Global): Usage Page, data= [ 0x07 ] 7 | |
Keyboard | |
Item(Local ): Usage Minimum, data= [ 0xe0 ] 224 | |
Control Left | |
Item(Local ): Usage Maximum, data= [ 0xe7 ] 231 | |
GUI Right | |
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= [ 0x08 ] 8 | |
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= [ 0x98 ] 152 | |
Item(Global): Report Size, data= [ 0x01 ] 1 | |
Item(Global): Logical Minimum, data= [ 0x00 ] 0 | |
Item(Global): Logical Maximum, data= [ 0x01 ] 1 | |
Item(Global): Usage Page, data= [ 0x07 ] 7 | |
Keyboard | |
Item(Local ): Usage Minimum, data= [ 0x00 ] 0 | |
No Event | |
Item(Local ): Usage Maximum, data= [ 0x97 ] 151 | |
LANG 8 | |
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(Global): Usage Page, data= [ 0x0c ] 12 | |
Consumer | |
Item(Local ): Usage, data= [ 0x01 ] 1 | |
Consumer Control | |
Item(Main ): Collection, data= [ 0x01 ] 1 | |
Application | |
Item(Global): Report ID, data= [ 0x02 ] 2 | |
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= [ 0x08 ] 8 | |
Item(Local ): Usage, data= [ 0xe9 ] 233 | |
Volume Increment | |
Item(Local ): Usage, data= [ 0xea ] 234 | |
Volume Decrement | |
Item(Local ): Usage, data= [ 0xe2 ] 226 | |
Mute | |
Item(Local ): Usage, data= [ 0x21 0x02 ] 545 | |
AC Search | |
Item(Local ): Usage, data= [ 0x23 0x02 ] 547 | |
AC Home | |
Item(Local ): Usage, data= [ 0xb4 ] 180 | |
Rewind | |
Item(Local ): Usage, data= [ 0xb2 ] 178 | |
Record | |
Item(Local ): Usage, data= [ 0x8a 0x01 ] 394 | |
AL Email Reader | |
Item(Main ): Input, data= [ 0x02 ] 2 | |
Data Variable Absolute No_Wrap Linear | |
Preferred_State No_Null_Position Non_Volatile Bitfield | |
Item(Local ): Usage, data= [ 0xb7 ] 183 | |
Stop | |
Item(Local ): Usage, data= [ 0xb5 ] 181 | |
Scan Next Track | |
Item(Local ): Usage, data= [ 0xcd ] 205 | |
Play/Pause | |
Item(Local ): Usage, data= [ 0xb6 ] 182 | |
Scan Previous Track | |
Item(Local ): Usage, data= [ 0xb8 ] 184 | |
Eject | |
Item(Local ): Usage Minimum, data= [ 0x24 0x02 ] 548 | |
AC Back | |
Item(Local ): Usage Maximum, data= [ 0x26 0x02 ] 550 | |
AC Stop | |
Item(Main ): Input, data= [ 0x02 ] 2 | |
Data Variable Absolute No_Wrap Linear | |
Preferred_State No_Null_Position Non_Volatile Bitfield | |
Item(Local ): Usage, data= [ 0xb1 0x01 ] 433 | |
(null) | |
Item(Local ): Usage, data= [ 0x2a 0x02 ] 554 | |
(null) | |
Item(Local ): Usage, data= [ 0x96 0x01 ] 406 | |
AL Internet Browser | |
Item(Local ): Usage, data= [ 0x06 0x02 ] 518 | |
AC Minimize | |
Item(Local ): Usage, data= [ 0x83 0x01 ] 387 | |
AL Consumer Control Configuration | |
Item(Local ): Usage, data= [ 0x94 0x01 ] 404 | |
AL Local Machine Browser | |
Item(Local ): Usage, data= [ 0x92 0x01 ] 402 | |
AL Calculator | |
Item(Local ): Usage, data= [ 0x27 0x02 ] 551 | |
AC Refresh | |
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(Global): Usage Page, data= [ 0x01 ] 1 | |
Generic Desktop Controls | |
Item(Local ): Usage, data= [ 0x80 ] 128 | |
System Control | |
Item(Main ): Collection, data= [ 0x01 ] 1 | |
Application | |
Item(Global): Report ID, data= [ 0x03 ] 3 | |
Item(Local ): Usage Minimum, data= [ 0x81 ] 129 | |
System Power Down | |
Item(Local ): Usage Maximum, data= [ 0x83 ] 131 | |
System Wake Up | |
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= [ 0x03 ] 3 | |
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= [ 0x05 ] 5 | |
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 | |
Endpoint Descriptor: | |
bLength 7 | |
bDescriptorType 5 | |
bEndpointAddress 0x82 EP 2 IN | |
bmAttributes 3 | |
Transfer Type Interrupt | |
Synch Type None | |
Usage Type Data | |
wMaxPacketSize 0x0020 1x 32 bytes | |
bInterval 5 | |
Interface Descriptor: | |
bLength 9 | |
bDescriptorType 4 | |
bInterfaceNumber 2 | |
bAlternateSetting 0 | |
bNumEndpoints 2 | |
bInterfaceClass 3 Human Interface Device | |
bInterfaceSubClass 0 | |
bInterfaceProtocol 0 | |
iInterface 0 | |
HID Device Descriptor: | |
bLength 9 | |
bDescriptorType 33 | |
bcdHID 1.10 | |
bCountryCode 0 Not supported | |
bNumDescriptors 1 | |
bDescriptorType 34 Report | |
wDescriptorLength 32 | |
Report Descriptor: (length is 32) | |
Item(Global): Usage Page, data= [ 0x00 0xff ] 65280 | |
(null) | |
Item(Local ): Usage, data= [ 0x00 0xff ] 65280 | |
(null) | |
Item(Main ): Collection, data= [ 0x01 ] 1 | |
Application | |
Item(Global): Logical Minimum, data= [ 0x00 ] 0 | |
Item(Global): Logical Maximum, data= [ 0xff 0x00 ] 255 | |
Item(Global): Report Size, data= [ 0x08 ] 8 | |
Item(Global): Report Count, data= [ 0x40 ] 64 | |
Item(Local ): Usage, data= [ 0x20 ] 32 | |
(null) | |
Item(Main ): Input, data= [ 0x02 ] 2 | |
Data Variable Absolute No_Wrap Linear | |
Preferred_State No_Null_Position Non_Volatile Bitfield | |
Item(Local ): Usage, data= [ 0x21 ] 33 | |
(null) | |
Item(Main ): Output, data= [ 0x02 ] 2 | |
Data Variable Absolute No_Wrap Linear | |
Preferred_State No_Null_Position Non_Volatile Bitfield | |
Item(Local ): Usage, data= [ 0x22 ] 34 | |
(null) | |
Item(Global): Report Count, data= [ 0x08 ] 8 | |
Item(Main ): Feature, data= [ 0x02 ] 2 | |
Data Variable Absolute No_Wrap Linear | |
Preferred_State No_Null_Position Non_Volatile Bitfield | |
Item(Main ): End Collection, data=none | |
Endpoint Descriptor: | |
bLength 7 | |
bDescriptorType 5 | |
bEndpointAddress 0x83 EP 3 IN | |
bmAttributes 3 | |
Transfer Type Interrupt | |
Synch Type None | |
Usage Type Data | |
wMaxPacketSize 0x0040 1x 64 bytes | |
bInterval 2 | |
Endpoint Descriptor: | |
bLength 7 | |
bDescriptorType 5 | |
bEndpointAddress 0x04 EP 4 OUT | |
bmAttributes 3 | |
Transfer Type Interrupt | |
Synch Type None | |
Usage Type Data | |
wMaxPacketSize 0x0040 1x 64 bytes | |
bInterval 2 | |
Device Status: 0x0000 | |
(Bus Powered) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment