Windows Utility Helps ID Serial Ports

The humble serial interface has been around for a very long time, and will stay with us in one form or other for the foreseeable future. It was easy enough to keep track of back in the days when a computer only had one, or perhaps two COM ports. However, in this day and age of USB-programmable microcontrollers, it’s likely you’ve got COMs coming out the wazoo. Thankfully, [Amr Bekhit] has put together a utility to help solve this problem.

[Amr’s] utility is called Serial Port Monitor, and it does what it says on the tin. When new serial ports are enumerated in Device Manager, a system tray notification pops up noting the number of the newly attached COM port. Additionally, it maintains a list of ports sorted in order of the newest first, and also features a right-click menu that allows the launching of various terminal programs.

It’s a useful tool to keep in your back pocket that can prove particularly so when programming many devboards at once, or any other time when you find yourself dealing with a mess of serial devices.

Incidentally, if you find yourself having continual headaches with USB-to-Serial adapters on Windows, this might just be your problem. Happy hacking.

Footnote: In light of this article, the author would like to formally apologise to [Cosmos2000] for permanently disabling COM1 on his main programming rig. Sorry, friend.

49 thoughts on “Windows Utility Helps ID Serial Ports

      1. This was how one government engineer described their experience with Red Flag Linux:
        “Using the system was like riding a bicycle on [a major Beijing road]. It was politically correct, even cool sometimes, but quite exhausting — and always lonely.”

        1. My occasional experience with Windows 10, after mostly using Linux for years:

          – Aaargh! Why is this bloody thing so slow!
          – Where is xyz program? Ah yes, bloody Windows!
          – Why is hard drive being accessed all the time? WTF?
          – Why is there always some activity on the network? All 3 letter agencies are here having a party on my dime!
          – Why are there so many useless trial versions of xyz installed here? WTF?
          – Whaaat? No Python, C, Office, Firefox, … installed by default? What is this? A toy operating system? Aaaargh!
          – Okay, games work. But slowly. Perfect for a teenager in a basement.

          1. I’m blessed/curses to having to use both OSs, and I find most of those issues on both sides. Linux has this “feature” that when you want to install something, it will most likely not work straight away, but instead you have to spend the next “unspecified time” scouring the web to find out what is missing. The other thing is also the unhelpful expectation from Linux users forums, that as a linux user you should already know how to do everything, and if you ask any question, you are being purposely obtuse.

            What I detest of windows instead, is this completely random behaviour that occurs at times.

          2. Yeah, why bother spending 5 minutes installing something from a binary when you can have much more fun spending 6 hours building it from source and then repeating that 3 or 4 times because there were missing dependencies?

          3. assuming the build script would work on your particular linux distro as is…
            On windows, at least the backward compatibility works mostly of the time and can expect the environment to be similar enough.

    1. Or better, the /dev/serial/by-id folder contains unique (if the USB target is using the spec) id-named files for every usb serial device. No uncertainty if they map to /dev/ttyUSB0, S0 as above, or several other variants. You just look to match the serial number of the device. Extremely handy when dealing with arduinos and ESPs.
      Just open the folder and look at what shows up when you plug in your new device. You can then hardcode that filename into any other linux software (even perl) and know it will always connect only to the correct thing (or fail if it’s not plugged in). No, I’m not a vegan, but that’s one of the problems that drove me off windows around the time of XP or a little before – you couldn’t do squat reliable with any homebrew peripheral without dealing with the MSDN driver tax.

  1. Oh my, that sounds extremely useful. I’m often forced to boot into Windows to connect some remote tech to various and sundry network equipment, usually over a USB to console cable. Go find the com port is a regularly occuring game.

    1. You mean like Poderosa (Foss or comercial), Kkitty (putty on steroids) or TeraTerm?

      I’d like to provide links but I already tried that and that post is probably pending a spam check or sth.

    1. Good point Jeroen, just like the oldie usbview which I still use from time to time.
      Actually one could use Amr’s utility to launch usbview though I suggest Amr’s utility be updated to get/display on suitable small window the whole signature string option to record and show any opening comms dialogue, as I mentioned from masquerading USB memory sticks with Trojans in the USB CPU firmware.
      Given the greater use of USB type interfaces and emulators it won’t be long before some enterprising agents hijack them, so having alerts in place would be considered sensible and a ‘no brainer’ for those who have invested work $ on serious development where some key intellectual property resides on their favourite machines…

    2. Although the program doesn’t currently pull the device information, I’ve recently updated it to include the ability to add custom labels to serial ports. Please download the latest version and give it a go.

  2. Is there any way to clean out old virtual COM ports? Every time I plug in a new USB COM device, it increments the number. The numbers are getting high, and I’m never again going to use the devices that are occupying the lower numbers.

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.