GNU/Linux >> Linux の 問題 >  >> Linux

Linux でプログラムによって ttyUSB0 を切断して再接続する

これが解決策です:

  • USB デバイスの ID を見つけます。

    # tree /sys/bus/usb/drivers/cp210x/
    /sys/bus/usb/drivers/cp210x/
    |-- 1-1:1.1 -> ../../../../devices/platform/omap/musb-ti81xx/musb-hdrc.1/usb1/1-1/1-1:1.1
    |-- bind
    |-- module -> ../../../../module/cp210x
    |-- remove_id
    |-- uevent
     -- unbind
    

だから 1-1:1.1 私の ttyUSB0 の識別子です (dmesg 経由でも発見できます) ).

  • 次に、(root として) デバイスを切断します:

    # echo -n "1-1:1.1" > /sys/bus/usb/drivers/cp210x/unbind
    
  • 再接続

    # echo -n "1-1:1.1" > /sys/bus/usb/drivers/cp210x/bind
    

この時点で、私は同じデバイスを持っていましたが、名前が異なり、ttyUSB0 ではなく ttyUSB1 になりました。これを避けるために、/etc/udev/rules.d/ に新しいルールを追加しました。 99-usb-serial.rules という名前の新しいファイルを作成することによって この行で:

SUBSYSTEM=="tty", ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="ea70", ATTRS{serial}=="002DCFAF", SYMLINK+="sameName", MODE:="0666"

どこで idVendoridProduct serial はデバイスの値でなければなりません。このルールは sameName という新しいデバイスを作成します ttyUSB* にリンク 通常は OS から生成されたデバイス。


Linux
  1. Linuxにデバイスドライバーをインストールする方法

  2. Linux – Unix / linux Osesの標準および/または共通ディレクトリ?

  3. Linux プラットフォーム ドライバーと通常のデバイス ドライバーの違いは何ですか?

  1. Linux – SysfsとDevtmpfs?

  2. Linux – PtsとTtyの違いは?

  3. Linux –論理的に切断されたUSBデバイスを再接続する方法は?

  1. Linux ファイルとディレクトリの削除

  2. LinuxでUSBベンダーと製品情報をプログラムで取得する方法は?

  3. Linux でデバイスをマウントするには?