USB Devices Monitoring

The USB Monitor automatically detects all connected USB devices and displays them, grouping by device class. For each device, device's friendly name, description, location information and manufacturer's name are displayed. The list is automatically updated every time you plug or unplug a USB device.

The special "Next connected device" item allows you to monitor the next device you plug into your computer.

Obtaining Additional Information

Click on the device in a list to get its device descriptor, configuration descriptor, HID Report descriptor for HID-compatible devices and the list of dependent devices, the operating system may configure for the USB device.

Controlling USB Devices

You can restart the selected USB device or view its properties. These and other options are easily accessed through the popup menu or tool windows.

Edition availability: Standard, Professional, Ultimate

URB View: Displaying Monitored USB Request Blocks

The URB View visualizer displays each monitored USB Request Block (URB). It decodes the packet's internal fields, and works in two modes - Basic and Complete. In Basic mode only the main packet fields are decoded and displayed, while some other are available as popup hints. In Complete mode the entire packet is decoded and all accompanying data is provided in Hex/ASCII view. You can switch between two modes at any time and, moreover, you can switch the mode for individual packets.

The contents of the visualizer can be copied into the Clipboard or exported into the file in various formats. Use the mouse to select the portion to copy/export or leave the selection empty to copy the entire visualizer contents.

Use the powerful Find and Go to Packet commands to locate the information you need.

With outstanding performance at the first place, the URB View visualizer is your best tool to analyze monitored data.

Edition availability: Standard, Professional, Ultimate

Packet View: Displaying Monitored Packets in a Table

The Packet View visualizer provides the combination of brief packet information for each monitored packet and in-depth analyzis for an individually selected packet. It is structurally divided into two panes.

The upper part displays brief information for each monitored packet in several columns in a table. Use the mouse to change the columns' size and position as well as to change the relative size of the upper and lower panes.

To locate the specific packet use either the Go to Packet or Find commands. Use the Copy and Export commands to copy/export all or some of the monitored packets in the same way you see them on the screen.

The lower pane lists all other supported and installed visualizers which are used to display the individual packet information. Once you select the packet in the upper pane, all its internal fields get decoded in the visualizers in the lower pane. Select a bulk transfer packet to see its characteristics in the URB View and mass storage command decoded in the Mass Storage View!

Edition availability: Standard, Professional, Ultimate

Session Recording (USB Devices Data Logging)

All Device Monitoring Studio visualizers work in real time - you monitor the device and see the packets in visualizers. If you need to record a session and analyze it later, use the session recording!

Use the Sessions Tool Window and Tools menu to start, stop or pause recording.

If you forgot to start recording, use the Save to Log command to save monitored data to a log.

Edition availability: Standard, Professional, Ultimate

General Filtering Feature

Device Monitoring Studio offers a generic filtering feature, which allows you to configure filtering for different visualizers and create filtering schemes and quickly apply them to different visualizer windows.

Edition availability: Standard, Professional, Ultimate

USB Endpoints Filtering Feature

Device Monitoring Studio offers an endpoints filtering feature, which allows you to select endpoints to be filtered using context menu in URB View visualizer.

Combined with an ability to have as much URB View visualizers as you need, you may open one data visualizer for each endpoint.

Edition availability: Standard, Professional, Ultimate

Custom Color Schemes for Monitored Packets

Device Monitoring Studio allows you to change the appearance of visual elements for monitored packets in the following data visualizers:

Monitored Packets Coloring in the Following Data Visualizers

URB View

Mass Storage View

HID View

Still Image/MTP View

Audio View

Video View

Communications View

Edition availability: Standard, Professional, Ultimate

Log File Playback (Playing Back Recorded USB Devices Data)

The Playback tool window lists all recorded log files, grouping them either by device name or by recording date. For each log file various information is displayed, including the log file size and the list of streams. To playback the log file, select the stream, configure the visualizers, select the time range and playback speed and start the monitoring session.

You can change the speed of playback at any time later as well.

