私は複数のttyUSBポート(具体的には16個)とインターフェースするデバイスを開発するプロジェクトを進めています。
LinuxはWindowsとは異なるttyUSBポートを扱うことに注意することが重要です。 Linux では通常、ttyUSB ポートに接続された順にラベルが付けられます。 Windowsとは異なり、各USBデバイスは常に特定の変更されていないCOMポート番号を受け取ります(たとえば、COM7は再接続または接続に関係なく、常に同じUSBデバイスに対応します)。コンピュータの再起動))。
私の主な目標は、デバイスを再起動してもLinuxのttyUSBポート番号が一貫していることを確認することです。しかし、私の実験では、LinuxはUSB接続に応じて特定の順序でttyUSBポートを割り当てません。
たとえば、出力を確認すると、dmesg | grep tty
usb 1-2はttyUSB0に対応し、usb 1-1はttyUSB1で始まることを確認できます。 usb 1-1とusb 1-3は、複数のシリアルポートを持つUSBシリアルアダプタを表すことに言及する価値があります。
Linuxで一貫したttyUSBポート番号付けを実装する方法についての洞察や提案がある場合は、ご意見に感謝します。
dmesg | grep tty
- [ 0.241124] printk: console [tty0] enabled
- [ 98.575723] 00:03: ttyS0 at I/O 0x3f8 (irq = 4, base_baud = 115200) is a 16550A
- [ 107.645192] usb 1-2: FTDI USB Serial Device converter now attached to ttyUSB0
- [ 107.647738] usb 1-1: Moschip 7840/7820 USB Serial Driver converter now attached to ttyUSB1
- [ 107.703274] usb 1-4: FTDI USB Serial Device converter now attached to ttyUSB5
- [ 107.718566] usb 1-1: Moschip 7840/7820 USB Serial Driver converter now attached to ttyUSB2
- [ 107.734340] usb 1-1: Moschip 7840/7820 USB Serial Driver converter now attached to ttyUSB3
- [ 107.736637] usb 1-1: Moschip 7840/7820 USB Serial Driver converter now attached to ttyUSB4
- [ 107.778240] usb 1-3: Moschip 7840/7820 USB Serial Driver converter now attached to ttyUSB6
- [ 107.831044] usb 1-3: Moschip 7840/7820 USB Serial Driver converter now attached to ttyUSB7
- [ 107.832354] usb 1-3: Moschip 7840/7820 USB Serial Driver converter now attached to ttyUSB8
- [ 107.850976] usb 1-3: Moschip 7840/7820 USB Serial Driver converter now attached to ttyUSB9
答え1
udevルールを作成しているようですが、シリアル番号でUSBを指定できなかったため、まだ実装していません...
これは素晴らしいチュートリアルです。
https://www.youtube.com/watch?v=BOxWrMNXKpU
編集:接続されたポートで識別できました。
KERNEL=="ttyUSB*", KERNELS=="1-4.1", MODE:="0666", SYMLINK+="aUSB1"