Changes between Version 1 and Version 2 of dacs/vcpdriver


Ignore:
Timestamp:
07/11/12 23:34:30 (13 years ago)
Author:
Takashi Obina
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • dacs/vcpdriver

    v1 v2  
    99 * DACS社のページにある通り、http://www.dacs-giken.co.jp/DA15Linux.pdf でチェック
    1010    * カウンタをUSBで接続し、dmesg, lsmod で仮想COMドライバがロードされていることを確認。
     11    * Teminal を2つ開き
     12{{{
     13入力デバイスをリダイレクト
     14# cat < /dev/ttyUSB0
     15}}}
     16{{{
     17出力デバイスをリダイレクト
     18# cat > /dev/ttyUSB0
     19
     20こちらのターミナルで
     21W0000000
     22と入力すると、もう1つの端末でR0000000と表示されるはず
     23}}}
     24 * この方法で、CentOS5では問題無く動作するが、CentOS6では何も表示されなかった
     25
     26== 対処 ==
     27最初に結果だけ書いておく:マシンを再起動した後は、USBカウンタをつないでから
     28{{{
     29# modprobe -r ftdi_sio
     30}}}
     31と入力する(rootになってから)。一度だけやればOK。それだけ。[[BR]]
     32これでW0000000を入力すると、R0000000と表示されるようになった。
     33
     34
     35== 原因調査 ==
     36根本的にはまだ分かっていない。[[BR]]
     37dmesg, lsusb, lsmodの出力は以下の通り
    1138{{{
    1239# dmesg
     
    4976............
    5077}}}
    51     * Teminal を2つ開き
    52 {{{
    53 入力デバイスをリダイレクト
    54 # cat < /dev/ttyUSB0
    55 }}}
    56 {{{
    57 出力デバイスをリダイレクト
    58 # cat > /dev/ttyUSB0
     78特にエラーも出ていないし、ドライバのロード順も正しいように思える。
    5979
    60 こちらのターミナルで
    61 W0000000
    62 と入力すると、もう1つの端末でR0000000と表示されるはず
    63 }}}
    64  * この方法で、CentOS5では問題無く動作するが、CentOS6では何も表示されなかった
     80ハード的には、単にFTDI社のSerial-USBチップがあるだけなので、
     81これのドライバがあれば良いはず。CentOS5, 6 ともにOS標準のパッケージに含まれている。
    6582
    66 == 対処方法 ==
    67  * マシンを再起動した後は、USBカウンタをつないでから
     83
     84 * USBを抜き差ししてみる → 改善せず
     85 * USBを抜いた状態でlsmodしてみると、ftdi_sio, usbserialは残っている
     86  → 手動でアンロードしてみる
    6887{{{
    6988# modprobe -r ftdi_sio
    7089}}}
    71 と入力する(rootになってから)。一度だけやればOK。それだけ。
     90 * その後、USBケーブルを差し込む。lsmodで見ると、ftdi_sioは自動でロードされている。
     91    * ターミナルを開いて動作確認 → 動いた!!
     92    * W0000000 を入れると、R0000000 が戻ってくる
     93
     94 * 再現するかどうか、色々なパターンを試す。分かったのは
     95    * リブート後、最初にUSBを差し込んだときには動かない(最初と同じ状況)
     96    * modprobe -r ftdi_sio を一度実行すれば、後は何回やっても動く[[BR]](USBデバイスを差し込んだままでも、外した状態でも、どちらでもOK)
     97    * dmesg, lsmod など、通常のログに出てくる範囲では、最初のロード時と2回目のロード時では何も変わっていないように見える。
    7298
    7399
     100なんとなく、デバイスドライバをロードする微妙なタイミングに依存している
     101感じがします。以前は/etc/modprobe.conf経由だったものがCentOS6では
     102udev経由になったため、/etc/udev/rules.d で制御するようになっています。
    74103
    75 == 雑感 ==
     104実はFTDI社の仮想COMドライバのページにある
     105http://www.ftdichip.com/Drivers/VCP.htm
     106そこにあるテクニカルノート
     107http://www.ftdichip.com/Support/Documents/TechnicalNotes/TN_101_Customising_FTDI_VID_PID_In_Linux(FT_000081).pdf
     108にも類似の方法は書いてあり、これも試したのですがダメでした。
    76109
     110納得のいかないところもありますが、
     111とりあえず CentOS6.2 でも使えそうです。
    77112