HHD Software Articles
If you are developing or debugging serial-port based hardware, analyzing or reverse-engineering protocols employed by a certain serial device, or are developing software that communicates with such devices, sooner or later you'll need to see what data comes through the COM ports.
Serial Monitor allows intercepting, monitoring and logging of all serial (COM) port traffic in real-time. It captures data transmitted through all RS232 ports on your computer simultaneously, and provides access to the COM port data in an easily readable format.
Serial (COM) ports have been around in all PCs since IBM first released a personal computer. While today more and more computers are coming without RS232 connections and are being replaced with USB, computers equipped with serial ports and RS232 hardware are still widely available on the market. These devices are usually inexpensive thanks to the simplicity of development, and provide great value to the consumers.
While developing communication software that works with devices connected through serial ports is relatively easy, it is still quite impossible to do without seeing what is being transmitted through the COM ports from the device to your software product. It is also quite impossible to develop a stable application without taking care of the various aspects of serial port programming such as different port speeds, synchronization issues, buffering, and port states.
Developing or debugging communication hardware can be even harder as hardware developers have special needs in logging and analyzing data sent or received through the COM ports. There aren't that many development tools that help with debugging devices for COM ports.
To make things even more complicated, there aren't many tools at all that provide any meaningful output besides the raw data. A proper tool should allow you to analyze the performance of the device, play back serial port activities in real-time or in slow motion, and transmit captured or new data to the COM port.
Serial Monitor by HHD Software is fully capable of intercepting, logging and analyzing data transferred between a Windows PC and any number of COM port devices in real-time. Sure you'll have access to the raw COM port data, but for easy debugging and reverse-engineering a more convenient presentation of the data transmitted through the COM ports is readily available. Serial Monitor can decompose the data and provide output in the convenient MODBUS and PPP (Point-to-Point Protocol) formats, allowing you to create your own MODBUS packets and transmit them to the device.
Are you using separate tools for analyzing device logs? Serial Monitor supports exporting data to several popular formats for easy analysis. Not using third-party tools? Serial Monitor has a built-in statistics analyzer offering a graphical Statistic View.
If you are used to the look of console-based serial terminals of the ancient days, you'll be pleasantly surprised by the modern sleek look and convenient views provided by Serial Monitor. HHD Software recognizes the needs of today's developers using big-screen hi-resolution monitors, and provides a scalable, adjustable and fully customizable user interface with vector icons that look smooth at any resolution.
Serial Monitor is part of the Device Monitoring Studio family that offers USB and COM port monitoring to software and hardware developers. Serial Monitor comes in four editions and six license types, powerful enough for the most demanding user while remaining well within reach of corporate and individual developers. Download your free evaluation copy now: http://www.hhdsoftware.com/
This article contains some of the many interesting facts you may be interested to know about the Device Monitoring Studio.
We use the technique known as Profile Guided Optimization (PGO) to optimize the Device Monitoring Studio code. This powerful feature of Microsoft® compiler is used to optimize the code for common usage scenarios. For example, the most common usage scenario for a Device Monitoring Studio is a device monitoring.
We host a number of test runs for each public release, monitoring hardware of different type and class, and trying to include as much related application features as it is possible. As a result, we get an application that is extremely optimized for device monitoring with an unbeatable performance, low memory and disk space usages. These test runs are run separately for x86 and x64 platforms.
The installation package, program executable file and all driver files are digitally signed. That means that you can always check if the file is in its original form, unmodified and unpatched. If the file in question verifies to hold HHD Software digital signature that means this is a file that has been thoroughly tested by our release team and is guaranteed to be stable and virus-free and malware-free.
You may wonder why we do not sign dynamic link libraries. The answer is - performance! A lot of applications out there try to load a number of dynamic link libraries on the same virtual address resulting in operation system loader taking a lot of additional effort to relocate them. This not only takes time, but also consumes memory, because some DLL pages are not shared between applications anymore and are now backed by the page file.
All Device Monitoring Studio modules are carefully placed within the virtual address space; the operation system loader has nothing to relocate there. In addition, the installation program uses a technique known as binding, to further increase application loading time. Unfortunately, this technique is not compatible with module signing, because it "tunes" the module for the given operating system, patching it as necessary.
All graphics you see in the application are vector-based. It is rendered on-the-fly to deliver outstanding quality. The high-performance built-in renderer is capable of processing complex vector-based graphics, including curves, gradient fills and affine transformations.
This feature delivers nicely looking images on high-DPI displays, like the ones built into most modern laptops. It also allows people with disabilities to set the size of icons in the application to the one most appropriate for them.
Device Monitoring Studio 5.10 introduced built-in scripting support. It offers a generic infrastructure to writing script blocks that control various application features. The current version offers full scriptable interfaces for Serial Terminal and MODBUS Send modules with more to come in future versions. In future, the script will be capable of controlling the creation and configuration of monitoring sessions and processing monitored data, for example.
Whether you are developing or reverse-engineering a USB device, programming an application with USB communication, or simply analyzing data sent and received via USB interface, USB Monitor by HHD Software will expedite your project saving time and expense.
The Universal Serial Bus (USB) has become the most popular device communication interface in modern computers. All external devices that used serial or parallel interfaces in the past, such as printers, scanners, modems, even mice and keyboards, are now employing USB due to its vast superiority over the legacy interfaces. Many new classes of devices emerged in recent years because of widespread availability of the highly versatile, high-speed USB interface. USB provides multiple benefits to the end user, including hot-plugging and automatic device detection by the host PC, superior transfer speeds, and easy expandability with external USB hubs should the need for more USB ports arise.
Enhanced USB capabilities for end users mean much greater complexity for developers. All USB devices must respond to a certain set of commands with standardized responses in real time. Monitoring and capturing the data was easily achieved with simple hardware in the days of serial and parallel ports; with USB it is not an easy task anymore, as all transmissions are encoded. Testing and debugging USB devices requires additional tools that are able to capture and translate USB data into meaningful output.
USB Monitor by HHD Software (http://www.hhdsoftware.com) is capable of conveniently capturing and analyzing data transferred between a Windows PC and a USB device of any class.
If you ever created a software program more complex than the famous 'Hello, World!' you most certainly know the importance of debugging. Bugs are inevitable in any complex project, be it software or hardware. USB hardware is no exception.
Software developers are lucky enough to have a wide variety of source code debugging tools available on the market, no matter what programming language they use. Hardware developers often use specialized devices and expensive software in order to test and debug their products. One important thing that all of these tools lack is source code debugging. In most cases, a hardware developer is only able to see raw data streams that have to be saved and analyzed elsewhere.
USB Monitor makes USB debugging as simple as tracing the source code written in a high-level programming language. Thanks to its ability to analyze Human Interface Devices (HID), Mass Storage, and Still Image USB protocols, you no longer have to deal with binary data. Instead of a raw data stream, you will see a convenient presentation of the data sent and received by USB devices supporting these protocols.
One of the most important aspects of developing a new USB device or reverse-engineering an existing one is the ability to capture data that is transmitted between the computer and the USB device for later scrupulous analysis. USB Monitor will either monitor USB transmissions in real time, or store data into a log file for later playback and analysis. It can even export the logged data to many popular formats so that you can use your favorite third-party application to process it. There is little need to use third-party software for working with data, as with USB Monitor you can use all six of its powerful analyzers at the same time, including URB View, Packet View, Statistics View, HID View, Mass Storage View, and Still Image View.
Using USB Monitor helps you save time and efforts on debugging or reverse-engineering USB devices. Thanks to its flexible licensing policy, its different versions are powerful enough for the most demanding user, and remain affordable for corporate or individual use. Download your free evaluation copy at: http://www.hhdsoftware.com/Products/home/usb-monitor.html