USB键盘HID设备示例
2021-12-19
1691
1
该键盘是一个比较复杂的复合设备,其中接口0实现的是键盘功能,接口1又因为报告描述符分为三个HID设备。
BUSHOUND下的设备ID关系:
在BUSHOUND抓取该USB键盘的枚举过程:
Device Length Phase Data Description
------ -------- ----- -------------------------------------------------- ----------------
8.0 CTL 80 06 00 01 00 00 12 00 GET DESCRIPTOR
8.0 18 IN 12 01 10 01 00 00 00 08 6d 04 1c c3 00 64 01 02 ........m....d..
00 01 ..
8.0 CTL 80 06 00 02 00 00 09 00 GET DESCRIPTOR
8.0 9 IN 09 02 3b 00 02 01 03 a0 2d ..;.....-
8.0 CTL 80 06 00 02 00 00 3b 00 GET DESCRIPTOR
8.0 59 IN 09 02 3b 00 02 01 03 a0 2d 09 04 00 00 01 03 01 ..;.....-.......
01 02 09 21 10 01 00 01 22 41 00 07 05 81 03 08 ...!...."A......
00 0a 09 04 01 00 01 03 00 00 02 09 21 10 01 00 ............!...
01 22 9f 00 07 05 82 03 04 00 ff .".........
8.0 CTL 00 09 01 00 00 00 00 00 SET CONFIG
8.0 CTL 80 06 02 03 09 04 04 00 GET DESCRIPTOR
8.0 4 IN 1a 03 55 00 ..U.
8.0 CTL 80 06 02 03 09 04 1a 00 GET DESCRIPTOR
8.0 26 IN 1a 03 55 00 53 00 42 00 20 00 4b 00 65 00 79 00 ..U.S.B. .K.e.y.
62 00 6f 00 61 00 72 00 64 00 b.o.a.r.d.
8.0 CTL 80 06 02 03 09 04 04 00 GET DESCRIPTOR
8.0 4 IN 1a 03 55 00 ..U.
8.0 CTL 80 06 02 03 09 04 1a 00 GET DESCRIPTOR
8.0 26 IN 1a 03 55 00 53 00 42 00 20 00 4b 00 65 00 79 00 ..U.S.B. .K.e.y.
62 00 6f 00 61 00 72 00 64 00 b.o.a.r.d.
12.0 CTL 80 06 00 01 00 00 12 00 GET DESCRIPTOR
12.0 18 IN 12 01 10 01 00 00 00 08 6d 04 1c c3 00 64 01 02 ........m....d..
00 01 ..
12.0 CTL 80 06 00 02 00 00 09 00 GET DESCRIPTOR
12.0 9 IN 09 02 22 00 01 01 03 a0 2d ..".....-
12.0 CTL 80 06 00 02 00 00 22 00 GET DESCRIPTOR
12.0 34 IN 09 02 22 00 01 01 03 a0 2d 09 04 00 00 01 03 01 ..".....-.......
01 02 09 21 10 01 00 01 22 41 00 07 05 81 03 08 ...!...."A......
00 0a ..
12.0 CTL 00 09 01 00 00 00 00 00 SET CONFIG
12.0 CTL 21 0a 00 00 00 00 00 00 SET IDLE
12.0 CTL 81 06 00 22 00 00 81 00 GET DESCRIPTOR
12.0 65 IN 05 01 09 06 a1 01 05 07 19 e0 29 e7 15 00 25 01 ..........)...%.
75 01 95 08 81 02 95 01 75 08 81 01 95 05 75 01 u.......u.....u.
05 08 19 01 29 05 91 02 95 01 75 03 91 01 95 06 ....).....u.....
75 08 15 00 26 ff 00 05 07 19 00 2a ff 00 81 00 u...&......*....
c0 .
13.0 CTL 80 06 00 01 00 00 12 00 GET DESCRIPTOR
13.0 18 IN 12 01 10 01 00 00 00 08 6d 04 1c c3 00 64 01 02 ........m....d..
00 01 ..
13.0 CTL 80 06 00 02 00 00 09 00 GET DESCRIPTOR
13.0 9 IN 09 02 22 00 01 01 03 a0 2d ..".....-
13.0 CTL 80 06 00 02 00 00 22 00 GET DESCRIPTOR
13.0 34 IN 09 02 22 00 01 01 03 a0 2d 09 04 01 00 01 03 00 ..".....-.......
00 02 09 21 10 01 00 01 22 9f 00 07 05 82 03 04 ...!....".......
00 ff ..
13.0 CTL 00 09 01 00 00 00 00 00 SET CONFIG
13.0 CTL 21 0a 00 00 01 00 00 00 SET IDLE
13.0 CTL 81 06 00 22 01 00 df 00 GET DESCRIPTOR
13.0 159 IN 05 0c 09 01 a1 01 85 01 09 e0 15 e8 25 18 75 07 ............%.u.
95 01 81 06 15 00 25 01 75 01 09 e2 81 06 c0 06 ......%.u.......
01 00 09 80 a1 01 85 02 25 01 15 00 75 01 0a 81 ........%...u...
00 0a 82 00 0a 83 00 95 03 81 06 95 05 81 01 c0 ................
06 0c 00 09 01 a1 01 85 03 25 01 15 00 75 01 0a .........%...u..
b5 00 0a b6 00 0a b7 00 0a b8 00 0a cd 00 0a e2 ................
00 0a e9 00 0a ea 00 95 08 81 02 0a 83 01 0a 8a ................
01 0a 92 01 0a 94 01 0a 21 02 0a 23 02 0a 24 02 ........!..#..$.
0a 25 02 95 08 81 02 0a 26 02 0a 27 02 0a 2a 02 .%......&..'..*.
0a b3 00 0a b4 00 95 05 81 02 95 03 81 01 c0 ...............
12.0 CTL 21 09 00 02 00 00 01 00 SET REPORT
12.0 1 OUT 01 .
13.0 CTL 80 06 02 03 09 04 0a 02 GET DESCRIPTOR
13.0 26 IN 1a 03 55 00 53 00 42 00 20 00 4b 00 65 00 79 00 ..U.S.B. .K.e.y.
62 00 6f 00 61 00 72 00 64 00 b.o.a.r.d.
13.0 CTL 80 06 02 03 09 04 0a 02 GET DESCRIPTOR
13.0 26 IN 1a 03 55 00 53 00 42 00 20 00 4b 00 65 00 79 00 ..U.S.B. .K.e.y.
62 00 6f 00 61 00 72 00 64 00 b.o.a.r.d.
13.0 CTL 80 06 02 03 09 04 0a 02 GET DESCRIPTOR
13.0 26 IN 1a 03 55 00 53 00 42 00 20 00 4b 00 65 00 79 00 ..U.S.B. .K.e.y.
62 00 6f 00 61 00 72 00 64 00 b.o.a.r.d.
13.0 CTL 80 06 02 03 09 04 0a 02 GET DESCRIPTOR
13.0 26 IN 1a 03 55 00 53 00 42 00 20 00 4b 00 65 00 79 00 ..U.S.B. .K.e.y.
62 00 6f 00 61 00 72 00 64 00 b.o.a.r.d.
13.0 CTL 80 06 02 03 09 04 0a 02 GET DESCRIPTOR
13.0 26 IN 1a 03 55 00 53 00 42 00 20 00 4b 00 65 00 79 00 ..U.S.B. .K.e.y.
62 00 6f 00 61 00 72 00 64 00 b.o.a.r.d.
13.0 CTL 80 06 02 03 09 04 0a 02 GET DESCRIPTOR
13.0 26 IN 1a 03 55 00 53 00 42 00 20 00 4b 00 65 00 79 00 ..U.S.B. .K.e.y.
62 00 6f 00 61 00 72 00 64 00 b.o.a.r.d.
13.0 CTL 80 06 02 03 09 04 0a 02 GET DESCRIPTOR
13.0 26 IN 1a 03 55 00 53 00 42 00 20 00 4b 00 65 00 79 00 ..U.S.B. .K.e.y.
62 00 6f 00 61 00 72 00 64 00 b.o.a.r.d.
13.0 CTL 80 06 02 03 09 04 0a 02 GET DESCRIPTOR
13.0 26 IN 1a 03 55 00 53 00 42 00 20 00 4b 00 65 00 79 00 ..U.S.B. .K.e.y.
62 00 6f 00 61 00 72 00 64 00 b.o.a.r.d.
13.0 CTL 80 06 02 03 09 04 0a 02 GET DESCRIPTOR
13.0 26 IN 1a 03 55 00 53 00 42 00 20 00 4b 00 65 00 79 00 ..U.S.B. .K.e.y.
62 00 6f 00 61 00 72 00 64 00 b.o.a.r.d.
13.0 CTL 80 06 02 03 09 04 0a 02 GET DESCRIPTOR
13.0 26 IN 1a 03 55 00 53 00 42 00 20 00 4b 00 65 00 79 00 ..U.S.B. .K.e.y.
62 00 6f 00 61 00 72 00 64 00 b.o.a.r.d.
13.0 CTL 80 06 02 03 09 04 0a 02 GET DESCRIPTOR
13.0 26 IN 1a 03 55 00 53 00 42 00 20 00 4b 00 65 00 79 00 ..U.S.B. .K.e.y.
62 00 6f 00 61 00 72 00 64 00 b.o.a.r.d.
13.0 CTL 80 06 02 03 09 04 0a 02 GET DESCRIPTOR
13.0 26 IN 1a 03 55 00 53 00 42 00 20 00 4b 00 65 00 79 00 ..U.S.B. .K.e.y.
62 00 6f 00 61 00 72 00 64 00 b.o.a.r.d.
8.0 CTL 80 06 00 02 00 00 09 00 GET DESCRIPTOR
8.0 9 IN 09 02 3b 00 02 01 03 a0 2d ..;.....-
8.0 CTL 80 06 00 02 00 00 3b 00 GET DESCRIPTOR
8.0 59 IN 09 02 3b 00 02 01 03 a0 2d 09 04 00 00 01 03 01 ..;.....-.......
01 02 09 21 10 01 00 01 22 41 00 07 05 81 03 08 ...!...."A......
00 0a 09 04 01 00 01 03 00 00 02 09 21 10 01 00 ............!...
01 22 9f 00 07 05 82 03 04 00 ff .".........
13.0 CTL 80 06 02 03 09 04 0a 02 GET DESCRIPTOR
13.0 26 IN 1a 03 55 00 53 00 42 00 20 00 4b 00 65 00 79 00 ..U.S.B. .K.e.y.
62 00 6f 00 61 00 72 00 64 00 b.o.a.r.d.
13.0 CTL 80 06 02 03 09 04 0a 02 GET DESCRIPTOR
13.0 26 IN 1a 03 55 00 53 00 42 00 20 00 4b 00 65 00 79 00 ..U.S.B. .K.e.y.
62 00 6f 00 61 00 72 00 64 00 b.o.a.r.d.
13.0 CTL 80 06 02 03 09 04 0a 02 GET DESCRIPTOR
13.0 26 IN 1a 03 55 00 53 00 42 00 20 00 4b 00 65 00 79 00 ..U.S.B. .K.e.y.
62 00 6f 00 61 00 72 00 64 00 b.o.a.r.d.
13.0 CTL 80 06 02 03 09 04 0a 02 GET DESCRIPTOR
13.0 26 IN 1a 03 55 00 53 00 42 00 20 00 4b 00 65 00 79 00 ..U.S.B. .K.e.y.
62 00 6f 00 61 00 72 00 64 00 b.o.a.r.d.
13.0 CTL 80 06 02 03 09 04 0a 02 GET DESCRIPTOR
13.0 26 IN 1a 03 55 00 53 00 42 00 20 00 4b 00 65 00 79 00 ..U.S.B. .K.e.y.
62 00 6f 00 61 00 72 00 64 00 b.o.a.r.d.
13.0 CTL 80 06 02 03 09 04 0a 02 GET DESCRIPTOR
13.0 26 IN 1a 03 55 00 53 00 42 00 20 00 4b 00 65 00 79 00 ..U.S.B. .K.e.y.
62 00 6f 00 61 00 72 00 64 00 b.o.a.r.d.
12.1 8 IN 00 00 28 00 00 00 00 00 ..(.....
15 12 IN 01 00 1c 00 00 00 00 00 00 00 00 00 ............
12.1 8 IN 00 00 00 00 00 00 00 00 ........
15 12 IN 01 00 1c 00 01 00 00 00 00 00 00 00 ............
12.1 8 IN 01 00 00 00 00 00 00 00 ........
15 12 IN 01 00 1d 00 00 00 00 00 00 00 00 00 ............
12.1 8 IN 00 00 00 00 00 00 00 00 ........
15 12 IN 01 00 1d 00 01 00 00 00 00 00 00 00 ............
12.1 8 IN 00 00 04 00 00 00 00 00 ........
在USBTreeView中的设备描述符信息如下:
=========================== USB Port6 ===========================
Connection Status : 0x01 (Device is connected)
Port Chain : 2-6
Properties : 0x01
IsUserConnectable : yes
PortIsDebugCapable : no
PortHasMultiCompanions : no
PortConnectorIsTypeC : no
ConnectionIndex : 6
CompanionIndex : 0
CompanionHubSymLnk : USB#ROOT_HUB30#4&186df573&0&0#{f18a0e88-c30c-11d0-8815-00a0c906bed8}
CompanionPortNumber : 22
-> CompanionPortChain : 2-22
======================== USB Device ========================
+++++++++++++++++ Device Information ++++++++++++++++++
Device Description : USB Composite Device
Device Path : \\?\USB#VID_046D&PID_C31C#5&1e7d8db7&0&6#{a5dcbf10-6530-11d2-901f-00c04fb951ed} (GUID_DEVINTERFACE_USB_DEVICE)
Kernel Name : \Device\USBPDO-2
Device ID : USB\VID_046D&PID_C31C\5&1E7D8DB7&0&6
Hardware IDs : USB\VID_046D&PID_C31C&REV_6400 USB\VID_046D&PID_C31C
Driver KeyName : {36fc9e60-c465-11cf-8056-444553540000}\0009 (GUID_DEVCLASS_USB)
Driver : \SystemRoot\System32\drivers\usbccgp.sys (Version: 10.0.14393.1794 Date: 2017-10-09)
Driver Inf : C:\Windows\inf\usb.inf
Legacy BusType : PNPBus
Class : USB
Class GUID : {36fc9e60-c465-11cf-8056-444553540000} (GUID_DEVCLASS_USB)
Service : usbccgp
Enumerator : USB
Location Info : Port_#0006.Hub_#0001
Location IDs : PCIROOT(0)#PCI(1400)#USBROOT(0)#USB(6), ACPI(_SB_)#ACPI(PCI0)#ACPI(XHC_)#ACPI(RHUB)#ACPI(HS06)
Container ID : {6d8fbade-d8e4-11eb-a930-74d83e3f7533}
Manufacturer Info : (标准 USB 主控制器)
Capabilities : 0x84 (Removable, SurpriseRemovalOK)
Status : 0x0180600A (DN_DRIVER_LOADED, DN_STARTED, DN_DISABLEABLE, DN_REMOVABLE, DN_NT_ENUMERATOR, DN_NT_DRIVER)
Problem Code : 0
Address : 6
HcDisableSelectiveSuspend: 0
EnableSelectiveSuspend : 0
SelectiveSuspendEnabled : 0
EnhancedPowerMgmtEnabled : 0
IdleInWorkingState : 0
WakeFromSleepState : 0
Power State : D0 (supported: D0, D1, D2, D3, wake from D0, wake from D1, wake from D2)
Child Device 1 : USB 输入设备
Device ID : USB\VID_046D&PID_C31C&MI_00\6&200DCAF3&0&0000
Class : HIDClass
Driver KeyName : {745a17a0-74d3-11d0-b6fe-00a0c90f57da}\0004 (GUID_DEVCLASS_HIDCLASS)
Service : HidUsb
Child Device 1 : HID Keyboard Device
Device Path 1 : \\?\HID#VID_046D&PID_C31C&MI_00#7&3a883424&0&0000#{884b96c3-56ef-11d1-bc8c-00a0c91405dd} (GUID_DEVINTERFACE_KEYBOARD)
Device Path 2 : \\?\HID#VID_046D&PID_C31C&MI_00#7&3a883424&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030} (GUID_DEVINTERFACE_HID)
Kernel Name : \Device\00000105
Device ID : HID\VID_046D&PID_C31C&MI_00\7&3A883424&0&0000
Class : Keyboard
Driver KeyName : {4d36e96b-e325-11ce-bfc1-08002be10318}\0003 (GUID_DEVCLASS_KEYBOARD)
Service : kbdhid
Child Device 2 : USB 输入设备
Device ID : USB\VID_046D&PID_C31C&MI_01\6&200DCAF3&0&0001
Class : HIDClass
Driver KeyName : {745a17a0-74d3-11d0-b6fe-00a0c90f57da}\0005 (GUID_DEVCLASS_HIDCLASS)
Service : HidUsb
Child Device 1 : 符合 HID 标准的用户控制设备
Device Path : \\?\HID#VID_046D&PID_C31C&MI_01&Col01#7&22c4a7df&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030} (GUID_DEVINTERFACE_HID)
Kernel Name : \Device\00000106
Device ID : HID\VID_046D&PID_C31C&MI_01&COL01\7&22C4A7DF&0&0000
Class : HIDClass
Driver KeyName : {745a17a0-74d3-11d0-b6fe-00a0c90f57da}\0010 (GUID_DEVCLASS_HIDCLASS)
Child Device 2 : 符合 HID 标准的系统控制器
Device Path 1 : \\?\HID#VID_046D&PID_C31C&MI_01&Col02#7&22c4a7df&0&0001#{4d1e55b2-f16f-11cf-88cb-001111000030} (GUID_DEVINTERFACE_HID)
Device Path 2 : \\?\HID#VID_046D&PID_C31C&MI_01&Col02#7&22c4a7df&0&0001#{4afa3d53-74a7-11d0-be5e-00a0c9062857} (GUID_DEVICE_SYS_BUTTON)
Kernel Name : \Device\00000107
Device ID : HID\VID_046D&PID_C31C&MI_01&COL02\7&22C4A7DF&0&0001
Class : HIDClass
Driver KeyName : {745a17a0-74d3-11d0-b6fe-00a0c90f57da}\0011 (GUID_DEVCLASS_HIDCLASS)
Child Device 3 : 符合 HID 标准的用户控制设备
Device Path : \\?\HID#VID_046D&PID_C31C&MI_01&Col03#7&22c4a7df&0&0002#{4d1e55b2-f16f-11cf-88cb-001111000030} (GUID_DEVINTERFACE_HID)
Kernel Name : \Device\00000108
Device ID : HID\VID_046D&PID_C31C&MI_01&COL03\7&22C4A7DF&0&0002
Class : HIDClass
Driver KeyName : {745a17a0-74d3-11d0-b6fe-00a0c90f57da}\0012 (GUID_DEVCLASS_HIDCLASS)
+++++++++++++++++ Registry USB Flags +++++++++++++++++
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\usbflags\046DC31C6400
NewInterfaceUsage : REG_DWORD 00000000 (0)
---------------- Connection Information ---------------
Connection Index : 0x06 (6)
Connection Status : 0x01 (DeviceConnected)
Current Config Value : 0x01
Device Address : 0x0D (13)
Is Hub : 0x00 (no)
Device Bus Speed : 0x00 (Low-Speed)
Number Of Open Pipes : 0x02 (2 pipes to data endpoints)
Pipe[0] : EndpointID=1 Direction=IN ScheduleOffset=0 Type=Interrupt
Pipe[1] : EndpointID=2 Direction=IN ScheduleOffset=0 Type=Interrupt
Data (HexDump) : 06 00 00 00 12 01 10 01 00 00 00 08 6D 04 1C C3 ............m...
00 64 01 02 00 01 01 00 00 0D 00 02 00 00 00 01 .d..............
00 00 00 07 05 81 03 08 00 0A 00 00 00 00 07 05 ................
82 03 04 00 FF 00 00 00 00 .........
--------------- Connection Information V2 -------------
Connection Index : 0x06 (6)
Length : 0x10 (16 bytes)
SupportedUsbProtocols : 0x03
Usb110 : 1 (yes)
Usb200 : 1 (yes)
Usb300 : 0 (no)
ReservedMBZ : 0x00
Flags : 0x00
DevIsOpAtSsOrHigher : 0 (Is not operating at SuperSpeed or higher)
DevIsSsCapOrHigher : 0 (Is not SuperSpeed capable or higher)
DevIsOpAtSsPlusOrHigher : 0 (Is not operating at SuperSpeedPlus or higher)
DevIsSsPlusCapOrHigher : 0 (Is not SuperSpeedPlus capable or higher)
ReservedMBZ : 0x00
Data (HexDump) : 06 00 00 00 10 00 00 00 03 00 00 00 00 00 00 00 ................
---------------------- Device Descriptor ----------------------
bLength : 0x12 (18 bytes)
bDescriptorType : 0x01 (Device Descriptor)
bcdUSB : 0x110 (USB Version 1.10)
bDeviceClass : 0x00 (defined by the interface descriptors)
bDeviceSubClass : 0x00
bDeviceProtocol : 0x00
bMaxPacketSize0 : 0x08 (8 bytes)
idVendor : 0x046D (Logitech Inc.)
idProduct : 0xC31C
bcdDevice : 0x6400
iManufacturer : 0x01 (String Descriptor 1)
Language 0x0409 : "Logitech"
iProduct : 0x02 (String Descriptor 2)
Language 0x0409 : "USB Keyboard"
iSerialNumber : 0x00 (No String Descriptor)
bNumConfigurations : 0x01 (1 Configuration)
Data (HexDump) : 12 01 10 01 00 00 00 08 6D 04 1C C3 00 64 01 02 ........m....d..
00 01 ..
------------------ Configuration Descriptor -------------------
bLength : 0x09 (9 bytes)
bDescriptorType : 0x02 (Configuration Descriptor)
wTotalLength : 0x003B (59 bytes)
bNumInterfaces : 0x02 (2 Interfaces)
bConfigurationValue : 0x01 (Configuration 1)
iConfiguration : 0x03 (String Descriptor 3)
Language 0x0409 : "U64.00_B0001"
bmAttributes : 0xA0
D7: Reserved, set 1 : 0x01
D6: Self Powered : 0x00 (no)
D5: Remote Wakeup : 0x01 (yes)
D4..0: Reserved, set 0 : 0x00
MaxPower : 0x2D (90 mA)
Data (HexDump) : 09 02 3B 00 02 01 03 A0 2D 09 04 00 00 01 03 01 ..;.....-.......
01 02 09 21 10 01 00 01 22 41 00 07 05 81 03 08 ...!...."A......
00 0A 09 04 01 00 01 03 00 00 02 09 21 10 01 00 ............!...
01 22 9F 00 07 05 82 03 04 00 FF .".........
---------------- Interface Descriptor -----------------
bLength : 0x09 (9 bytes)
bDescriptorType : 0x04 (Interface Descriptor)
bInterfaceNumber : 0x00
bAlternateSetting : 0x00
bNumEndpoints : 0x01 (1 Endpoint)
bInterfaceClass : 0x03 (HID - Human Interface Device)
bInterfaceSubClass : 0x01 (Boot Interface)
bInterfaceProtocol : 0x01 (Keyboard)
iInterface : 0x02 (String Descriptor 2)
Language 0x0409 : "USB Keyboard"
Data (HexDump) : 09 04 00 00 01 03 01 01 02 .........
------------------- HID Descriptor --------------------
bLength : 0x09 (9 bytes)
bDescriptorType : 0x21 (HID Descriptor)
bcdHID : 0x0110 (HID Version 1.10)
bCountryCode : 0x00 (00 = not localized)
bNumDescriptors : 0x01
Data (HexDump) : 09 21 10 01 00 01 22 41 00 .!...."A.
Descriptor 1:
bDescriptorType : 0x22 (Class=Report)
wDescriptorLength : 0x0041 (65 bytes)
Error reading descriptor : ERROR_INVALID_PARAMETER
----------------- Endpoint Descriptor -----------------
bLength : 0x07 (7 bytes)
bDescriptorType : 0x05 (Endpoint Descriptor)
bEndpointAddress : 0x81 (Direction=IN EndpointID=1)
bmAttributes : 0x03 (TransferType=Interrupt)
wMaxPacketSize : 0x0008
bInterval : 0x0A (10 ms)
Data (HexDump) : 07 05 81 03 08 00 0A .......
---------------- Interface Descriptor -----------------
bLength : 0x09 (9 bytes)
bDescriptorType : 0x04 (Interface Descriptor)
bInterfaceNumber : 0x01
bAlternateSetting : 0x00
bNumEndpoints : 0x01 (1 Endpoint)
bInterfaceClass : 0x03 (HID - Human Interface Device)
bInterfaceSubClass : 0x00 (None)
bInterfaceProtocol : 0x00 (None)
iInterface : 0x02 (String Descriptor 2)
Language 0x0409 : "USB Keyboard"
Data (HexDump) : 09 04 01 00 01 03 00 00 02 .........
------------------- HID Descriptor --------------------
bLength : 0x09 (9 bytes)
bDescriptorType : 0x21 (HID Descriptor)
bcdHID : 0x0110 (HID Version 1.10)
bCountryCode : 0x00 (00 = not localized)
bNumDescriptors : 0x01
Data (HexDump) : 09 21 10 01 00 01 22 9F 00 .!...."..
Descriptor 1:
bDescriptorType : 0x22 (Class=Report)
wDescriptorLength : 0x009F (159 bytes)
Error reading descriptor : ERROR_INVALID_PARAMETER
----------------- Endpoint Descriptor -----------------
bLength : 0x07 (7 bytes)
bDescriptorType : 0x05 (Endpoint Descriptor)
bEndpointAddress : 0x82 (Direction=IN EndpointID=2)
bmAttributes : 0x03 (TransferType=Interrupt)
wMaxPacketSize : 0x0004
bInterval : 0xFF (255 ms)
Data (HexDump) : 07 05 82 03 04 00 FF .......
-------------------- String Descriptors -------------------
------ String Descriptor 0 ------
bLength : 0x04 (4 bytes)
bDescriptorType : 0x03 (String Descriptor)
Language ID[0] : 0x0409 (English - United States)
Data (HexDump) : 04 03 09 04 ....
------ String Descriptor 1 ------
bLength : 0x12 (18 bytes)
bDescriptorType : 0x03 (String Descriptor)
Language 0x0409 : "Logitech"
Data (HexDump) : 12 03 4C 00 6F 00 67 00 69 00 74 00 65 00 63 00 ..L.o.g.i.t.e.c.
68 00 h.
------ String Descriptor 2 ------
bLength : 0x1A (26 bytes)
bDescriptorType : 0x03 (String Descriptor)
Language 0x0409 : "USB Keyboard"
Data (HexDump) : 1A 03 55 00 53 00 42 00 20 00 4B 00 65 00 79 00 ..U.S.B. .K.e.y.
62 00 6F 00 61 00 72 00 64 00 b.o.a.r.d.
------ String Descriptor 3 ------
bLength : 0x1A (26 bytes)
bDescriptorType : 0x03 (String Descriptor)
Language 0x0409 : "U64.00_B0001"
Data (HexDump) : 1A 03 55 00 36 00 34 00 2E 00 30 00 30 00 5F 00 ..U.6.4...0.0._.
42 00 30 00 30 00 30 00 31 00 B.0.0.0.1.
HID人机交互QQ群:564808376
UAC音频QQ群:218581009
UVC相机QQ群:331552032
BOT&UASP大容量存储QQ群:258159197
STC-USB单片机QQ群:315457461
USB技术交流QQ群2:580684376
USB技术交流QQ群:952873936