Raspberry Pi Zero 2を使ってみる その1(Xfce、Vivaldi、Node-RED)

はじめに

 今回はRaspberry Pi Zero 2を使ってみました。Maker Faire Tokyo 2023にて会場で販売されていたので購入してみました。

 一度Raspberry Pi OSのデスクトップ環境をインストールしてみたのですが、熱くなって動作が遅いことがありました。さすがに普段使っているパソコンやRaspberry Pi 4よりは遅いのかな?という印象です。

 基本的にはCUIで、必要に応じてGUIで使おうかなと思っています。

▼スイッチサイエンスの販売ページはこちら。今は売り切れていますね。

▼Amazonでも販売されています。

▼以前の記事はこちら

ちょっと振り返り:いろいろ参加しました(MFT2023、ハッカソン、執筆など)

はじめに  今回は最近あちこちのイベントに参加していたことの振り返りです。9月を過ぎたあたりから、イベントがものすごく増えたような印象があります。この記事を書い…

Raspberry Pi Zeroの筐体を設計する(3Dプリンター)

はじめに  今回はRaspberry Pi Zeroの筐体を、3Dプリンターで作ってみました。  冬になって部屋が寒くなってきた影響か、ABSフィラメントで出力するとプレートから剥が…

環境構築

OSのインストール

 今回はRaspberry Pi OS Liteをインストールしました。デスクトップ環境がありません。後でインストールします。

▼Raspberry Pi Imagerは以前といろいろ変わっていますね。デバイスなどを選択後、SSIDなどの設定について聞かれました。

▼32bitのRaspberry Pi OS Liteをインストールしました。

WiFiとの接続

 sudo apt updateの時点でエラーが出ていたのですが、そもそもWiFiに繋がっていないのではないか?と思い、調べてみました。

 nmcliコマンドを使ったところ、以下のエラーが出ました。

▼NetworkManagerが起動していないというエラーです。

▼こちらの記事を参考にすると、解決しました。

【LinuxOS】Error: NetworkManager is not running.エラーの対応方法 | インフラエンジニアの技術LOG

LinuxOSでインターフェースの編集をしている際、以下のようなエラーが発生することがあります。 このエラーが

▼以下のコマンドでサービスを起動後、状態を確認しました。

 やはりWiFiに接続できていなかったので、接続しました。

▼こちらの記事を参考にしました。

https://access.redhat.com/documentation/ja-jp/red_hat_enterprise_linux/9/html/configuring_and_managing_networking/proc_connecting-to-a-wifi-network-by-using-nmcli_assembly_managing-wifi-connections

▼接続可能なSSIDを表示し、接続します。SSID名は適宜変更してください。

デスクトップ環境の構築

Xfceのインストール

 後でNode-REDを使いたかったので、デスクトップ画面も表示できるようにしてみました。今回はXfceをインストールしました。

▼Xfceのページはこちら

https://www.xfce.org/

▼こちらのページに詳しく書かれていました。

https://wiki.archlinux.jp/index.php/Xfce#.E3.82.A4.E3.83.B3.E3.82.B9.E3.83.88.E3.83.BC.E3.83.AB

▼以下のコマンドでxfce4とxfce4-goodiesをインストールしました。

 実行してみると、Unable to fetch some archivesというエラーと一緒に、sudo apt-get updateを実行するように書かれていました。実行後、再度xfce4のインストールを行うと、エラーが出ませんでした。

  startxfce4 でデスクトップ画面が表示されます。

▼このときも以下のエラーが出ました。

▼以下の記事を参考に、dbus-x11をインストールすると解決しました。

https://askubuntu.com/questions/1407041/failed-to-execute-child-process-dbus-launch-on-open-in-terminal-ubuntu-22-0

▼表示されました!HDMIで接続しているディスプレイに表示しています。

▼キーボードのボタンで、スクリーンショットを撮ることもできました。

