1 -------------------------------------------------------------------------------
2 USB HID (low-speed signalling)
3 -------------------------------------------------------------------------------
5 This is a set of example captures of USB/HID communication on the
6 keyboard/mouse combo device Riitek RT-MWK01.
9 http://www.riitek.com/product_Info.asp?id=56
16 http://lists.en.qi-hardware.com/pipermail/discussion/2011-November/009206.html
18 Usage Page (Desktop), ; Generic desktop controls (01h)
19 Usage (Mouse), ; Mouse (02h, application collection)
20 Collection (Application),
21 Usage (Pointer), ; Pointer (01h, physical collection)
22 Collection (Physical),
26 Usage Page (Button), ; Button (09h)
37 Usage Page (Desktop), ; Generic desktop controls (01h)
38 Usage (X), ; X (30h, dynamic value)
39 Usage (Y), ; Y (31h, dynamic value)
40 Logical Minimum (-127),
41 Logical Maximum (127),
42 Input (Variable, Relative),
44 Collection (Physical),
47 Usage Page (Desktop), ; Generic desktop controls (01h)
48 Usage (Wheel), ; Wheel (38h, dynamic value)
49 Logical Minimum (-127),
50 Logical Maximum (127),
51 Input (Variable, Relative),
54 Usage Page (Consumer), ; Consumer (0Ch)
55 Usage (Consumer Control), ; Consumer control (01h, application collection)
56 Collection (Application),
59 Usage Maximum (AC Format), ; AC format (023Ch, selector)
61 Logical Maximum (572),
66 Usage Page (Desktop), ; Generic desktop controls (01h)
67 Usage (Keyboard), ; Keyboard (06h, application collection)
68 Collection (Application),
69 Usage Page (Keyboard), ; Keyboard/keypad (07h)
70 Usage Minimum (KB Leftcontrol), ; Keyboard left control (E0h, dynamic value)
71 Usage Maximum (KB Right GUI), ; Keyboard right GUI (E7h, dynamic value)
82 Usage Page (LED), ; LEDs (08h)
92 Logical Maximum (-107),
93 Usage Page (Keyboard), ; Keyboard/keypad (07h)
94 Usage Minimum (None), ; No event (00h, selector)
95 Usage Maximum (KB LANG6), ; Keyboard LANG6 (95h, selector)
100 lsusb -v -d 1997:0409
101 ---------------------
103 Bus 002 Device 093: ID 1997:0409
108 bDeviceClass 0 (Defined at Interface level)
115 iManufacturer 1 Riitek
116 iProduct 2 Micro Keyboard
119 Configuration Descriptor:
124 bConfigurationValue 1
130 Interface Descriptor:
136 bInterfaceClass 3 Human Interface Device
137 bInterfaceSubClass 1 Boot Interface Subclass
138 bInterfaceProtocol 1 Keyboard
140 HID Device Descriptor:
144 bCountryCode 0 Not supported
146 bDescriptorType 34 Report
153 bEndpointAddress 0x81 EP 1 IN
155 Transfer Type Interrupt
158 wMaxPacketSize 0x0008 1x 8 bytes
160 Interface Descriptor:
166 bInterfaceClass 3 Human Interface Device
167 bInterfaceSubClass 1 Boot Interface Subclass
168 bInterfaceProtocol 2 Mouse
170 HID Device Descriptor:
174 bCountryCode 0 Not supported
176 bDescriptorType 34 Report
183 bEndpointAddress 0x82 EP 2 IN
185 Transfer Type Interrupt
188 wMaxPacketSize 0x0008 1x 8 bytes
190 Device Status: 0x0000
197 The logic analyzer used was an ARMFLY Mini-Logic (at 24MHz):
208 The sigrok command line used was:
210 sigrok-cli -d 0:samplerate=24mhz --time 1s -o rt-mwk01.sr --probes 1,2
212 (the user pressed 'q' again and again; there was no mouse movement)