May 19, 2011

Mac でシリアルターミナル

ルータなどのネットワーク機器の設定を行う場合や、 ディスプレイを接続しないでサーバ運用しているマシンの作業など、 シリアル接続をする必要は少なくなったとは言えまだまだ作業する機会はある。
しかし Mac Book (というか現在発売している殆どの Laptop) には 既にシリアル端子などは装備されていないので、 USB シリアル変換アダプタを利用して接続する必要がある。

メーカーが公式に Mac 対応を表明しているアダプタもあるが、 手持ちの Arvel SRC06-USB は 利用しているチップセットのメイカー (Future Technology Devices International Ltd. 社) の Web サイト から Mac 用のドライバをダウンロードしてインストールすると 正しく利用できる様になった。
ドライバをインストールした後でアダプタを接続すると、 /dev/tty.usbserial-FTEHW36L というデバイスが自動で生成されたので、 このデバイスを利用して通信する事ができる様になる。

通信に利用するターミナルソフトは 標準でインストールされている cu (1) や screen (1) を利用するのが手軽だ。
screen (1) を利用する場合は以下の様に起動すると接続できる。 切断する時は コマンド文字+k を入力すればよい。

$ screen /dev/tty.usbserial-FTEHW36L 9600
    
ここでは指定していないがフロー制御やパリティチェックの有無、 ストップビット長などシリアル通信で必要と思われる設定は一通り指定できる。
普段からターミナルで screen (1) を利用している場合は ~/.screenrc defkanji utf などと記述してあるだろうが、 シリアル接続の相手が EUC や MS 漢字コードのなどの場合は ~/.screenrc に以下の記述をして コマンド文字+Eコマンド文字+U を入力する事で screen の表示コードが変更できるので便利だろう。
bind E encoding euc
bind S encoding sjis
bind U encoding utf
	

ファームウェアの転送など XMODEM を利用したファイル転送が必要な場合は、 内部で kermit (1) を呼び出して様々な転送処理が実行できる 多機能な通信端末 minicom (1) をインストールすると便利になると思う。

Edit this entry...

wikieditish message: Ready to edit this entry.
















A quick preview will be rendered here when you click "Preview" button.