--- /dev/null
+-------------------------------------------------------------------------------
+USB HID (full-speed signalling)
+-------------------------------------------------------------------------------
+
+This is a set of example captures of USB/HID communication on the
+keyboard/mouse combo device Logitech MK220 (the keyboard is named "K220",
+the mouse is named "M150").
+
+Details:
+http://www.logitech.com/en-za/keyboards/keyboard-mice-combos/8411
+
+
+HID dump
+--------
+
+For a HOWTO, see:
+http://lists.en.qi-hardware.com/pipermail/discussion/2011-November/009206.html
+
+ Usage Page (Desktop), ; Generic desktop controls (01h)
+ Usage (Mouse), ; Mouse (02h, application collection)
+ Collection (Application),
+ Report ID (2),
+ Usage (Pointer), ; Pointer (01h, physical collection)
+ Collection (Physical),
+ Usage Page (Button), ; Button (09h)
+ Usage Minimum (01h),
+ Usage Maximum (10h),
+ Logical Minimum (0),
+ Logical Maximum (1),
+ Report Count (16),
+ Report Size (1),
+ Input (Variable),
+ Usage Page (Desktop), ; Generic desktop controls (01h)
+ Logical Minimum (-2047),
+ Logical Maximum (2047),
+ Report Size (12),
+ Report Count (2),
+ Usage (X), ; X (30h, dynamic value)
+ Usage (Y), ; Y (31h, dynamic value)
+ Input (Variable, Relative),
+ Logical Minimum (-127),
+ Logical Maximum (127),
+ Report Size (8),
+ Report Count (1),
+ Usage (Wheel), ; Wheel (38h, dynamic value)
+ Input (Variable, Relative),
+ Usage Page (Consumer), ; Consumer (0Ch)
+ Usage (AC Pan), ; AC pan (0238h, linear control)
+ Report Count (1),
+ Input (Variable, Relative),
+ End Collection,
+ End Collection,
+ Usage Page (Consumer), ; Consumer (0Ch)
+ Usage (Consumer Control), ; Consumer control (01h, application collection)
+ Collection (Application),
+ Report ID (3),
+ Report Size (16),
+ Report Count (2),
+ Logical Minimum (1),
+ Logical Maximum (652),
+ Usage Minimum (Consumer Control), ; Consumer control (01h, application collection)
+ Usage Maximum (AC Send), ; AC send (028Ch, selector)
+ Input,
+ End Collection,
+ Usage Page (Desktop), ; Generic desktop controls (01h)
+ Usage (Sys Control), ; System control (80h, application collection)
+ Collection (Application),
+ Report ID (4),
+ Report Size (2),
+ Report Count (1),
+ Logical Minimum (1),
+ Logical Maximum (3),
+ Usage (Sys Sleep), ; System sleep (82h, one-shot control)
+ Usage (Sys Power Down), ; System power down (81h, one-shot control)
+ Usage (Sys Wake Up), ; System wake up (83h, one-shot control)
+ Input (No Preferred, Null State),
+ Report Size (6),
+ Input (Constant, Variable),
+ End Collection,
+ Usage Page (FF00h), ; FF00h, vendor-defined
+ Usage (01h),
+ Collection (Application),
+ Report ID (16),
+ Report Size (8),
+ Report Count (6),
+ Logical Minimum (0),
+ Logical Maximum (255),
+ Usage (01h),
+ Input,
+ Usage (01h),
+ Output,
+ End Collection,
+ Usage Page (FF00h), ; FF00h, vendor-defined
+ Usage (02h),
+ Collection (Application),
+ Report ID (17),
+ Report Size (8),
+ Report Count (19),
+ Logical Minimum (0),
+ Logical Maximum (255),
+ Usage (02h),
+ Input,
+ Usage (02h),
+ Output,
+ End Collection,
+ Usage Page (Desktop), ; Generic desktop controls (01h)
+ Usage (Keyboard), ; Keyboard (06h, application collection)
+ Collection (Application),
+ Usage Page (Keyboard), ; Keyboard/keypad (07h)
+ Usage Minimum (KB Leftcontrol), ; Keyboard left control (E0h, dynamic value)
+ Usage Maximum (KB Right GUI), ; Keyboard right GUI (E7h, dynamic value)
+ Logical Minimum (0),
+ Logical Maximum (1),
+ Report Size (1),
+ Report Count (8),
+ Input (Variable),
+ Input (Constant, Variable),
+ Report Count (5),
+ Usage Page (LED), ; LEDs (08h)
+ Usage Minimum (01h),
+ Usage Maximum (05h),
+ Output (Variable),
+ Report Count (1),
+ Report Size (3),
+ Output (Constant),
+ Report Count (6),
+ Report Size (8),
+ Logical Minimum (0),
+ Logical Maximum (164),
+ Usage Page (Keyboard), ; Keyboard/keypad (07h)
+ Usage Minimum (None), ; No event (00h, selector)
+ Usage Maximum (KB ExSel), ; Keyboard ExSel (A4h, selector)
+ Input,
+ End Collection
+
+
+lsusb -v -d 046d:c52e
+---------------------
+
+ Bus 002 Device 019: ID 046d:c52e Logitech, Inc.
+ Device Descriptor:
+ bLength 18
+ bDescriptorType 1
+ bcdUSB 2.00
+ bDeviceClass 0 (Defined at Interface level)
+ bDeviceSubClass 0
+ bDeviceProtocol 0
+ bMaxPacketSize0 8
+ idVendor 0x046d Logitech, Inc.
+ idProduct 0xc52e
+ bcdDevice 23.00
+ iManufacturer 1 Logitech
+ iProduct 2 USB Receiver
+ iSerial 0
+ bNumConfigurations 1
+ Configuration Descriptor:
+ bLength 9
+ bDescriptorType 2
+ wTotalLength 59
+ bNumInterfaces 2
+ bConfigurationValue 1
+ iConfiguration 4 RQR23.00_B0005
+ bmAttributes 0xa0
+ (Bus Powered)
+ Remote Wakeup
+ MaxPower 98mA
+ 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.11
+ bCountryCode 0 Not supported
+ bNumDescriptors 1
+ bDescriptorType 34 Report
+ wDescriptorLength 59
+ Report Descriptors:
+ ** UNAVAILABLE **
+ 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 8
+ Interface Descriptor:
+ bLength 9
+ bDescriptorType 4
+ bInterfaceNumber 1
+ bAlternateSetting 0
+ bNumEndpoints 1
+ bInterfaceClass 3 Human Interface Device
+ bInterfaceSubClass 1 Boot Interface Subclass
+ bInterfaceProtocol 2 Mouse
+ iInterface 0
+ HID Device Descriptor:
+ bLength 9
+ bDescriptorType 33
+ bcdHID 1.11
+ bCountryCode 0 Not supported
+ bNumDescriptors 1
+ bDescriptorType 34 Report
+ wDescriptorLength 177
+ Report Descriptors:
+ ** UNAVAILABLE **
+ Endpoint Descriptor:
+ bLength 7
+ bDescriptorType 5
+ bEndpointAddress 0x82 EP 2 IN
+ bmAttributes 3
+ Transfer Type Interrupt
+ Synch Type None
+ Usage Type Data
+ wMaxPacketSize 0x0014 1x 20 bytes
+ bInterval 2
+ Device Status: 0x0000
+ (Bus Powered)
+
+
+Logic analyzer setup
+--------------------
+
+The logic analyzer used was an ARMFLY Mini-Logic (at 24MHz):
+
+ Probe MK220
+ -----------------
+ 0 DM
+ 1 DP
+
+
+mk220.sr
+--------
+
+The sigrok command line used was:
+
+ sigrok-cli -d 0:samplerate=24mhz --time 1s -o mk220.sr --probes 1,2
+
+(the mouse was moved while running this command)
+
--- /dev/null
+-------------------------------------------------------------------------------
+USB HID (low-speed signalling)
+-------------------------------------------------------------------------------
+
+This is a set of example captures of USB/HID communication on the
+keyboard/mouse combo device Riitek RT-MWK01.
+
+Details:
+http://www.riitek.com/product_Info.asp?id=56
+
+
+HID dump
+--------
+
+For a HOWTO, see:
+http://lists.en.qi-hardware.com/pipermail/discussion/2011-November/009206.html
+
+ Usage Page (Desktop), ; Generic desktop controls (01h)
+ Usage (Mouse), ; Mouse (02h, application collection)
+ Collection (Application),
+ Usage (Pointer), ; Pointer (01h, physical collection)
+ Collection (Physical),
+ Report ID (1),
+ Report Count (3),
+ Report Size (1),
+ Usage Page (Button), ; Button (09h)
+ Usage Minimum (01h),
+ Usage Maximum (03h),
+ Logical Minimum (0),
+ Logical Maximum (1),
+ Input (Variable),
+ Report Count (1),
+ Report Size (5),
+ Input (Constant),
+ Report Size (8),
+ Report Count (2),
+ Usage Page (Desktop), ; Generic desktop controls (01h)
+ Usage (X), ; X (30h, dynamic value)
+ Usage (Y), ; Y (31h, dynamic value)
+ Logical Minimum (-127),
+ Logical Maximum (127),
+ Input (Variable, Relative),
+ End Collection,
+ Collection (Physical),
+ Report Count (1),
+ Report Size (8),
+ Usage Page (Desktop), ; Generic desktop controls (01h)
+ Usage (Wheel), ; Wheel (38h, dynamic value)
+ Logical Minimum (-127),
+ Logical Maximum (127),
+ Input (Variable, Relative),
+ End Collection,
+ End Collection,
+ Usage Page (Consumer), ; Consumer (0Ch)
+ Usage (Consumer Control), ; Consumer control (01h, application collection)
+ Collection (Application),
+ Report ID (2),
+ Usage Minimum (00h),
+ Usage Maximum (AC Format), ; AC format (023Ch, selector)
+ Logical Minimum (0),
+ Logical Maximum (572),
+ Report Count (1),
+ Report Size (16),
+ Input,
+ End Collection,
+ Usage Page (Desktop), ; Generic desktop controls (01h)
+ Usage (Keyboard), ; Keyboard (06h, application collection)
+ Collection (Application),
+ Usage Page (Keyboard), ; Keyboard/keypad (07h)
+ Usage Minimum (KB Leftcontrol), ; Keyboard left control (E0h, dynamic value)
+ Usage Maximum (KB Right GUI), ; Keyboard right GUI (E7h, dynamic value)
+ Logical Minimum (0),
+ Logical Maximum (1),
+ Report Size (1),
+ Report Count (8),
+ Input (Variable),
+ Report Count (1),
+ Report Size (8),
+ Input (Constant),
+ Report Count (5),
+ Report Size (1),
+ Usage Page (LED), ; LEDs (08h)
+ Usage Minimum (01h),
+ Usage Maximum (05h),
+ Output (Variable),
+ Report Count (1),
+ Report Size (3),
+ Output (Constant),
+ Report Count (6),
+ Report Size (8),
+ Logical Minimum (0),
+ Logical Maximum (-107),
+ Usage Page (Keyboard), ; Keyboard/keypad (07h)
+ Usage Minimum (None), ; No event (00h, selector)
+ Usage Maximum (KB LANG6), ; Keyboard LANG6 (95h, selector)
+ Input,
+ End Collection
+
+
+lsusb -v -d 1997:0409
+---------------------
+
+ Bus 002 Device 093: ID 1997:0409
+ Device Descriptor:
+ bLength 18
+ bDescriptorType 1
+ bcdUSB 2.00
+ bDeviceClass 0 (Defined at Interface level)
+ bDeviceSubClass 0
+ bDeviceProtocol 0
+ bMaxPacketSize0 8
+ idVendor 0x1997
+ idProduct 0x0409
+ bcdDevice 2.00
+ iManufacturer 1 Riitek
+ iProduct 2 Micro Keyboard
+ iSerial 0
+ bNumConfigurations 1
+ Configuration Descriptor:
+ bLength 9
+ bDescriptorType 2
+ wTotalLength 59
+ bNumInterfaces 2
+ bConfigurationValue 1
+ iConfiguration 0
+ bmAttributes 0xa0
+ (Bus Powered)
+ Remote Wakeup
+ MaxPower 100mA
+ 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.11
+ bCountryCode 0 Not supported
+ bNumDescriptors 1
+ bDescriptorType 34 Report
+ wDescriptorLength 63
+ Report Descriptors:
+ ** UNAVAILABLE **
+ 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 10
+ Interface Descriptor:
+ bLength 9
+ bDescriptorType 4
+ bInterfaceNumber 1
+ bAlternateSetting 0
+ bNumEndpoints 1
+ bInterfaceClass 3 Human Interface Device
+ bInterfaceSubClass 1 Boot Interface Subclass
+ bInterfaceProtocol 2 Mouse
+ iInterface 0
+ HID Device Descriptor:
+ bLength 9
+ bDescriptorType 33
+ bcdHID 1.11
+ bCountryCode 0 Not supported
+ bNumDescriptors 1
+ bDescriptorType 34 Report
+ wDescriptorLength 94
+ Report Descriptors:
+ ** UNAVAILABLE **
+ Endpoint Descriptor:
+ bLength 7
+ bDescriptorType 5
+ bEndpointAddress 0x82 EP 2 IN
+ bmAttributes 3
+ Transfer Type Interrupt
+ Synch Type None
+ Usage Type Data
+ wMaxPacketSize 0x0008 1x 8 bytes
+ bInterval 10
+ Device Status: 0x0000
+ (Bus Powered)
+
+
+Logic analyzer setup
+--------------------
+
+The logic analyzer used was an ARMFLY Mini-Logic (at 24MHz):
+
+ Probe RT-MWK01
+ --------------------
+ 0 DM
+ 1 DP
+
+
+rt-mwk01.sr
+-----------
+
+The sigrok command line used was:
+
+ sigrok-cli -d 0:samplerate=24mhz --time 1s -o rt-mwk01.sr --probes 1,2
+
+++ /dev/null
--------------------------------------------------------------------------------
-Lisa/M USB HID example (USB Full-Speed and SPI)
--------------------------------------------------------------------------------
-
-This capture is taken from the libopencm3 example for a USB HID device on the
-Paparazzi Lisa/M board. In this applicaton an SPI accellerometer is read and
-the values are transmitted on a USB IN endpoint as mouse movement.
-
-Details:
-http://libopencm3.org
-http://libopencm3.git.sourceforge.net/git/gitweb.cgi?p=libopencm3/libopencm3;a=tree;f=examples/stm32/f1/lisa-m/usb_hid
-http://paparazzi.enac.fr/wiki/User/LisaM
-
-
-Logic analyser setup
---------------------
-
-The logic analyzer used was an Openbench Logic Sniffer (at 50MHz):
-
- Probe Signal
- ---------------
- 0 USB_DM
- 1 USB_DP
- 2 SPI_NCS
- 3 SPI_SCK
- 4 SPI_MOSI
- 5 SPI_MISO
-
-The sigrok command line used was:
-
- sigrok-cli -d 0:samplerate=50mhz:rle=on \
- -p 1=USB_DM,2=USB_DP,3=SPI_NCS,4=SPI_SCK,5=SPI_MOSI,6=SPI_MISO \
- --time=50ms -o lisa_m_usb_spi.sr
-
-The OLS can't actually capture 50ms, so it just captures as much as it can
-buffer. No triggering was used.
-
+++ /dev/null
--------------------------------------------------------------------------------
-USB HID (full-speed signalling)
--------------------------------------------------------------------------------
-
-This is a set of example captures of USB/HID communication on the
-keyboard/mouse combo device Logitech MK220 (the keyboard is named "K220",
-the mouse is named "M150").
-
-Details:
-http://www.logitech.com/en-za/keyboards/keyboard-mice-combos/8411
-
-
-HID dump
---------
-
-For a HOWTO, see:
-http://lists.en.qi-hardware.com/pipermail/discussion/2011-November/009206.html
-
- Usage Page (Desktop), ; Generic desktop controls (01h)
- Usage (Mouse), ; Mouse (02h, application collection)
- Collection (Application),
- Report ID (2),
- Usage (Pointer), ; Pointer (01h, physical collection)
- Collection (Physical),
- Usage Page (Button), ; Button (09h)
- Usage Minimum (01h),
- Usage Maximum (10h),
- Logical Minimum (0),
- Logical Maximum (1),
- Report Count (16),
- Report Size (1),
- Input (Variable),
- Usage Page (Desktop), ; Generic desktop controls (01h)
- Logical Minimum (-2047),
- Logical Maximum (2047),
- Report Size (12),
- Report Count (2),
- Usage (X), ; X (30h, dynamic value)
- Usage (Y), ; Y (31h, dynamic value)
- Input (Variable, Relative),
- Logical Minimum (-127),
- Logical Maximum (127),
- Report Size (8),
- Report Count (1),
- Usage (Wheel), ; Wheel (38h, dynamic value)
- Input (Variable, Relative),
- Usage Page (Consumer), ; Consumer (0Ch)
- Usage (AC Pan), ; AC pan (0238h, linear control)
- Report Count (1),
- Input (Variable, Relative),
- End Collection,
- End Collection,
- Usage Page (Consumer), ; Consumer (0Ch)
- Usage (Consumer Control), ; Consumer control (01h, application collection)
- Collection (Application),
- Report ID (3),
- Report Size (16),
- Report Count (2),
- Logical Minimum (1),
- Logical Maximum (652),
- Usage Minimum (Consumer Control), ; Consumer control (01h, application collection)
- Usage Maximum (AC Send), ; AC send (028Ch, selector)
- Input,
- End Collection,
- Usage Page (Desktop), ; Generic desktop controls (01h)
- Usage (Sys Control), ; System control (80h, application collection)
- Collection (Application),
- Report ID (4),
- Report Size (2),
- Report Count (1),
- Logical Minimum (1),
- Logical Maximum (3),
- Usage (Sys Sleep), ; System sleep (82h, one-shot control)
- Usage (Sys Power Down), ; System power down (81h, one-shot control)
- Usage (Sys Wake Up), ; System wake up (83h, one-shot control)
- Input (No Preferred, Null State),
- Report Size (6),
- Input (Constant, Variable),
- End Collection,
- Usage Page (FF00h), ; FF00h, vendor-defined
- Usage (01h),
- Collection (Application),
- Report ID (16),
- Report Size (8),
- Report Count (6),
- Logical Minimum (0),
- Logical Maximum (255),
- Usage (01h),
- Input,
- Usage (01h),
- Output,
- End Collection,
- Usage Page (FF00h), ; FF00h, vendor-defined
- Usage (02h),
- Collection (Application),
- Report ID (17),
- Report Size (8),
- Report Count (19),
- Logical Minimum (0),
- Logical Maximum (255),
- Usage (02h),
- Input,
- Usage (02h),
- Output,
- End Collection,
- Usage Page (Desktop), ; Generic desktop controls (01h)
- Usage (Keyboard), ; Keyboard (06h, application collection)
- Collection (Application),
- Usage Page (Keyboard), ; Keyboard/keypad (07h)
- Usage Minimum (KB Leftcontrol), ; Keyboard left control (E0h, dynamic value)
- Usage Maximum (KB Right GUI), ; Keyboard right GUI (E7h, dynamic value)
- Logical Minimum (0),
- Logical Maximum (1),
- Report Size (1),
- Report Count (8),
- Input (Variable),
- Input (Constant, Variable),
- Report Count (5),
- Usage Page (LED), ; LEDs (08h)
- Usage Minimum (01h),
- Usage Maximum (05h),
- Output (Variable),
- Report Count (1),
- Report Size (3),
- Output (Constant),
- Report Count (6),
- Report Size (8),
- Logical Minimum (0),
- Logical Maximum (164),
- Usage Page (Keyboard), ; Keyboard/keypad (07h)
- Usage Minimum (None), ; No event (00h, selector)
- Usage Maximum (KB ExSel), ; Keyboard ExSel (A4h, selector)
- Input,
- End Collection
-
-
-lsusb -v -d 046d:c52e
----------------------
-
- Bus 002 Device 019: ID 046d:c52e Logitech, Inc.
- Device Descriptor:
- bLength 18
- bDescriptorType 1
- bcdUSB 2.00
- bDeviceClass 0 (Defined at Interface level)
- bDeviceSubClass 0
- bDeviceProtocol 0
- bMaxPacketSize0 8
- idVendor 0x046d Logitech, Inc.
- idProduct 0xc52e
- bcdDevice 23.00
- iManufacturer 1 Logitech
- iProduct 2 USB Receiver
- iSerial 0
- bNumConfigurations 1
- Configuration Descriptor:
- bLength 9
- bDescriptorType 2
- wTotalLength 59
- bNumInterfaces 2
- bConfigurationValue 1
- iConfiguration 4 RQR23.00_B0005
- bmAttributes 0xa0
- (Bus Powered)
- Remote Wakeup
- MaxPower 98mA
- 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.11
- bCountryCode 0 Not supported
- bNumDescriptors 1
- bDescriptorType 34 Report
- wDescriptorLength 59
- Report Descriptors:
- ** UNAVAILABLE **
- 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 8
- Interface Descriptor:
- bLength 9
- bDescriptorType 4
- bInterfaceNumber 1
- bAlternateSetting 0
- bNumEndpoints 1
- bInterfaceClass 3 Human Interface Device
- bInterfaceSubClass 1 Boot Interface Subclass
- bInterfaceProtocol 2 Mouse
- iInterface 0
- HID Device Descriptor:
- bLength 9
- bDescriptorType 33
- bcdHID 1.11
- bCountryCode 0 Not supported
- bNumDescriptors 1
- bDescriptorType 34 Report
- wDescriptorLength 177
- Report Descriptors:
- ** UNAVAILABLE **
- Endpoint Descriptor:
- bLength 7
- bDescriptorType 5
- bEndpointAddress 0x82 EP 2 IN
- bmAttributes 3
- Transfer Type Interrupt
- Synch Type None
- Usage Type Data
- wMaxPacketSize 0x0014 1x 20 bytes
- bInterval 2
- Device Status: 0x0000
- (Bus Powered)
-
-
-Logic analyzer setup
---------------------
-
-The logic analyzer used was an ARMFLY Mini-Logic (at 24MHz):
-
- Probe MK220
- -----------------
- 0 DM
- 1 DP
-
-
-mk220.sr
---------
-
-The sigrok command line used was:
-
- sigrok-cli -d 0:samplerate=24mhz --time 1s -o mk220.sr --probes 1,2
-
-(the mouse was moved while running this command)
-
--- /dev/null
+-------------------------------------------------------------------------------
+Lisa/M USB HID example (USB Full-Speed and SPI)
+-------------------------------------------------------------------------------
+
+This capture is taken from the libopencm3 example for a USB HID device on the
+Paparazzi Lisa/M board. In this applicaton an SPI accellerometer is read and
+the values are transmitted on a USB IN endpoint as mouse movement.
+
+Details:
+http://libopencm3.org
+http://libopencm3.git.sourceforge.net/git/gitweb.cgi?p=libopencm3/libopencm3;a=tree;f=examples/stm32/f1/lisa-m/usb_hid
+http://paparazzi.enac.fr/wiki/User/LisaM
+
+
+Logic analyser setup
+--------------------
+
+The logic analyzer used was an Openbench Logic Sniffer (at 50MHz):
+
+ Probe Signal
+ ---------------
+ 0 USB_DM
+ 1 USB_DP
+ 2 SPI_NCS
+ 3 SPI_SCK
+ 4 SPI_MOSI
+ 5 SPI_MISO
+
+The sigrok command line used was:
+
+ sigrok-cli -d 0:samplerate=50mhz:rle=on \
+ -p 1=USB_DM,2=USB_DP,3=SPI_NCS,4=SPI_SCK,5=SPI_MOSI,6=SPI_MISO \
+ --time=50ms -o lisa_m_usb_spi.sr
+
+The OLS can't actually capture 50ms, so it just captures as much as it can
+buffer. No triggering was used.
+
--- /dev/null
+-------------------------------------------------------------------------------
+USB HID (full-speed signalling)
+-------------------------------------------------------------------------------
+
+This is a set of example captures of USB/HID communication on an Olimex
+STM32-H103 eval board with an ST STM32 (ARM Cortex-M3) microcontroller.
+
+The firmware on the board is a simple libopencm3 example named 'usb_hid'
+which lets the mouse curser move a small amount to the left and then back
+to the right in an infinite loop.
+
+Details:
+http://olimex.com/dev/stm32-h103.html
+http://libopencm3.org
+http://libopencm3.git.sourceforge.net/git/gitweb.cgi?p=libopencm3/libopencm3;a=tree;f=examples/stm32/f1/stm32-h103/usb_hid
+
+
+Logic analyzer setup
+--------------------
+
+The logic analyzer used was a ChronoVu LA8 (at 100MHz):
+
+ Probe STM32-H103
+ ----------------------
+ 6 (blue) DM
+ 7 (yellow) DP
+
+
+olimex_stm32-h103_usb_hid.sr
+----------------------------
+
+The sigrok command line used was:
+
+ sigrok-cli -d 0:samplerate=100mhz --samples 8388608 \
+ -p '7=DM,8=DP' -o <filename>
+
+++ /dev/null
--------------------------------------------------------------------------------
-USB HID (full-speed signalling)
--------------------------------------------------------------------------------
-
-This is a set of example captures of USB/HID communication on an Olimex
-STM32-H103 eval board with an ST STM32 (ARM Cortex-M3) microcontroller.
-
-The firmware on the board is a simple libopencm3 example named 'usb_hid'
-which lets the mouse curser move a small amount to the left and then back
-to the right in an infinite loop.
-
-Details:
-http://olimex.com/dev/stm32-h103.html
-http://libopencm3.org
-http://libopencm3.git.sourceforge.net/git/gitweb.cgi?p=libopencm3/libopencm3;a=tree;f=examples/stm32/f1/stm32-h103/usb_hid
-
-
-Logic analyzer setup
---------------------
-
-The logic analyzer used was a ChronoVu LA8 (at 100MHz):
-
- Probe STM32-H103
- ----------------------
- 6 (blue) DM
- 7 (yellow) DP
-
-
-olimex_stm32-h103_usb_hid.sr
-----------------------------
-
-The sigrok command line used was:
-
- sigrok-cli -d 0:samplerate=100mhz --samples 8388608 \
- -p '7=DM,8=DP' -o <filename>
-
+++ /dev/null
--------------------------------------------------------------------------------
-USB HID (low-speed signalling)
--------------------------------------------------------------------------------
-
-This is a set of example captures of USB/HID communication on the
-keyboard/mouse combo device Riitek RT-MWK01.
-
-Details:
-http://www.riitek.com/product_Info.asp?id=56
-
-
-HID dump
---------
-
-For a HOWTO, see:
-http://lists.en.qi-hardware.com/pipermail/discussion/2011-November/009206.html
-
- Usage Page (Desktop), ; Generic desktop controls (01h)
- Usage (Mouse), ; Mouse (02h, application collection)
- Collection (Application),
- Usage (Pointer), ; Pointer (01h, physical collection)
- Collection (Physical),
- Report ID (1),
- Report Count (3),
- Report Size (1),
- Usage Page (Button), ; Button (09h)
- Usage Minimum (01h),
- Usage Maximum (03h),
- Logical Minimum (0),
- Logical Maximum (1),
- Input (Variable),
- Report Count (1),
- Report Size (5),
- Input (Constant),
- Report Size (8),
- Report Count (2),
- Usage Page (Desktop), ; Generic desktop controls (01h)
- Usage (X), ; X (30h, dynamic value)
- Usage (Y), ; Y (31h, dynamic value)
- Logical Minimum (-127),
- Logical Maximum (127),
- Input (Variable, Relative),
- End Collection,
- Collection (Physical),
- Report Count (1),
- Report Size (8),
- Usage Page (Desktop), ; Generic desktop controls (01h)
- Usage (Wheel), ; Wheel (38h, dynamic value)
- Logical Minimum (-127),
- Logical Maximum (127),
- Input (Variable, Relative),
- End Collection,
- End Collection,
- Usage Page (Consumer), ; Consumer (0Ch)
- Usage (Consumer Control), ; Consumer control (01h, application collection)
- Collection (Application),
- Report ID (2),
- Usage Minimum (00h),
- Usage Maximum (AC Format), ; AC format (023Ch, selector)
- Logical Minimum (0),
- Logical Maximum (572),
- Report Count (1),
- Report Size (16),
- Input,
- End Collection,
- Usage Page (Desktop), ; Generic desktop controls (01h)
- Usage (Keyboard), ; Keyboard (06h, application collection)
- Collection (Application),
- Usage Page (Keyboard), ; Keyboard/keypad (07h)
- Usage Minimum (KB Leftcontrol), ; Keyboard left control (E0h, dynamic value)
- Usage Maximum (KB Right GUI), ; Keyboard right GUI (E7h, dynamic value)
- Logical Minimum (0),
- Logical Maximum (1),
- Report Size (1),
- Report Count (8),
- Input (Variable),
- Report Count (1),
- Report Size (8),
- Input (Constant),
- Report Count (5),
- Report Size (1),
- Usage Page (LED), ; LEDs (08h)
- Usage Minimum (01h),
- Usage Maximum (05h),
- Output (Variable),
- Report Count (1),
- Report Size (3),
- Output (Constant),
- Report Count (6),
- Report Size (8),
- Logical Minimum (0),
- Logical Maximum (-107),
- Usage Page (Keyboard), ; Keyboard/keypad (07h)
- Usage Minimum (None), ; No event (00h, selector)
- Usage Maximum (KB LANG6), ; Keyboard LANG6 (95h, selector)
- Input,
- End Collection
-
-
-lsusb -v -d 1997:0409
----------------------
-
- Bus 002 Device 093: ID 1997:0409
- Device Descriptor:
- bLength 18
- bDescriptorType 1
- bcdUSB 2.00
- bDeviceClass 0 (Defined at Interface level)
- bDeviceSubClass 0
- bDeviceProtocol 0
- bMaxPacketSize0 8
- idVendor 0x1997
- idProduct 0x0409
- bcdDevice 2.00
- iManufacturer 1 Riitek
- iProduct 2 Micro Keyboard
- iSerial 0
- bNumConfigurations 1
- Configuration Descriptor:
- bLength 9
- bDescriptorType 2
- wTotalLength 59
- bNumInterfaces 2
- bConfigurationValue 1
- iConfiguration 0
- bmAttributes 0xa0
- (Bus Powered)
- Remote Wakeup
- MaxPower 100mA
- 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.11
- bCountryCode 0 Not supported
- bNumDescriptors 1
- bDescriptorType 34 Report
- wDescriptorLength 63
- Report Descriptors:
- ** UNAVAILABLE **
- 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 10
- Interface Descriptor:
- bLength 9
- bDescriptorType 4
- bInterfaceNumber 1
- bAlternateSetting 0
- bNumEndpoints 1
- bInterfaceClass 3 Human Interface Device
- bInterfaceSubClass 1 Boot Interface Subclass
- bInterfaceProtocol 2 Mouse
- iInterface 0
- HID Device Descriptor:
- bLength 9
- bDescriptorType 33
- bcdHID 1.11
- bCountryCode 0 Not supported
- bNumDescriptors 1
- bDescriptorType 34 Report
- wDescriptorLength 94
- Report Descriptors:
- ** UNAVAILABLE **
- Endpoint Descriptor:
- bLength 7
- bDescriptorType 5
- bEndpointAddress 0x82 EP 2 IN
- bmAttributes 3
- Transfer Type Interrupt
- Synch Type None
- Usage Type Data
- wMaxPacketSize 0x0008 1x 8 bytes
- bInterval 10
- Device Status: 0x0000
- (Bus Powered)
-
-
-Logic analyzer setup
---------------------
-
-The logic analyzer used was an ARMFLY Mini-Logic (at 24MHz):
-
- Probe RT-MWK01
- --------------------
- 0 DM
- 1 DP
-
-
-rt-mwk01.sr
------------
-
-The sigrok command line used was:
-
- sigrok-cli -d 0:samplerate=24mhz --time 1s -o rt-mwk01.sr --probes 1,2
-