Comment 24 for bug 107208

Revision history for this message
Stephen Irons (stephen-irons) wrote :

Original poster: The only real solution is to find a USB serial adapter that includes a serial number: I bought some from Dontronics in Australia.

There is no real way to tell from the sales brochures, though. I was just lucky. Spending more money is no guarantee, but it makes it more likely that you will get one with a serial number.

Failing that, it MIGHT be possible to use sysfs path, which will start something like:
/sys/devices/pci0000:00/0000:00:1d.3/usb4/4-1/4-1:1.0

This then distinguishes otherwise identical devices by WHERE they are plugged in. This can lead to interesting problems if you unplug (eg) your telescope USB adaptor and plug your oscilloscope USB adaptor back into that hole. So this is not really a solution.

I do not know how stable the sysfs path is between reboots. Does the kernel always find USB interface controllers, hubs and ports in the same order?

Another alternative is to use only one device from each of many different manufacturers. The problem here is that they usually use the same internals, so while they look different and come in different packaging, they are all identical internally.

The kernel provides the mechanism to assign fixed /dev/ttyUSBx numbers, provided that there is some way to distinguish between identical devices.

There is no UI to configure the udev rules and give meaningful names to particular ones. That might be nice, but is not relevant to udev.