2012-12-18 9 views
11

Potrzebuję poradzić sobie z dwoma elementami niestandardowego sprzętu, które wysyłają dane debugowania przez dwa połączenia szeregowe. Te połączenia szeregowe przechodzą przez dwa konwertery szeregowe na USB. Urządzenia szeregowe na USB mają te same numery dostawców, numery urządzeń i, co oczywiste, te same numery seryjne.W jaki sposób konsekwentnie rejestrować dane z moich portów szeregowych?

Oto problem: chcę zalogować dwa porty szeregowe oddzielnie. Niestandardowy sprzęt musi być stale restartowany, a to, czy dołączają do tego samego /dev/ttyUSB* jest całkowicie losowe. Jak mogę sprawić, by za każdym razem wybierały tę samą ścieżkę urządzenia? Mogę uzależnić to od tego, do którego portu jest podłączony, ale wydaje się to dość hackowate.

Więc wpadłem diff przed wyjściem udevadm, tak:

$ udevadm info -a -p `udevadm info -q path -n /dev/ttyUSB1` > usb1 
$ udevadm info -a -p `udevadm info -q path -n /dev/ttyUSB2` > usb2 
$ diff usb1 usb2 

The output of the diff is long; you can see it here

grepping dla szeregowego (takie same dla obu):

$ udevadm info -a -p `udevadm info -q path -n /dev/ttyUSB2` | grep serial 
SUBSYSTEMS=="usb-serial" 
ATTRS{serial}=="0001" 
ATTRS{serial}=="0000:00:1d.7" 

Inne info:

Używam PuTTY do odczytu z portów szeregowych.
OS:

$ uname -a 
Linux xxxxxxxx.localdomain 2.6.32-279.14.1.el6.x86_64 #1 SMP Tue Nov 6 23:43:09 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux 
+3

Zobacz http://askubuntu.com/questions/49910/how-to-distinguish-between-identical-usb-to-serial-adapters –

+0

@KarlBielefeldt Wolałbym nie uzależniać tego portu od którego podłączony, ale wezmę go, jeśli to jedyny sposób. –

+1

O ile mi wiadomo, to * jest * jedynym sposobem, jeśli numery seryjne są identyczne. –

Odpowiedz

1

Proszę sprawdzić czy konwerter usb-serial oparty jest na chipie ftdi? (Można sprawdzić nazwy plików sterownika)

Jeśli tak; masz szansę zmienić numer seryjny, a nawet informacje o producencie.

http://www.ftdichip.com/Support/Utilities.htm Sprawdź narzędzia; Narzędzia użytkowe MProg i FT_PROG.

+0

Nie mam chipa ftdi, ponieważ używa on sterownika cp210x. Jednak niektórzy googlingi pokazali mi, że istnieje odpowiednik cp210x: http://www.silabs.com/support%20documents/technicaldocs/an144.pdf Wygląda na to, że ten chip też to obsługuje. (cp2103) –

+0

Miło wiedzieć, że daje ci wgląd ... Mam nadzieję, że sprawisz, że zadziała ... – freewill

Powiązane problemy