У меня есть два USB-устройства, которые предоставляют им ту же самую информацию.
root@nordlys:/$ dmesg
[27428.655362] usb 1-2: new full-speed USB device number 18 using xhci_hcd
[27428.678006] usb 1-2: New USB device found, idVendor=09d8, idProduct=0320
[27428.678013] usb 1-2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[27428.678017] usb 1-2: Product: RFID Device (COM)
[27428.678020] usb 1-2: Manufacturer: OEM
....
....
[27428.751580] usb 3-1.2: new full-speed USB device number 16 using ehci_hcd
[27428.850532] usb 3-1.2: New USB device found, idVendor=09d8, idProduct=0320
[27428.850539] usb 3-1.2: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[27428.850544] usb 3-1.2: Product: RFID Device (COM)
[27428.850547] usb 3-1.2: Manufacturer: OEM
Я попытался найти различия, сравнив их, используя root@nordlys:/$ lsusb -v
. Также здесь они точно такие же.
Мне нужна способность точно знать, с каким из двух устройств я общаюсь. Пока что я могу думать только о том, чтобы подключить устройства в определенной последовательности или подключить устройства к определенным USB-портам компьютера. Я считаю, что эти два решения плохие, и мне интересно, кто-нибудь из вас знает другие способы отличить USB-устройства?
Третье решение, которое я считаю лучшим на данный момент, - это связь с устройствами и попытка найти там различия, которые могут однозначно идентифицировать их.
Позже добавлю: я вижу, что одно устройство USB2, а другое USB3, то есть они используют eHCI и xHCI. Можно ли заставить UDEV увидеть разницу и сделать постоянные символические ссылки в /dev в зависимости от этого?