CUBE SUGAR CONTAINER

技術系のこと書きます。

macOS で Raspberry Pi 用のシリアルコンソールケーブル (PL2303) を使う

Raspberry Pi はシリアル接続のルートを確保しておくと、操作するのにディスプレイやキーボードを用意する必要がない。 最終的にネットワーク越しに SSH などで操作するにしても、初期のセットアップで楽ができる。

今回使ったシリアルコンソールケーブルはこちら。 このケーブルには PL2303 というチップが使われている。

使った環境は以下の通り。

$ sw_vers
ProductName:    Mac OS X
ProductVersion: 10.14.2
BuildVersion:   18C54

ドライバをインストールする

Homebrew でチップ名を検索するとドライバが見つかる。

$ brew search PL2303
==> Casks
homebrew/cask-drivers/prolific-pl2303

インストールする。

$ brew install homebrew/cask-drivers/prolific-pl2303

シリアルコンソールケーブルを Mac につなぐ

あとは Mac にシリアルコンソールケーブルをつなぐとデバイスを認識する。

$ ls /dev/ | grep tty.usb
tty.usbserial

もし、上記だけでは認識しない場合は macOS のセキュリティ機能でドライバがブロックされている恐れがある。 「システム環境設定 > セキュリティとプライバシー > 一般」で確認しよう。

ケーブルの端子を GPIO につなぐ

つづいてはケーブルの端子を Raspberry Pi の GPIO につなぐ。

公式サイトの記述によると GPIO14 と GPIO15 が、それぞれ TX と RX に対応している。

www.raspberrypi.org

ケーブルの端子は緑が TX で白が RX に対応している。 上記の通り GPIO14 と GPIO15 につなごう。 黒は GND なので、適当な GND ピンにつないでおく。

f:id:momijiame:20190120233917j:plain:w320

赤は 5V 出力なので使わない。 下手に GND なんかにつなぐとショートする恐れがあるので注意しよう。

あとは screen コマンドを使ってデバイスに接続するだけ。 ボーレートはデフォルトで 115,200 bps に設定されている。

$ screen /dev/tty.usbserial 115200
...(snip)...
Raspbian GNU/Linux 9 raspberrypi ttyAMA0
raspberrypi login:

ちなみに、ドライバがいまいち不安定なので取り扱いに注意を要する。 たまに暴走して OS がシャットダウンできない事態に陥ったり。 使い終わったら macOS ごと終了させてケーブルを抜く、というオペレーションをするのが安全そうかな。