Categories: 工作・開発

挿すだけでラズパイのIPアドレスを表示するUSBデバイスを自作

ヘッドレス運用しているRaspberry PiにSSH接続したいが、IPアドレスが分からない——そんな状況を解決するUSBデバイスをRedditユーザーのAHTMGC氏が製作した。RP2350搭載の小型ボードをRaspberry PiのUSBポートに挿すと、ホスト名とIPアドレスが内蔵LCDに表示される。

Raspberry Piをサーバーとして運用していると、久しぶりに触るときにIPアドレスが分からず困ることがある。モニターとキーボードを接続してログインし、ifconfigを叩くのは面倒だ。固定IPを設定していても、ルーターの変更やネットワーク構成の変更で変わってしまうこともある。

AHTMGC氏が製作したデバイスは、Waveshare製の「RP2350-LCD-1.47-B」を使用している。1.47インチのLCDを搭載したRP2350開発ボードだ。RP2350はRaspberry Pi Picoの後継チップで、デュアルコアのArm Cortex-M33を搭載する。

仕組みはシンプルだ。デバイスをRaspberry PiのUSBポートに接続すると、RP2350がUSBキーボードとしてエミュレートされる。自動的にコマンドを「入力」してIPアドレスを取得し、シリアル通信経由で結果を受け取ってLCDに表示する。ホスト側のRaspberry Piには何もインストールする必要がない。

ただし、現状ではログイン認証を行わないため、起動時に自動ログインが有効になっている環境が前提となる。Redditのコメントでは、Raspberry Pi関連の動画で知られるJeff Geerling氏が「ログイン不要で情報を取得するデーモンを動かす方法もある」と提案している。

ケースは3Dプリントで製作しており、STLファイルもGitHubで公開されている。コードはArduino IDEで開発されており、C++で書かれている。Raspberry Pi OS Trixieで動作を確認済みだ。


関連情報

rpi_usb_ip_display(GitHub)

FabScene編集部

FabScene編集部