The Impact of Virtual COM Ports to Resolve USB Conflicts

When users operate several USB devices that function as virtual RS232 COM ports (the universal serial port standard) on Windows, there may be a few issues related to conflicts between devices.

An application may link to the correct device when it is the only one connected, only to “get confused” if another device shares the PC. However, there are a few basic things users can try to resolve the issue.

9103s and Arduinos Playing Nice Together

A 9103 Picoammeter and Arduino

Figure 1. A 9103 Picoammeter and Arduino. Image Credit: RBD Instruments.

In a majority of the Windows applications, virtual COM ports (VCPs) all look alike. An application can open a port and try to communicate with the connected device; however, since a fixed protocol does not exist—each device tends to speak its own “language”—any transmitted message can have uncertain effects if the device that is being communicated with is not the one that was expected.

Certain applications just connect to the first COM port available, and others may offer a way to choose the COM port the device is connected to—but users must solve that.

While making hardware for PCs, manufacturers can apply for exclusive vendor ad product IDs for their devices. There are also methods for applications to securely query these. However, that only solves the issue partially.

A number of devices use third-party USB chips and drivers from companies similar to FTDI, so they share the same IDs. To a Windows client application, or to a person checking the Device Manager in Control Panel, these devices appear the same.

RBD’s 9103 Picoammeter uses FTDI’s widely used USB VCP chips, as do several versions of the famous Arduino microcontroller boards. Therefore, client applications can confuse between these two sets of devices upon being used on the same PC. The fact is that they are typically used together. This article discusses some tricks for making these devices function well together.

Solution 1: Connect Each Device and Run Each Client in Order

Several applications necessitate users to indicate the port for the chosen device. Others (such as Actuel for the 9103) poll the COM ports in numerical order, and then verify and connect to the first available port. If these devices verify the vendor and product ID (like the 9103) first, they would at least avoid ports that do not match.

However, they cannot differentiate between two devices that use the same USB chip (such as FTDI’s). This can be solved by setting up a device connection/application order.

When there is a 9103/Arduino conflict, first, all other devices should be unplugged, and the 9103 should be plugged in and turned on. Second, the Actuel software must be run. The software locates and takes charge of the 9103 port. Once assigned, users can safely plug in the next device and run its client.

Another order might be more logical for the specific application of the user. Users need to experiment with their configuration, and if there are more than two devices, it is best to get two of them working first. The process should be documented so that it can be followed anytime users reboot/power-on.

Solution 2: Change the COM Port Number for a Specific USB Port

Windows can be forced to use another COM port number than the one that is assigned automatically. This may be useful for applications that choose the lowest numbered port.

For instance, if the 9103 is linked to COM4 and another FTDI device is linked to COM3, the 9103 client software may wrongly choose the device on COM3. Setting the 9103 to COM2 may enable users to connect the devices and run the client applications in any order, based on how those other devices/applications act. General experimentation may be needed.

With the 9103 connected and switched on, the Control Panel/Device Manager should be run to identify the selection for “Ports (COM and LPT).” This has to be clicked to see an entry for “USB Serial Port (COM4)” (the COM# may be different obviously). When double-clicked, properties are revealed.

The COM port settings for the 9103

Figure 2. The COM port settings for the 9103. Image Credit: RBD Instruments.

Now, the “Port Settings” tab must be selected, and the “Advanced ...” button must be clicked. From this window, users can choose a new COM port assignment.

Choosing a COM port for the 9103

Figure 3. Choosing a COM port for the 9103. Image Credit: RBD Instruments.

Users must bear in mind that plugging a device into a different USB port will alter the COM port assigned to it.

This information has been sourced, reviewed and adapted from materials provided by RBD Instruments, Inc.

For more information on this source, please visit RBD Instruments, Inc.

Citations

Please use one of the following formats to cite this article in your essay, paper or report:

  • APA

    RBD Instruments, Inc.. (2019, December 05). The Impact of Virtual COM Ports to Resolve USB Conflicts. AZoM. Retrieved on September 19, 2020 from https://www.azom.com/article.aspx?ArticleID=18751.

  • MLA

    RBD Instruments, Inc.. "The Impact of Virtual COM Ports to Resolve USB Conflicts". AZoM. 19 September 2020. <https://www.azom.com/article.aspx?ArticleID=18751>.

  • Chicago

    RBD Instruments, Inc.. "The Impact of Virtual COM Ports to Resolve USB Conflicts". AZoM. https://www.azom.com/article.aspx?ArticleID=18751. (accessed September 19, 2020).

  • Harvard

    RBD Instruments, Inc.. 2019. The Impact of Virtual COM Ports to Resolve USB Conflicts. AZoM, viewed 19 September 2020, https://www.azom.com/article.aspx?ArticleID=18751.

Ask A Question

Do you have a question you'd like to ask regarding this article?

Leave your feedback
Submit