How to Delete COM Port In Use?

Kill port com lpt windows Every time you plug in a COM or USB device to your computer, Plug-n-Play service on Windows creates a virtual COM port and assigns it to a device. COM is the name of the serial port interface and can refer to both physical ports and emulated ports created by USB or Bluetooth adapters.

Every COM port has its number from 1 to 255. Also, each port is assigned exclusively for one device and remains occupied (Windows shows it as “in use”) even if the device itself is not plugged in anymore. Most of the time this is not a big deal or problem unless a user tries to run some legacy software that has trouble working with COM-ports higher than 9. For example, such an app may work well with COM1 to 9, but fail if there are no free COM ports below COM10. Another issue may appear when some specific devices take too many ports. For example, some adapters may reserve up to 30 or even more COM ports. In such a scenario, you are forced to delete COM ports in use in Windows or reassign a used COM port to a different device. In this article, we will show you how to do this.

Clear COM Ports in Use

There are different methods on how to delete COM ports in use. Luckily, there are different apps with a decent UI you can use to work with COM ports on your computer. Windows stores COM ports assignments in the registry key called COM Name Arbiter. We will show how to use the Registry Editor to clear or reassign COM ports, but first, let us focus on more user-friendly ways to delete COM ports in use.

Caution. Before deleting COM ports in use, make sure to create a system restore point. Having a backup gives you a path back in case something goes wrong. The system restore point will help you to go back quickly and restore your system functionality.

Reassign COM Ports Using the Device Manager

First, let us go through the simplest method. You can quickly reassign the COM port using the built-in Device Manager. This will work only if you have a free COM port you need to reassign. For example, Windows assigned COM24 for your device, but you need COM9 or any other COM port.

ADVERTISEMENT
  1. On your keyboard, press Win + R and enter the devmgmt.msc command;
    clear com ports windows 10
  2. Locate the Ports section and expand it;
  3. Find the device you need to reassign the COM port and right-click on it. Select Properties;
    delete com ports windows 10
  4. In a new window, go to the Port Settings tab and press the Advanced button;
    com port in use by another application windows 10
  5. Select a new COM port number from the COM Port Number drop-down list at the bottom of a new window.
    com port busy windows 10
  6. A warning may appear stating that the selected COM port number is already assigned, but choosing “Yes” should not cause any issues.

This will work only if the COM port you need to use is free. If Windows says the port you need is in use, these instructions won’t work. Do not worry, though. You can manually delete the used COM port and reassign it for a new device.

Delete COM Ports in Use on Windows

  1. By default, disconnected and unavailable devices are not shown in Device Manager. To display them, open the Device Manager (Win + R > devmgmt.msc > OK), and select View > Show Hidden Devices from the menu;
    reset com ports windows 10
  2. The next step is to display all COM ports in use. Locate the Ports (COM & LPT) section. Do notice that every device shows which port it occupies.

    Tip. Disconnected devices have translucent icons and devices you have plugged in to show a regular icon. Do not uninstall the devices currently connected;

  3. Find the port you need to free and right-click on it. Select Uninstall. If some specific device occupies several ports simultaneously, you need to remove them altogether;
    windows 10 com ports in use
  4. After this, Windows will free a port number, so you can assign it to the device you need. Go back to the Reassign COM ports using the Device Manager section and follow it to reassign the port you just made free.

There is another way how to check which COM ports are currently in use. Although there is nothing wrong with using the Device Manager, you can check the list using it. Launch the PowerShell in Admin mode and paste the following command:

Get-WMIObject Win32_SerialPort | Select-Object Name,DeviceID,Description

how to clear com ports

How to Check Which Program Use the Serial (COM) Port?

Many programs or devices require exclusive access to the serial port. Communication via a serial COM port means that only one application can control a serial device at a time. If the COM port is occupied by another application, then errors in the operation of various programs or drivers may occur due to a serial COM port locking conflict.

