YMODEMプロトコルを必要とするデバイスへのシリアル接続を介してラズベリーパイのファームウェアファイルをアップロードしようとしています。多くの調査の後、私はこのsz --ymodem [file]
コマンドがこれを行うツールであることを発見しました。次のコマンドを使用してデバイスと正常に通信しました。これたとえば、幸運ではありませんsz
。
マニュアルを読んsz
で質問が残ります。デバイスに送信する方法を確認するには? USB経由で接続され、ポートがあります/dev/ttyACM0
。別の例では、基本的にリモートホストからローカルホストに転送する方法について説明しますsz
が、これは他の説明と同じくらい詳細です。
デバイスには、ファイル転送を期待するように指示するコマンドがあります。このコマンドはそれを置き換えると思いますrz
が、デバイス文書には「ハイパーターミナルを介したYMODEM転送用のデバイスを準備します」と記載されています。 HyperTerminalと専用プログラムを介して正常にファイルを送信しましたが、Linuxコマンドラインでこれを行うことができるはずです。
私はこれが経験の欠如であると確信しており、明らかなものを見逃しています。しかし、このファイル転送を最初から最後までどのように正確に実行しますか/私は間違っていますか?
答え1
rz
sz
人々が大型コンピュータシステムに接続されているモデムに電話をかけてログインしていたときにさかのぼります。ファイルを再送信するには、kermit、xmodem、ymodem、zmodem など、いくつかのプロトコルのいずれかを使用できます。
ファイルが転送されるチャネルは実際のログインセッションです。したがって、ホストから送信を開始してからプロトコルハンドシェイクを開始します。その後、ターミナルプログラムでトランスポートプロトコルオプションを有効にします。
端末プログラムとホストがプロトコル内で自分の場所を確立し、ファイルを転送できることを願っています。
Zmodem は、ホストが実際に転送を開始したときに自動起動をサポートする端末プログラムが転送を開始する一連のフラグを定義します。
TELIXは、この機能をサポートする人気のあるターミナルプログラムです。
Hypertermは、PC上でさまざまな転送プロトコルをサポートするために使用されます。シリアルポートを介してPiに接続している場合は、これがあなたが探しているものかもしれません。
あなたがしなければならないのは、Raspberry Piの自分自身を想像し、Raspberry Pi自体でターミナルプログラムを実行してそのシリアルポートと通信することです。
私の経験によると、Linux上で動作するより良いシリアルターミナルプログラムはminicom
ymodemをサポートするプログラムです。
apt-get install minicom
minicom
正しい/dev/ttySxxx(明らかに/dev/ttyACM0)を実行して設定してください。
sudo minicom -s
そしてメニューに従うと
接続したら、モデムを使ってファイルを転送します。コントロール-A、「S」と入力し、メニューオプションを使用してyモデムと送信するファイルを選択します。
少し時間が過ぎましたが、一度試してください。
答え2
sudo minicom -s
これで設定メニューに入ると思います。ポートがFTDI rs232、rs422 USBシリアルケーブルなどの場合は、ポートが/ dev / ttyUSBに設定されていることを確認してください。アダプターが見つからない場合は開かれません。また、ファイルを送信するには、あるコンピュータから送信し、別のコンピュータでは高速受信を選択する必要があります... Android用FTDI UART端末を使用してみてください。少し簡単でショートカットボタンがあります。