
HID Monitor
Capture Low-Level HID CommunicationsOS: Windows, Linux
HID (Human Interface Devices) encompass a broad range of devices, such as mice and keyboards that facilitate interaction between humans and machines. HID Monitor simplifies USB-based HID development by capturing and inspecting all HID reports exchanged between HID devices and a workstation.
HID Monitor uses the "HID report descriptor", a binary descriptor that every HID has, which defines the structure and meaning of data exchanged between an HID device and the host. The plugin uses this report descriptor to translate all reports sent by the HID device into easily-readable (to the human eye) logs in IO Ninja.
Why HID Monitor?
Capturing HID-over-USB Traffic
The HID Monitor plugin is designed to capture and analyze HID-over-USB traffic with precision. Utilizing the same capturing facilities as the USB Monitor, it allows developers to intercept and inspect HID communication with the click of a button.
Input, Output, and Feature Reports
One of the key features of the HID Monitor is its ability to parse and interpret HID reports. Each HID device provides a report descriptor that defines how data is structured. HID Monitor decodes these reports, presenting not just raw byte streams but also human-readable representations of their contents.
Detailed Information for All Available Devices
HID Monitor provides detailed information on all available HID devices. By hovering over an option on the dropdown menu, you can see important information about the device. In addition, when you begin a new capture, device info is printed at the start of the log, along with the report descriptor mentioned above.
Powerful & Beautiful Logging Engine
The Ninja Scroll logging engine is the heart of IO Ninja! It offers many unique and useful features you won't find in other HID monitors, such as interleaving binary data with informational messages for a clear timeline of events, switching between hex-view and plain-text view of binary data, a regex markup engine for highlighting data based on regular expressions, and many others!
Enabling USB Monitoring
On Windows, HID Monitor requires the USBPcap capture driver. USBPcap is bundled with the full IO Ninja .msi
installers, so if you installed IO Ninja this way, you are set. However, if you installed IO Ninja from a core .msi
installer or a portable .7z
package, you must install USBPcap from its official website manually.
On Linux, HID Monitor depends on usbmon, therefore you need to manually enable it to use the plugin.
Getting Started
Documentation
Resource |
---|
HID Monitor Documentation in the IO Ninja User Manual |
Installation of USBPcap on Windows |
Installation of usbmon on Linux |
See Also
Plugin | Relevance |
---|---|
![]() | Allows low-level interactions with HID devices. |
![]() | Allows low-level interactions with endpoints on any USB device. |
![]() | Allows capturing low-level communications on any USB device. |