Raspberry Pi関連の記事を擦りまくっている記者ですが、今回はささる読者がいない(笑)ネタを記事にしようかなと思います。
raspi-imagerを使ってラズベリーパイをセットアップしてみたが、ノートパソコンしかない場合、あなたはどのようにセットアップ完了を確認しますか?もしかしたらニッチなガジェットで救われるかもしれません。今回はそんなお話。
ラズパイのセットアップしてみたけど。。。困った。
Raspberry Pi Imagerを使うと、headless セットアップ(簡単に言うとある程度設定してしてくれる導入処理)を行ってくれます。これを使うと、wi-fiの設定、sshのログインまで設定して立ち上がってくれば、sshログインしてラズパイが使用できるようになる。。。と思います。
しかしながら、ここで一つ疑問が浮かびます。

IPアドレスは自動的に割り与えられる設定となっていますので、山をかけてIPアドレスを探すまたはパソコンモニター、キーボードを接続してIPアドレスを調べるというのが一般的かと思います。
では、モニター、キーボードがない場合にはどうすればよいでしょうか。
シリアルコンソール
20年ぐらい前のパソコンやコンピュータ機器には周辺機器と接続するためのポートが用意されていました。そこへシリアルケーブルと呼ばれるケーブルを接続し、機器を操作することが可能でした。

上記みたいなポートにケーブルをつなぎます。今でも、cisco社のルーターなんかは下記のようなケーブルを使って、機器のセットアップを行ないます。

大昔のUNIXマシンはシリアル経由の接続が主でしたので、それを踏襲して現在のLinuxマシンでもシリアル経由でのアクセスが可能になっています。昔は下みたいな機械でUNIXマシンを操作してたみたいですね

記者も20ウン年前の新人の頃、似たような機器をお客様の環境で見た記憶があります。多分その当時でも骨董品ぐらいのレベルの代物だったように思います。。。
では、つなげてみる。
では、windowsのパソコンとRaspberry Pi(今回は3)を繋いでみましょう!繋いでみましょう。。。うーん。。。どうやって???
Raspberry Piにはシリアルポートがありません。そこで今回はアマゾンで買ったこれを使います(やっと本題w)。

DSD TECH TTL-USB コンバーター CP2102N チップ付き
その前に、RaspberryPi OSを導入した記憶媒体(MicroSDやUSBメモリ)をパソコンに接続し、少し細工をします。OSの起動バーティション(bootfsというパーションがあります)に”config.txt”というファイルをテキストエディタなどで開きの最後に下記の1行を追加します。

enable_uart=1
config.txtをセーブしたあとに、記憶媒体をRaspberryPiに装着しておきましょう。
次にラズベリーパイとTTL-USBコンバータをケーブルで接続します。接続するのは3本になりますが、TTL-USBコンバーターにフラットケーブルがついて来たので、それを利用します。

Raspberry PIのGPIOのピンアサイン表を参考にして、接続するところを確認します。
利用するのは
TTL側 ラズパイ側
GND — GND (pin 6)
TXD — GPIO15,RXD (pin 10)
RXD — GPIO14,TXD (pin 8)
というように、TXD(Data送信)とRXD(Data受信)がついになるように、あとGNDを接続します。

図のように接続して、実際に動作するか確認していきます。
まずはTTL-USBコンバーターのドライバを製造元から探してきて、パソコンにインストールします。Googleなどで”製品名 + download”などで検索すると、ドライバが見つかると思います。
ドライバ導入できたら、シリアルポートの番号をデバイスマネージャで確認します。
デバイスマネージャ → “ポート (COM と LPT)”からシリアルポートがわかります。

今回は赤線が括られた部分(COM 3)ポートが追加されているようです。
次にターミナルエミュレータソフトをダウンロートしてきます。
Windowsで有名なのは、主に2つのソフトがあります。
・TeraTerm – 日本人が開発したソフトでわかりやすく多機能。記者は本業でも使用している。

・PuTTY – 海外ではこちらが主流。海外のエンジニアと仕事をする際に利用することがある。

今回はputtyを利用し、接続できるか確認していきましょう。
puttyをダンロードし、起動すると以下の画面が出てきます。

変更するところは… “Connection type”を”SSH”から”Serial”のラジオボタンに変更します。
次に”Serial line”の項目を”COM1″から”COM3″(デバイスマネージャで確認した値)に変更します。
最後に”Speed”の項目を”115200″を入力してOpenをクリックします。

そうすることで、ラズパイのログイン画面が現れてきました。
最後に
最近、ラズパイをインストールするとセキュリティ強化の一環のためか、Wi-Fiが無効になっていることが多く、結局のところ今回説明したシリアルコンソールをつなぐ方法、またはモニタとキーボードを用意して、Wi-Fiの有効化をし再度、SSIDの設定をし直さなければならないということがわかりました。
備忘のために記述すると rfkill コマンドで確認するとわかりますが、RaspberryPi OS導入直後はwlan(Wi-Fi)がblocked になってますので、それを解除する必要がありそうです。

シリアルコンソールは準備は面倒ですが、やり方を覚えておくと応用が効くようになることとUnixマシンの伝統的なつなぎ方が学べて勉強になります。これからUnix/Linux知識を増やして行きたいと考えている方には有益な情報となります。
最後まで、およみいただきましてありがとうございました。