3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

組み込みLinuxコンピュータにシリアルコンソールからファイルを送信する

Posted at

組み込みLinuxコンピュータを入手したが、Wifi機能が無かった。
我が家のネットワークは無線化されているので、有線LANは無い。
どのようにすれば、開発環境であるホストコンピュータとターゲット機との間でファイルの送受信を行えるか?

環境

ホスト

  • MacBook Air (M1, 2020)
  • macOS Big Sur 11.3.1
  • zsh
  • シリアルターミナルソフト: screen

ターゲット

  • Armadillo-IoT ゲートウェイ A6 C1モデル(AG6110-C01D0)
  • Debian GNU/Linux 10 (buster)

方針

シリアルで使用できるファイル転送プロトコルであるZmodemを使用し、シリアルコンソールを経由してファイル転送する

準備

ホストとターゲットの双方にlrzszをインストールする

ホスト(Mac)側

% brew install lrzsz

ターゲット(Armadillo)側1

$ sudo apt-get install lrzsz

ホストからターゲットへの接続

ホスト(Mac)のターミナルで

zmodemで送信する際のモードを指定しておく

% echo 'zmodem catch' >> ~/.screenrc

screenでターゲットのシリアルコンソールに入る

% screen /dev/tty.[シリアルポート名] 115200

ホストからターゲットにファイルを送る

screen内で Ctrl-aを押した後、: を押して、コマンド実行モードに入る

:exec !! sz [送信したいファイル名]

ターゲットからホストにファイルを送る

screen内(ターゲットのコンソール)で

$ sz [送信したいファイル名]

ホスト側でrzが実行され、ファイルが転送される

$ sz [送信したいファイル名]
rz
:!!! rz -vv -b -E

参考にしたサイト

感想

ターゲット側にrzコマンドが必要なことに気づくのに時間がかかった。

  1. apt-getでインストールするのに、ネットワークに繋ぐ必要がある。どうしてもネットワークが用意できない場合は、SDカード経由でlrzszのバイナリをコピーするしかない。。

3
1
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?