
3D プリンターとソフトウェア間で TCP 経由で転送されるデータの監視に問題があります。
私はUSBケーブルでRaspberry piに接続された3Dプリンターを持っています。私はrasbperryのser2netを使用して、プリンターからのシリアルポートデータをTCP経由で、プリンターソフトウェアを実行しているラップトップに転送しています。ラップトップはRasperryと同じネットワークにあります。ラップトップでは、socatを使用して仮想シリアルポート(ttyACM1)をマウントし、rasberryで転送されたシリアルポートからデータをリッスンします。これまでのところ、これはうまく機能しており、ラップトップのソフトウェアを使用してプリンターをリモートで使用できます。
しかし、ソフトウェアからプリンターに送信しているデータを監視しようとすると問題が発生します。さまざまなソフトウェアを使用してシリアル ポート データをスニッフィングしようとしましたが、これらのソフトウェアを実行するたびに、プリンター ソフトウェアと仮想シリアル ポート間の接続が切断されます。
では、仮想ポートとソフトウェア間の接続をキャンセルせずに、ソフトウェアを同時に使用し、ソフトウェアからプリンターに送信しているデータをスニッフィングするにはどうすればよいでしょうか。
このセットアップで使用しているコマンドとソフトウェアは次のとおりです。
でラズベリープリンターはttyACM0に接続されています
*ser2net.conf:
3333:raw:0:/dev/ttyACM0:115200,8DATABITS,NONE,1STOPBIT,XONXOFF,RTSCTS
私のラップトップ:
$sudo socat pty,raw,echo=0,link=/dev/ttyACM1 tcp:10.1.1.107:3333
(/dev/ に ttyACM1->/dev/pts/30 が表示されるようになりました)
例えば interceptty を試した場合:
$sudo interceptty /dev/ttyACM1
プリンタ ソフトウェアの実行中にデータをスニッフィングすると、プリンタが切断されていると表示されます。interceptty を使用して ttyACM1 からデータを読み取ることはできます。また、interceptty を閉じると、プリンタが再び検出されます。
プリンタの使用中にデータをスニッフィングする方法はありますか?