Device Monitoring Studio provides you with a way to manage the recorded logs via the commands in the menu and popup menu.

You can configure this visualizer in an outstanding number of ways: you can scroll horizontally to view any portion of data, change the horizontal scale, change the vertical scale or use the auto fit option to automatically fit all data on the screen. You can even change the scale for each variable individually!

You can switch the graphic from polyline to curves with gradient fill to make the visual appearance more comfortable. Use the Copy or Export commands to copy the bitmap or export it to the file in various formats, including PNG and JPEG.

This visualizer also displays variable statistics in the table, which is visible below the plot data. It displays the maximum, average, total and last values for each variable.

Click anywhere on the plot to place a measuring line, which will scan the monitored data, displaying the momentary values for you.

Edition availability: Standard, Professional, Ultimate

HID View: Parsing of Human Interface Device (HID) Packets

Device Monitoring Studio Professional Edition contains the special visualizer for USB HID class devices. In addition, the special HID Descriptor tool window displays the HID Report descriptor(s) for any selected HID device.

The HID View visualizer parses and displays the contents of the HID report descriptors and HID-specific requests. This visualzer works in two switchable modes: HID View and Report View.

In Report View, the most detailed information for each monitored packet is displayed. For each variable the bounded string, usage information from the usage table, logical and physical boundary values as well as the variable value and measurement unit are displayed.

Monitoring of HID class devices has never been so easy!

Edition availability: Professional, Ultimate

Mass Storage View: Parsing of USB Mass Storage Packets

This powerful visualizer is an invaluable tool for everyone working with devices conforming to USB Mass Storage Bulk-Only device class and subclass. Specific commands from USB Mass Storage CBI are also supported.

There are two modes of operation for this visualizer: Mass Storage Level and Command Level. When in first mode, it parses Mass Storage-specific structures, and in the second one it parses commands exchanged between the host and device.

The following command sets are supported:

SCSI Primary Command Set 2 (SPC2)

SCSI Multimedia Command Set 2 (MMC2)

SCSI Reduced Block Command Set (RBC)

Find and Goto commands can be used to locate the specific packet and Copy and Export commands can be used to export the contents of the visualizer to the Clipboard or a disk file.

Edition availability: Professional, Ultimate

Still Image View: Parsing of USB Still Image and MTP Packets

The Still Image View visualizer is a digital camera developer's best friend. It parses and displays the commands and data exchanged between device and host over USB Still Image and MTP protocols.

The complete PIMA 15740 command set is supported.

Use the powerful Find and Goto commands to locate the specific packet and Copy and Export commands to export the contents of the visualizer to the Clipboard or a disk file.

Edition availability: Professional, Ultimate

Audio View: Parsing of USB Audio Packets

USB Audio visualizer parses packets and configuration descriptors for USB Audio (version 1.0) compliant device. The following subclasses are supported - Audio Control (AC) and Audio Streaming (AS). The first one is used to control and change the state of device. The second one is generally used for data transmitting. Audio class descriptors are displayed in Configuration Descriptor pane.

The following control pipe requests are parsed for the audio class device:

SET_CUR (0x01)

GET_CUR (0x81)

SET_MIN (0x02)

GET_MIN (0x82)

SET_MAX (0x03)

GET_MAX (0x83)

SET_RES (0x04)

GET_RES (0x84)

SET_MEM (0x05)

GET_MEM (0x85)

GET_STAT (0xFF)

You can configure the filtering for USB Audio packets using the Generic Filtering feature in Tools|Settings, Filtering Tab page. This page also allows you to specify terminals and feature units to be displayed in visualizer.

Edition availability: Professional, Ultimate

Video View: Parsing of USB Video Packets

USB Video visualizer parses packets and configuration descriptors for USB Video (version 1.1) compliant device. The following subclasses are supported - Video Control (VC) and Video Streaming (VS). The first one is used to control and change the state of device. The second one is generally used for data transmitting. Video class descriptors are displayed in Configuration Descriptor pane.

