Raspberry Pi2 に GPIO 経由でシリアルコンソールアクセスする
Raspberry Pi2 はもちろん簡単にキーボードやモニタに接続出来ます。しかし、非常にコンパクトなので逆にキーボードやモニタに繋がずに使いたくなってしまいます… そこで、MacBook Air から Raspberry Pi2 を GPIO 経由でシリアルコンソールアクセス出来るように設定しました。
用意するもの¶
以下を用意しました。
- MacBook Air(Yosemite 10.10.5)
- Raspberry Pi2 本体(Raspbian)+ 電源 + MicroSD カード
- Raspberry Pi 2 Model B アクリル ケース ブラック ヒートシンク (1,780 円で購入)
- Raspberry Pi ラズベリーパイ用の USB-TTLシリアルコンソールのUSB変換COMケーブルモジュールのケーブル (500 円で購入)
電源アダプタや MicroSD カード、本体等の「基本セット」以外に以下を購入しました。ケースは無くても構いません。ですが、私の場合はデータセンター等に Raspberry Pi を持参して管理系(Syslog、NTP、Radius 等)サーバとして利用することが多い為、本体保護の目的でケースを購入しました。ケースを付ける場合は GPIO 部分が空いているものを探す必要があります。Amazon でケース選定していたらヒートシンク付きにも関わらず 1,780 円と手頃なケースがあったのでこれにしました。
MacBook Air と Raspberry Pi2 の接続には、こちらのケーブルを購入しました。秋葉原辺りでは 500 円以上すると聞いたのですが(未調査)、400 円だったのでこれにしました。海外発送なので到着まで 10 日ほどかかりました。
ドライバーは Prolific Technology のページで公開されているものを使いました。このドライバーをインストールすると再起動を要求されます。
再起動後、MacBook Air にケーブルを挿入しました。私の環境ではデバイスが以下のように認識されていました。
1 2 |
|
Raspberry Pi2 に接続する¶
USB ケーブルの先端は、更に 4 色のケーブルに分かれています。これを以下のように接続します。
- 黒 = 6 番ピン(Ground)
- 白 = 8 番ピン(Tx)
- 緑 = 10 番ピン(Rx)
- 赤 = 未接続
図示すると以下の通りです。
OS X からシリアルコンソール接続する¶
シリアルコンソールでアクセスするのに screen や minicom を使っても良いのですが、今回は使い慣れている jerm を使いました。未インストールであれば Homebrew を使って簡単にインストール出来ます。
1 |
|
Raspbian では cat /etc/inittab に以下のように定義されており、この部分が GPIO でアクセスした際のコンソールに該当するようです。
1 |
|
以下のように jerm を実行し、Raspberry Pi2 のシリアルコンソールにアクセスします。
1 |
|
エンターキー等を押して反応があれば成功です。コンソールを切断する場合は「Ctrl + m」→「~」→「.」の順にタイプします。