ブラウザのインストール

 Xfceのブラウザのボタンを押すと、ブラウザが無いというエラーが出ていました。

 まずはChromiumをインストールしてみたのですが、めちゃくちゃ遅い!Chromiumより軽量のものは無いかということで、試しにVivaldiをインストールしてみました。

 結局のところ、後述するSwap機能を変更するとブラウザを開けるようになりました。

▼Vivaldiのインストールはこちらから。

https://vivaldi.com/ja/download/?platform=linux

 ブラウザを開くことができる別のパソコンでダウンロード後、USBメモリでZero 2のデスクトップにコピーしました。

▼Linux DEB ARMをダウンロードしました。

 sudo apt install でファイルのパスを指定すると、インストールできました。インストールしたブラウザはDefault Applicationsで設定しました。

▼Applications→Settingsにあります。

▼Vivaldiを設定しました。

Swap機能の設定

 メモリのSwapという言葉は初めて聞きました。メモリが足りないときに、ストレージを仮想メモリとして使うことができるようですね。

▼調べると、いろいろ出てきました。

https://access.redhat.com/documentation/ja-jp/red_hat_enterprise_linux/7/html/storage_administration_guide/ch-swapspace

【ITエンジニアの豆知識】メモリの SWAP、ホントに理解してる…? | 株式会社ビヨンド

メモリの SWAP という単語は聞いたことがある、どういうものかも何となく分かる。でも何となくのままで済ませていませんか?SWAP がどういうロジックで発生し、内部でどう…

▼こちらの記事を参考に、dphys-swapfileを削除してSwap機能をoffにしてみたのですが、動作が遅くなりました。

https://ponkichi.blog/raspberry-setup/

 この状態では、インストールしたブラウザを開くことはできませんでした。dphys-swapfileを再インストールし、Swap領域を拡張してみました。

▼こちらの記事を参考に、Swap領域を拡張すると、ブラウザを開けるようになりました。

https://lang-ship.com/blog/work/raspberry-pi-zero-2-w-3/

 Zero 2のメモリがそもそも小さいので、拡張しないと動作しないという感じでしょうか。

▼ブラウザを開いてTask Managerを見ていたのですが、Memoryは60%ぐらいでした。

Node-REDをインストールする

 Node-REDのページを参考にインストールしました。

▼こちらに詳しく書かれています。

https://nodered.org/docs/getting-started/raspberrypi

▼インストールするためのコマンドはこちら

▼同じページに書かれていたのですが、以下のコマンドでNode-REDを起動しました。未使用のメモリを早く解放できるように指示できるようです。

▼Node-REDのエディタ画面が表示されました!

 このあとZero 2のNode-REDでMQTTブローカーを起動し、WindowsのNode-REDとMQTT通信を行ってみました。ブラウザにNode-REDの画面が表示されるのは遅くても、通信はできているようでした。

▼以下のコマンドで、Zero 2の起動時にNode-REDを起動するようにできます。再起動後も、MQTT通信をすることができました。

電源を切る

 デスクトップ環境ならマウス操作で電源を切ることができますが、基本的にはCUIで使うのでシャットダウンもコマンド入力です。

▼shutdownに関するマニュアルのページはこちら

https://manpages.ubuntu.com/manpages/impish/ja/man8/shutdown.8.html

▼ランレベルという用語が出ていたのですが、こちらで説明されていました。

https://manpages.ubuntu.com/manpages/impish/ja/man8/init.8.html

 すぐに電源を切るときは以下のコマンドを使います。


 sudo shutdown -h now

最後に

 対症療法的にコマンドを入力しているので、もっといいやり方があるような気もしますが...

 ブラウザであっても使ってみなければ分からないので、いろいろ試してみようと思います。

 全体的に動作が遅いのですが、普段使っているパソコンに比べたら当然という感じです。その点、Pi 400はブラウザも早かったです。

 組み込みやすい大きさでOSを載せることができるので、入出力デバイスと合わせて使いたいなと思っています。

▼他の記事も見ていたのですが、やっぱり時間がかかるみたいですね。

https://raspida.com/zero2w-1st-impression

https://gihyo.jp/admin/serial/01/ubuntu-recipe/0777

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です