You can configure the filtering for USB Video packets using the Generic Filtering feature in Tools|Settings, Filtering Tab page. This page also allows you to specify terminals and feature units to be displayed in visualizer.

Communications View: Parsing of USB Communications Packets

The Communication Device Class is a device level definition and is used by the host to properly identify a communication device that may present several different types of interfaces.

Use the powerful Find and Goto commands to locate the specific packet and Copy and Export commands to export the contents of the visualizer to the Clipboard or a disk file.

Generic Filtering feature can be used to set up different filters that can be applied to any USB Communications visualizer window.

Edition availability: Professional, Ultimate

Raw Data View: Displaying Raw Packet Data

The visualizer has two windows, one of which displays data sent to the USB device, and another one displays data received from the USB device. All subsequent packets are concatenated into a single data stream, which is displayed as sequence of hexadecimal, decimal, octal or binary numbers. Alternatively, the stream may be displayed as a sequence of floating-point numbers with single or double precision.

The data visualizer is very flexible and allows you to customize both its layout and appearance. It also supports configuring protocol-based filtering and allows changing of the root protocol.

Edition availability: Ultimate

Structure View: Parsing and Displaying Captured USB Packet Data

Structure View data visualizer is a two-part window. First part displays each monitored packet parsed according to installed set of protocols. Second part displays raw packet contents. Cursor navigation may be synchronized between two parts.

Each packet is matched against one or more of loaded protocol definition files and if matched successfully, all protocol fields are shown in the top part of the Structure View visualizer. For each field, its name, value, starting address and size are displayed. If field consists of other fields, you may expand it by pressing the little plus icon or pushing the Right button on the keyboard.

Capture Filter

A filter is a single condition which follows the synax of Protocol Definition expressions. It can refer to any field in captured packet and use any supported logical or arithmetic operator.

You can set the capture filter when you start new or configure running monitoring session. You can either select one of the predefined filters or create your own.

Edition availability: Professional, Ultimate

Custom Protocols

USB Monitor comes with a lot of pre-installed protocols. This feature also allows the customer to add the definition of the custom protocol to USB Monitor. After this, the application will start parsing and decoding all matching packets according to custom protocol definition.

Edition availability: Ultimate

Raw Data Exporter

Exports monitored data to the file in raw format. This exporter parses incoming data according to the loaded set of protocols, applies optional protocol-based filtering and root protocol and writes the resulting binary data into the output file. It produces the result identical to the lower part of the Structure View data visualizer, but does not display any UI, writing raw data directly to the file.

Edition availability: Professional, Ultimate

Text Exporter

Exports monitored data to the file in text format. This exporter parses incoming data according to the loaded set of protocols, applies optional protocol-based filtering and root protocol and writes the resulting data into the output file. It formats its textual output exactly like the upper part of the Structure View data visualizer, but does not display any UI, writing formatted data directly to the file.

Edition availability: Professional, Ultimate

Multi-source Monitoring

This feature supports joining monitored data from multiple USB devices into a single monitoring session. Device Monitoring Studio makes sure packets are correctly sorted and presented through a number of supported data visualizers. Data logging also supports multi-source sessions.

Edition availability: Ultimate

Remote Monitoring

Remote monitoring allows you to connect to another computer and monitor USB devices connected to it. Device Monitoring Studio Server must be installed and running on remote computer and you must have appropriate permissions to successfully connect and monitor.

Edition availability: Standard, Professional, Ultimate

Custom Visualizers

Custom Visualizer allows the user to create his own visualizer in TypeScript. Custom visualizer receives each packet parsed according to selected protocol and adds one or more text strings to the output. It also defines several visual schemes which may later be customized by the user.

Edition availability: Ultimate

Scripting Support

The built-in scripting support offers the possibility to control several in-application objects with user-written scripts written in TypeScript (JavaScript superset).

Edition availability: Ultimate

Script Debugger

The built-in script debugger simplifies the process of script authoring. During debugging, expression evaluation, variable watching and stack tracing are provided. A script execution may be traced or continued until the next breakpoint is hit.