jpnevulatorを使用してシリアルポートを読み取るアプリケーションをスニッフィングします。
jpnevulator --tty /dev/ttyS0 --read
次のバイトがシリアルポートに送信されるとします。ABCD E. 時々、jpnevulatorはACEバイトのみを印刷しますが、アプリケーションはBDバイトを取得します。
jpnevulatorはバイト:ABCDEを印刷し、アプリケーションはすべてのバイト:ABCD Eをインポートする必要があります。何が間違っていますか? jpnevulatorを実行する必要がある特定のオプションはありますか?
答え1
慣れていませんが、jpnevulator
通常はttyからデータを読み取る2つのアプリケーションがある場合は、1つのアプリケーションだけがデータを取得します。
データをコピーするには、2番目(または3番目)のttyを作成し、アプリケーションにここからデータを読み取らせる必要があります。
1つの方法は、次のようなものを使用することです。ターミナルバス。その後、jpnevulator
新しいttyに接続し、アプリケーションを別のttyに接続できます。
socat
もう一つの方法は、or likeで-x
使用することです。-v
socat -x PTY,link=/tmp/ptya /dev/ttyS0
次に、16進トラフィックをダンプしながら/tmp/ptya
アプリケーションをポイントします。socat
stderr