パスワードを忘れた? アカウント作成
401991 journal

cyber205の日記: kermitの使い方

日記 by cyber205

組み込みマイコンをいじる時に避けて通れないシリアルコンソール。
Debianではuucpパッケージに入っているcu か、
コロンビア大学版のkermitことckermit、
ちょっと知ってる人ならパソコン通信ソフトのminicomなんかを使っているかもしれない。

私はkermitを使うけど、結構マトモな使い方をしてなかったので、
もういっぺん整理し直してみる。

1. apt-get で ckermit をインストールする。
2. シリアルポートを使えるのは dialout グループなので、vigr コマンドで
dialout: の行に自分の ログイン名を追加する。
3. root権限で、chgrp dialout /usr/bin/kermit 実行。
4. root権限で、chmod g+s /usr/bin/kermit 実行。

こうすることで、一般ユーザから kermit でシリアルポートをアクセスできる。
# しかし、これぐらいの処理はインストーラに自動でやって欲しいな。
# kermitがdialoutグループで使われることぐらい、Debianなら既定でそ?

普通に外部アクセスするなら、以下のような初期設定を
.kermrc あたりに放り込んでおくとよいらしい。
set line /dev/ttyS0
# set line /dev/ttyUSB0
set carrier-watch off
set speed 9600
set parity none
set flow-control rts/cts

通信するポート、/dev/ttyS0[これは第一シリアルポート]や、
通信速度 9600bps といった設定は、接続対象に合わせて変更する。

また、x86PCのLinuxは通信チップの関連で、38400bps以上を出す時には
あらかじめsetserialコマンドでハードをいじらないと速度が出ない。
まず、シリアルポートは38400で接続してやることにしておいて、
setserial /dev/ttyS0 spd_hi _> 57600bps
setserial /dev/ttyS0 spd_vhi > 115200bps
といった小細工が必要だ。

あとは、本来の通信モードを使わず、
cコマンドで直接通信モードに入ってごそごそする。
(本来、kermitってのはファイル転送、自動マクロ通信ソフトです)
終了は、Control-\(BackSlash)してからcだったかな。

以上、備忘録。

もっとスピードを出す拡張もあるらしいのだが、
とりあえずこのへんまで知っていれば、当分は困らないだろう。

  # setserial /dev/cua0 baud_base 1536000
  # setserial /dev/cua0 spd_cust divisor 0x8001(もしくは8002)
…といった謎のコマンドが動くものがあるらしい。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
typodupeerror

UNIXはシンプルである。必要なのはそのシンプルさを理解する素質だけである -- Dennis Ritchie

読み込み中...