You can figure out which particular Windows process is using the COM port via the Process Explorer tool. This guide has been tested on Windows 11, but it applies to all previous versions of Windows as well.

  1. Open the Device Manager, expand Ports (COM & LPT), right-click on the COM port you want to check, and select Properties;
  2. Go to the Details tab, select Service from the Property dropdown list;
  3. Copy the service value that your COM port refers to. In our example, this is Serial; com port in use windows 10
  4. Download the Sysinternals Process Explorer utility from the Microsoft site;
  5. Extract the ProcessExplorer.zip archive to a local disk and run the procexp.exe or procexp64.exe (depending on the bitness of your Windows) as an administrator; the port has been opened by another application
  6. From the Process Explorer menu, select the Find > Find Handle or DLL menu (or just press Ctrl+F on your keyboard); windows 10 com port in use
  7. In the Handle or DLL substring search box, enter the name of the service that uses your COM port. In our example, this is serial. Click Search;
  8. Process Explorer will return a list of processes that are using your COM port. In our example, this is the putty.exe process with process ID 5380;
    remove com ports windows 10
  9. To free the COM port, you need to kill this process using TaskManager.exe or with the command:
    taskkill.exe /F /IM putty.exe

    com port in use

  10. So you unlock the specified COM port and can assign/reassign it to your device, driver, or application;

Clear COM Ports Using COM Name Arbiter Tool

Also, you can easily delete COM ports with the help of a third-party tool called COM Name Arbiter Setter. It is completely free, and you can download it from the official website. This utility helps you to modify the registry parameter ComDB in a simple way without taking the risk of accidentally removing or editing wrong strings in the Registry Editor.

Download the COM Name Arbiter Tool from the official website and run the executable file with Administrator privileges.

This tool’s main window shows the list of all COM ports and places a checkmark next to the currently occupied ports with present devices. If a device is not connected, hit Remove non-present devices. This will clear all assigned COM port numbers and make them available to assign. You can also clear the COM port manually, by unchecking a specific device from the list. This app automatically applies all the changes, so there’s no need to manually hit the Apply button.

clear com ports

Tip. You can also use a third-party tool called Device Cleanup Tool to remove non-present devices and clean up occupied COM ports. The Device Cleanup Tool is available for free from the official website.

Using DevCon to Delete Unused COM Ports

Also, you can clean up assigned COM ports with the help of the DevCon utility that comes built-in with the Windows Driver Kit (WDK), Visual Studio, and Windows SDK for desktop apps.

  1. Run the Command Prompt as Administrator and paste the following command:
    Cd %WindowsSdkDir%\toolsx64
  2. List the reserved COM ports using the command:
    devcon findall =ports

    remove unused com ports windows 10

  3. Now you can remove all unused ports using their IDs. For example:
    devcon remove @”PCI\VEN_8086&DEV_A13D&SUBSYS_30BE17AA&REV_31\3&11583659&0&B3”

    windows 10 clear com ports

Thus, you can delete all unnecessary COM ports (if you try to remove the used device, the Remove failed error appears), and reassign them to different devices.

ADVERTISEMENT

Reset COM Ports Using the Registry Editor

Now, let us talk about the most challenging methods on how to delete COM ports in use. In this part, we won’t use any third-party tools. All that is needed is the Registry Editor which is a part of every Windows installation.

Caution. Back up the important data and create a system restore point. Follow the instruction strictly and be careful not to edit random fields. Breaking the COM ports assignment registry key may end up getting lots of BSODs. We are pretty sure you don’t want this.

  1. Disconnect all peripheral devices;
  2. Press Win + R on your keyboard. Enter the regedit command to run the Registry Editor;
    close com port windows 10
  3. Go to the following path: Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\COM Name Arbiter. If you use Windows 10, just copy the path, and paste it into the address field;
  4. On the left side of a window, right-click COM Name Arbiter and select Export. Save the export to the com_name_arbiter_bak.reg file somewhere you can easily access it in case something goes wrong. In case of emergency, this will help you to restore the previous working settings;
    how to release com ports in windows 10
  5. If you want to reset all COM ports, change the ComDB value to 0. ComDB’s binary value defines the list of reserved COM ports. Every bit defines the status of the corresponding port (1 to 255);
    windows 10 reset com ports
  6. You can also find the list of all assigned COM ports in the Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Ports path. You can delete all the ports you want to free up;
    how to reset com ports windows 10
  7. Restart your computer. When it boots back, connect all the devices in the proper order.

That’s it! Now you know how to delete COM ports and reassign them to a different device.

 

Post a Comment

Previous Post Next Post