This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

COM port enumeration

Other Parts Discussed in Thread: TUSB3410

Is there anyway to guarantee which COM port a CDC device will show up as on the user's system? Or, is there a way from a windows program to open a CDC device by vendor and product ID instead of COM port?

I've been trying to figure these out through google, with no luck so I'm leaning towards saying "this isn't quite possible."

  • You can ensure that the device comes up with same COM port number every time it is plugged in by serializing the TUSB3410 device (see EEPROM serialization: http://focus.ti.com/lit/an/slla154/slla154.pdf), however I don't think it is possibe to tell which exact COM port the device will come up with simply because this is handled by operating system and depends on the number of built in COM ports on your PC. I don't know of any windows serial communication app which would let you open a CDC with VID/PID instead of COM port. The OS needs to know which COM port to talk to and VID/PID wouldn't help much.

  • COM Port number assignments are made by the Operating System in the order that they are "installed".  Sandeep is correct that the way to keep a single 3410-based device on the same COM port everytime it is plugged into a given PC is to serialize.  However that COM port number is still determined by the OS the first time the device is plugged into that PC - it then stores the descriptor information (VID/PID/SerNum along with that COM number) in the registry.  If you do not serialize then it does not know if it is the same HW or a different instance of 3410-based HW and therefore it assigns a new COM number.  In addition, moveing a serialized device from one PC to another can result in different assigned COM numbers on the different PCs.

  • Also if not serialized, even if that TUSB3410 device is connected among all USB ports in a single PC, OS will assign a different COM port for that single device when connected in a different USB port. You cannot connect more than two "non-serialized" (with same VID/PID) 3410 devices, since OS won't be able to assign a COM port. Nevertheless, you can have different 3410 devices with different VID/PID information or string descriptions, without a serial number assigned, in the same system.