アプリ版:「スタンプのみでお礼する」機能のリリースについて

こんばんは。
症状に改善が見られないため、皆さんの助言を頂きたいと思い、ここで質問させて頂きます。

現在、LINUXOSでUSB接続シリアル変換ケーブルを使用した通信のチェックをしております。
チェック方法はwindowsの別PCと繋ぎ、jermやminicomを使用して通信をしています。
ですが、データの受信はできるのですが、送信が全然できません。

環境は
OS:Redhat Linux8.0
カーネル:2.4.18-14
ケーブル:BHC-US01/GP(BUFFALO)
です。

カーネルモジュールの設定で
<M> USB Prolific 2303 Single Port Serial Driver
を確認してます。
また、デュアルブートでWindowsを使用した場合は送受信共に可能なので、ハードには問題ないと思います。
他に何をチェックしたらいいでしょうか?

A 回答 (3件)

PL2303は僕も使っていますが、、



僕の場合は、同じように,同じUSBシリアルとWindowsにつなぐと正常だけどLinuxにつなぐと送信できないという症状になりました。調べてみると、接続した機器側がGND/RxD/TxDの3本しか線がつながってなくて他の制御線が全部オープンでした。対策として、USBシリアルアダプタ側でRTSをCTSにループバックしました。

LinuxのPL2303ドライバはハードウェアフローコントロールをOFFにしても、CTSはみます(というか、それが本来のRS232Cの動作。ハードウェアフローコントロールがCTSをフローコントロールに転用しているだけ)。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

ドライバのバージョンが古かったのが原因だったようで、PL2303を更新したところ送信も可能になりました。
初めに確認すべき点でした。。。
お手数をかけてしまい、申し訳ないです。

しかし、そのおかげで少し詳しくなれました。
とても分かりやすい説明をありがとうございます。
とてもためになりました。

今回は通信チェックだけだったのですが、GND、TxDの2本だけをボードに接続し、通信を行うのが最終的な目的です。
ケーブル作成用の資料もWindows用に作ってあるため、CSTはオープンにするよう書いてありました。
そのケーブル作成の際にRTSをCTSにループバックさせようと思います。

どうもありがとうございました。

お礼日時:2007/02/06 18:50

使っているクロスケーブルの問題ではないでしょうか。



LinuxはCTS信号をまじめにチェックしています。CTSがOFFだと送信しません。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

これはハードウェアフロー制御を行う、という意味でいいんでしょうか?
Windows同士では、ハードウェアフロー制御で送受信可能なので、クロスケーブルに問題はなさそうです。

Linux-Windows間になると、ハードウェアフロー制御をすると、Windows側から送信する際にWindowsPCが数秒フリーズしてしまいました。
Linuxからの送信も、やはり出来ていないです。

jerm、miniicom共に同じ症状だったので、ドライバあたりの問題のような気がします。
とりあえずは、No.1のお礼に書いたようにコントローラの組み合わせをいじってみようと思います。
ありがとうございました。

お礼日時:2007/02/06 13:00

http://www.am.ics.keio.ac.jp/~iwaoka/wiki/index. …

これではだめですか?
組み合わせるUSBコントローラが一定でないのでこういうのは「やってみてわかる」状態ですけど。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

USB-SERIAL変換機の部分ですよね?
簡潔に書かれているので、きちんとなっているかは分かりませんが、カーネルモジュールの設定は参考のページの通りにしてみました。
ですが、いまだに送信はできない状態です。

>組み合わせるUSBコントローラが一定でない・・・

とは組み合わせるUSBコントローラを変えてみたら動くかもしれないということでしょうか?
今はデフォルトの状態で、ほとんどのコントローラが有効になってます。
試行錯誤しながら試してみたいと思います。

お礼日時:2007/02/06 12:51

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!