HID Monitor

HID Monitor

Requires: org.jancy.io.usb
OS: Windows, Linux

HID stands for Human Interface Device. This is an important class of devices that, as the name suggests, are used to facilitate interaction between humans and machines. The most well-known examples of such devices include keyboards, mices, and game controllers. Many other devices (card readers, LEDs, telephony devices, etc) also fall into the HID device class.

The HID Monitor plugin lets you capture and inspect all HID reports sent to and from HID devices (Human Interface Devices) connected to your workstation via an USB cable or dongle. This could be extremely helpful for the developers of HID devices — keyboards, mices, joysticks, etc.

HID devices can work over interfaces other the USB — notably, SPI, I²C, Bluetooth, and BLE. Currently, the HID Monitor only allows capturing and decoding the HID-over-USB traffic.

The HID Monitor uses the same capturing facilities as the USB Monitor. Please refer to the installation instructions on the linked page to enable USB capturing on your workstation (via USBPcap on Windows and usbmon on Linux).

Input, Output, and Feature Reports

Taking advantage of the HID device's ability to describe itself with a so-called HID report descriptor, IO Ninja automatically parses all the reports travelling between a device and your workstation. As such, you will see not only the raw bytes of each report, but also the decoded human-readable representation of all the values contained in it.