Serial Monitor Product InformationHHD Software Serial Monitor is a mixed kernel/user mode application, aimed at Win32 developers, whose work is connected with serial ports. The Serial Monitor allows users to change the default behavior of the serial ports in Win32-based operating systems, where only one application is allowed to use the port at the present moment.
The Serial Monitor achieves it by providing the monitoring device driver, which lies upon the serial device driver of the Windows NT and Windows 2000 operating systems. This driver collects all information including data read and written, control codes received and sent to the underlying hardware by the user mode client, etc.
The filter device driver used by the Serial Monitor is the newest generation of the driver, which sources and logic are described and presented in our article in Windows Developers Journal. More Information
Features
The Serial Monitor does:
- work with any software that opens a serial port and initiate communication through it.
- intercept all data read from and written to the serial port.
- intercept and process all serial input/output control codes (IOCTLs), providing the full dump of their parameters.
- support data logging. An entire monitoring session can be logged (recorded) and then played back later.
- format data into different kinds of output, thus providing user with a full set of information.
- support copying to clipboard and export capabilities.
- fully compatible with ACPI features, allowing you to bring the computer to standby/hibernate mode while running Serial Monitor.
- emulate data sending on behalf of monitored application.
- allow you to monitor the serial protocol between two different serial devices, connected by null-modem cables to your computer.
- fully support Windows XP themes.
- allow you to customize the keyboard shortcuts for any command in the program shell.
- allow you to customize toolbars.
- work in Windows NT 4.0, Windows 2000/XP workstation/server operating systems.
Usage
-
Developing or Implementing Serial Protocol
When a company develops or implements the serial port protocol, it
often faces the lack of software or hardware tools such as protocol
analyzers and often comes to implementing its own tool, making it
(probably temporary) the part of the software project.
This kind of protocol analyzers always breaks down the clear design
of the software, increases the project development time and often
becomes not so useful as it is supposed to be because of timing
changing.
With Serial Monitor you do not need to do the job anymore. All you
have to do is to start your application, start the Serial Monitor,
attach it to the application and receive the complete view of what's
going on between the device and the software.
All monitored data can be logged into the log file thus making the
post-analyzing real. If you need to collect information during the
whole night - there's no problem! Just start the Serial Monitor and go
to bed. In the morning, you will get a small compressed log file that
contains everything you need to find your bugs!
-
Reverse-engineering the Serial Protocol
There is another
area where the Serial Monitor is very useful. It is an area of serial
protocols reverse-engineering. We won't talk about copyright here,
because there are many lawful areas of reverse-engineering
applications. Here are at least two examples:
- The company has the protocol documentation and the working software
(maybe as an example of protocol implementation) and needs to write its
own software based on this protocol. There seems to be some error in
the code, which can't be found using only the documentation, but,
unfortunately, there are no sources for the working software. Then the
company uses the Serial Monitor to reverse-engineer the protocol based
on the working software. There is no breaking the law, because you do not modify or reverse-engineer the code of the working software!
- The company has a device and the working software (e.g. device
driver) but doesn't know the protocol. Moreover, the author of the
software does not exist anymore, does not support the product anymore
or has no rights for the product anymore. So the company is free to use
the Serial Monitor to recreate the protocol from the working software
and the device.
With Serial Monitor's ability of working with any kind of
third-party user mode software, which uses serial ports to communicate
with hardware devices, it becomes very easy to reconstruct the protocol
with or without the protocol documentation.
-
Testing Software
The Serial Monitor, with its complete serial control codes support,
very precise request timing and very fast work, can be used to test the
correct functionality of any third-party software.
After running the software (with Serial Monitor attached to it) for
a period of time and recording the log, the log can later be used to
test the correctness of the protocol implementation. |
|
|