Best tools to monitor COM port
Windows OS does not have a built-in way to monitor the activity of a serial port device or check the amount of data sent and received. However, there are special software solutions that enable tracking data exchange between a computer and a serial port. With their help you can monitor COM port device activity in a visual way, capture data exchange – save it in a specified destination folder or copy into a clipboard – and analyze the interactions of COM port applications. Such software enables you to intercept all serial control codes and record detailed information about them. You can save monitoring sessions to go back to them whenever you need them.
Developers require these software solutions when writing applications, creating device drivers and serial hardware; they help to code, test and optimize applications in an efficient way.
COM port monitoring solutions typically allow you to:
- Create and run Java scripts required for bridging and analyzing rs 232 custom data manipulation
- Develop drivers for serial devices
- Analyze functionality offered by third-party software and hardware
- Investigate and reverse-engineer serial protocols
- Record logs used for debugging implemented protocols and replay them
- Monitor rs232 port communications, as well as rs422/485 port activity
- Debug software/ hardware for rs 232 ports
- Develop peripheral hardware devices for rs 232 ports
- Implement, debug and test serial protocols to exchange data between devices and devices drivers
- Parse MODBUS protocol messages
- Debug and test MODBUS devices
- Intercept and analyze data exchange between serial devices and Windows apps
Nowadays there are plenty of such rs232 port monitor solutions, below we will have a look at the most popular ones and compare their functionality.
Serial Port Monitor by Eltima Software
Serial Port Monitor by Eltima Software is a system solution designed for monitoring all RS232/422/485 COM ports activity in the system. It monitors, displays, logs and analyzes the collected data with no additional hardware.
Serial Port Monitor allows filtering and searching for specific data, features integrated terminal and is capable of exporting data. The additional bonus is its clean and intuitive interface.
Serial Port Monitor highlights include:
Once you launch the app, it connects to a COM port open by an app, and you can monitor COM port immediately. The data is collected real-time and if a problem arises, you can attend to it right away.
This COM port monitor is capable of tracking several serial ports simultaneously. Within one session you can monitor the data exchange between a few apps, devices and ports. The data will be saved in a single log on a first-in-first-out basis, this makes further analysis easier.
Captured data can be viewed in table, line, dump or terminal mode. Each of them has its own way to represent collected data. You can specify what data you would like to monitor by setting filters, and you won’t waste your time going through the data you are not interested in.
In order to check specific reactions of monitored devices you can emulate data sent to devices, i.e. sent binary, octal, decimal, etc. data on behalf of an application. To do it, switch to terminal mode of the application.
Technet solution (Portmon 3.x) by Microsoft
Portmon is COM monitor software by Microsoft. Apart from COM ports, it also allows you to track parallel ports enabling you to analyze their activity and fix problems immediately when they arise.
Portmon 3.x. allows you to:
★ Monitor ports remotely over network (TCP/IP/Internet).
If you are running the app on Windows NT/2K system and need to capture data from another system in the same network, Portmon itself installs its client software.
★ Monitor several computers simultaneously.
★ Filter logged data.
★ Highlight debug output according to your highlighting filter. You can customize the highlighting colors.
★ Print debug output file.
Let Portmon know what port you would like to monitor and it will send a request to its device driver with the NT name you are interested in.
Select a port for monitoring
When you select a port to monitor, Portmon sends a request to its device driver that includes the NT name you are interested in – it could be \device\serial0, etc. The driver has its own filtering APIs used for attaching its own filter device object to the target device object.
The sequence looks as follows: the target device is opened with the help of ZwCreateFile; once the latter sends back a handle, it is translated to a device object pointer. The driver then creates its own filter device object according to the target parameters, then loAttachDeviceByPointer is called to establish the filter. Thus the driver sees all requests to the target device.
Applications and drivers configure and read statuses from ports with the help of input/output controls, Portmon has a built-in way of knowing them for all standard serial and parallel ports.
Serial Monitor by HHD
Serial Port from HHD is another rs232 monitor software solution, it is meant for capturing, displaying, analyzing, recording and replaying traffic between Windows applications and serial devices.
The software enables you to:
- Transfer data at a high speed without affecting PC performance.
- Log data exchanged for replaying them later.
- Save captured data.
- Configure the raw data streams display.
- Monitor several devices at a time.
- Choose the looks of the app.
These COM ports monitoring apps have been around for years, their functionality is somewhat similar and it might be difficult for you to figure out which one would suit you better. We compiled a comparison chart to make things easier for you – hope it helps.
|SPM (Eltima)||Portmon (Microsoft)||HHD Serial Port|
|Analyzes activity of any COM port software or hardware solution||+||+||+|
|Monitors several COM ports at a time||+||-||+|
|Supports all types of COM ports||+||+||+|
|Intercepts all data exchanged with a COM port||+||+||+|
|Offers built-in search||+||+||+|
|Visualizes collected data||+||-||in Ultimate version|
|Logs streams of incoming and outgoing data||+||+||+|
|Traces all serial IOCTLs||+||+||+|
|Copies recorded data into clipboard||+||+||+|
|Logs customizable monitoring sessions||+||+||in Ultimate version|
|Saves, loads and exports all monitored data||+||+||+|
|Filters streams of data, presets included||+||+||+|
|Monitors COM ports already open by apps||In Pro version||-||-|
|Sends various types of data with the help of Advanced Send Dialog||In Pro version||-||-|
|Supports Windows environment (both 32-bit and 64-bit)||+||works only on 32-bit Windows||works only on 32-bit Windows|
|Price||from $65,95||free||from $199,99|
The above data shows that although all the solutions are used for the same purpose, each of them has its own way of achieving it. Some parameters are common for all releases; others are available only in some versions of the applications. The Microsoft solution has a competitive advantage of being free, but it lacks on other features and it does not work in 64-bit environment. The same is applicable to Serial Monitor by HDD. As for the paid apps, when it comes to ‘value for money’ and functionality offered our pick is Serial Port Monitor by Eltima. It works equally well in Windows 32- and 64-bit and has just the right set of features.
Serial Port Monitor
Version 7.0.312 (20th Apr, 2017) Release notes