もう半年近くも前の話になりますが、オープンソースカンファレンス2023福岡でRaspberry Pi 4Bを頂いてきました。
カンファレンス終盤のLT枠で若者向けのじゃんけん大会があり、景品としてT.Kabu様より頂いたものになります。本当にありがとうございます。
私が今回頂いたものは、Raspberry Pi 4Bの4GBモデル。USBストレージからブートできるように予め設定されていました。本体の上にはGeekworm X735 V2.5が付属してきました。また、ラズパイ・HAT一式のほかに説明書きの入った封筒も頂きました。
Geekworm X735を詳しく
今回いただいたラズパイにはGeekworm X735がついてきました。電源管理機能と、ファンコントローラーと冷却ファンを搭載した多機能なHATのようです。電源スイッチが搭載されており、ケーブルを繋いだまま電源をオンオフしたり、シャットダウン後に自動で本体への電源供給を停止したりできます。Raspberry Piを使ったことがある人なら、OSをシャットダウンしても自動で電源が切れないことをご存知でしょうが、これを改善するのがGeekworm X735というわけ。
また、冷却ファンが搭載されており本体の放熱を助けてくれます。ファンコントローラーのおかげで非常に静かに動作してくれます。
https://wiki.geekworm.com/X735 を見ながら、電源管理やファン制御に関するスクリプトをインストールする必要があります。見た感じそこまで大規模なプログラムではないようなので、プログラミングが好きな人は自分でプログラムを書いたりsystemdで管理できるようにしてもいいのかも。
セッティングしてみる
今回いただいた一式を使うためには、映像出力ケーブル、USB電源、ストレージ、キーボードなどが必要でした。
Raspberry Pi 4Bから映像出力端子がMicroHDMIに変更になりました。MicroHDMIケーブルを所持していなかったので、フルサイズのHDMI端子に変換するケーブルをヨドバシで調達してきました。
USB電源については、スマホの充電に使用していたdocomoのACアダプタ06を使用しました。出力電圧が高いのか、負荷を掛けても安定しているので採用。
ストレージについては、MicroSDの手持ちが一枚もなく、どうしようかと迷いましたが、手元にUSB接続のSATA SSDが転がっていたのでこちらを使用。速くて快適です。
Raspberry Pi 4Bで遊んでみる
私は過去にRaspberry Pi 3Bを少しだけ触ったことがありましたが、Raspberry Pi 4Bを触るのは全くの初めてでした。なんとなく「昔のラズパイより性能がすごく向上しているんだろうなあ」という印象がありましたが、具体的な性能がどれくらいなのか全く知りませんでした。
ひとまず、Ubuntu Desktopを入れてみて、GUIがどの程度使えるのか試してみました。しばらくブラウジングをしてみましたが、動画の再生は非常にスムーズな一方で、Basemark WebでストレスをかけるとOS全体が固まってしまったり、あまり安定していない感触がありました。
Ubuntu DesktopのかわりにRaspberry Pi OSを入れたところ、GUIも安定して動くようになりました。UbuntuよりもRaspberry Pi OSのほうがRaspberry Piのハードウェアによく最適化されており、面倒な設定やトラブルなく動作するように思いました。
ただ、GUIに関してはすごく快適というわけでもなく、GUIを活かした面白い遊び方を思いつくわけでもなかったので、結局Raspberry Pi Liteを入れて、他のPCからSSHでログインして使うようになりました。
それから、hostapdを入れてラズパイの無線モジュールをWi-Fi APにしてみたり、Raspberry Pi OSのかわりにOpenWrtを入れてみたり...。Wi-Fi周りは色々遊んでみたのですがあまり性能は芳しくなく*1、結局今は普通にRaspberry Pi OS Liteを入れて有線LANに挿して、無線は止めた状態で使っています。
Raspberry Piの現状
しばらく前まで、Raspberry Piで自宅サーバーの監視をしようと色々試行錯誤してました。Dockerを入れて、ZabbixとGrafanaをDocker Composeで建てています。ですが、建てるだけ建てて、これから設定をしようという所で放置してしまいました。今はZabbix Agentでlocalhostの監視ができるようになった所で止まってます...。またその気になったら続きをやろうと思ってます。
GPIO周りの実験にはとても便利に使っています。Raspberry PiでPPPサーバーを建て、別のマシンからUART経由でPPPサーバーにアクセスしてインターネットに接続するという少し変わった実験をしてみたりしました*2。
これはそのうち記事にまとめる予定。
最近は、gpiodを使ったHD44780互換のキャラクタ液晶の制御ライブラリをC言語で開発しました。ゆくゆくは、先に書いたようなサーバーの死活監視と組み合わせて、監視対象のuptimeや可用性、トラブル状況の表示なんかができたら面白いかなぁと思っています。
所感
Raspberry Piシリーズのような、開発やプロトタイピングに使えるシングルボードコンピュータには昔から興味がありました。研究室から借りたものを試用する経験は過去にあり、自分でも欲しいと思っていましたが、学生のお財布には少し厳しく、「いつか買いたい」と思っていたものの中々購入できるタイミングは巡ってきませんでした。そんな折もあり、今回ラズパイをいただけたことは大変嬉しく思っています。
OSC福岡についても、コロナ禍で長らく現地開催が取りやめになっていたのを知っていました。沢山のIT系カンファレンスがオンラインで開催されていた数年間。時間や場所の成約を受けずに全国のイベントに自宅や大学から参加できることはとてもよい体験でしたが、オフラインならではの交流や催しがないのは残念なことでした。
コロナ以降初めてのオフライン開催となった今回のOSC福岡では、今回書いたラズパイのこと以外にも、多くの方々とお話させていただいたり、ノベルティやステッカーをいただいたり、懇親会に参加させていただくなど、オフラインだからこそできる経験の貴重さを再実感しました。