| Whether you are developing or reverse-engineering a | | | | certainly know the importance of debugging. Bugs are |
| USB device, programming an application with USB | | | | inevitable in any complex project, be it software or |
| communication, or simply analyzing data sent and | | | | hardware. USB hardware is no exception. |
| received via USB interface, USB Monitor by HHD | | | | Software developers are lucky enough to have a |
| Software will expedite your project saving time and | | | | wide variety of source code debugging tools available |
| expense. | | | | on the market, no matter what programming |
| The Universal Serial Bus (USB) has become the most | | | | language they use. Hardware developers often use |
| popular device communication interface in modern | | | | specialized devices and expensive software in order |
| computers. All external devices that used serial or | | | | to test and debug their products. One important thing |
| parallel interfaces in the past, such as printers, | | | | that all of these tools lack is source code debugging. |
| scanners, modems, even mice and keyboards, are | | | | In most cases, a hardware developer is only able to |
| now employing USB due to its vast superiority over | | | | see raw data streams that have to be saved and |
| the legacy interfaces. Many new classes of devices | | | | analyzed elsewhere. |
| emerged in recent years because of widespread | | | | USB Monitor makes USB debugging as simple as |
| availability of the highly versatile, high-speed USB | | | | tracing the source code written in a high-level |
| interface. USB provides multiple benefits to the end | | | | programming language. Thanks to its ability to analyze |
| user, including hot-plugging and automatic device | | | | Human Interface Devices (HID), Mass Storage, and |
| detection by the host PC, superior transfer speeds, | | | | Still Image USB protocols, you no longer have to deal |
| and easy expandability with external USB hubs should | | | | with binary data. Instead of a raw data stream, you |
| the need for more USB ports arise. | | | | will see a convenient presentation of the data sent |
| Enhanced USB capabilities for end users mean much | | | | and received by USB devices supporting these |
| greater complexity for developers. All USB devices | | | | protocols. |
| must respond to a certain set of commands with | | | | One of the most important aspects of developing a |
| standardized responses in real time. Monitoring and | | | | new USB device or reverse-engineering an existing |
| capturing the data was easily achieved with simple | | | | one is the ability to capture data that is transmitted |
| hardware in the days of serial and parallel ports; with | | | | between the computer and the USB device for later |
| USB it is not an easy task anymore, as all | | | | scrupulous analysis. USB Monitor will either monitor |
| transmissions are encoded. Testing and debugging | | | | USB transmissions in real time, or store data into a |
| USB devices requires additional tools that are able to | | | | log file for later playback and analysis. It can even |
| capture and translate USB data into meaningful | | | | export the logged data to many popular formats so |
| output. | | | | that you can use your favorite third-party application |
| USB Monitor by HHD Software ( is capable of | | | | to process it. There is little need to use third-party |
| conveniently capturing and analyzing data transferred | | | | software for working with data, as with USB Monitor |
| between a Windows PC and a USB device of any | | | | you can use all six of its powerful analyzers at the |
| class. | | | | same time, including URB View, Packet View, |
| If you ever created a software program more | | | | Statistics View, HID View, Mass Storage View, and |
| complex than the famous 'Hello, World!' you most | | | | Still Image View. |