見出し画像

ロボット開発日記4 ラズパイ最新OS(Bookworm)と、error :externally-managed-environment

こんにちは、横山です。

あっという間に2024年になりました!

実は本件の趣味のロボット開発🤖ですが、粛々と進めていたもののいろんなトラブルが発生してなかなか思うように進んでおりませんでした(泣)

色々なトラブルあったので、改良点も含めて紹介します。


トラブル集

その1 OSアップデートしたら,
画面がブラックアウト

昨年の11月ごろに仕事も落ち着いてきたので、久々にラズパイを動かしたいなと思い、ファームウェアをアップデートしました。

まず①パッケージを最新化

$ sudo apt update

②次にインストール済みのパッケージを最新化

$ sudo apt -y upgrade

③OSのディストリビューションを最新化

$ sudo apt dist-upgrade -y

④ファームウェアとOSのカーネルを最新化

$ sudo rpi-update

⑤最後に再起動

$ sudo reboot

再起動後、一瞬ラズパイの初期画面がモニターに映るのですが、画面が完全にブラックアウトしていて何も表示されない。

焦って何回も電源ON/OFFを繰り返してみたのですが改善しませんでした。

ネットやラズパイの公式HPで調べてみましたが、どうやら④ファームウェアとOSのカーネルを最新化してしまったことが原因だったようです。

Raspberry Pi公式HP抜粋。
rpi-updateはラズパイのエンジニアでない限り非推奨コマンドのよう。

事前に動作が保証されているようなものではないらしく、安易にファームアップデートするべきでない事を知りました💦
これは知らなかったなー。

こちらのサイトの記事もアップデートの参考になります。

ラズパイの基本は下記コマンドなのでしょう。

sudo apt update
sudo apt sudo apt full-upgrade -y
sudo reboot

sudo apt autoremove -y
sudo apt clean

その2
Raspberry Pi5,  
最新OS Bookworm発表
※64bit推奨

僕の今までのラズパイのOSはBullseyeでした。

2023年10月から新OS Bookwormがリリースされました。

Bookwormについては、下記サイトが分かりやすく解説してくれています。

それに伴い、2023/12/23 ラズパイ Raspberry Pi imager v.1.8.4がリリースされています。

今使っているRaspberry Piは4bのものを使っています。

まだ日本では発売していませんが、Raspberry Pi 5も発売決定しましたね!

小型のデスクトップPCのような性能を持っており、早く入手したいところです。
RTC対応とかも嬉しですね。

Raspberry Pi 5については、下記サイト様が分かりやすく情報まとめられていました。

最新OSのインストールで、ここでも失敗したのが今まで32bitのOSを使っていたのですが、最新OSは64bit推奨のようです。

間違って32bit版をインストールしたのですが、VNC設定がうまくいかず(泣)
64bit版を再インストールしました。

Bookwormでは、デスクトップの表示システムがx11からWaylandに変更になっています。

2024年1月7日時点の僕のラズパイでは、Raspberry Piの設定でVNCをONにしても、デスクトップ右上にVNCアイコンが表示されなくなっていました。

最初、VNCに接続しても Cannot currently show the desktopと表示されてしましたが、なぜか1920 * 1080の解像度から1280 * 720に変更すると解消しました。
※不思議

sudo raspi-config → D3 VNC Resolution → 1280 * 720 →再起動

その3
error: externally-managed-environment

これも新OS Bookwormになってから、pipインストール時に発生するエラー画面です。

Bookwormで、pip installしようとする発生するエラー画面

僕はソフトエンジニアではないため詳しいことは分かりませんが、PEP668の関係でpipが上手く使えないとかなんとか。

正直訳わからんです。下記サイトにも情報上がっています。

正直よく分からないし情報もあまり出回っていないです。

リスクがあるようですが、末尾に--break-system-packages入力して強制インストールしました。

ロボットアームをPS4コントローラで制御

以前にAmazonで購入したロボットアームキットをチラッと見ていました。

こちらのロボットアームキットですが、付属の有線コントローラでアームを動かすことができるのですが、これを以前に紹介したPS4コントローラでリモート制御できないかなって画策しておりました。

よくよく見ると、こちらのモーターはSG-90のものを使っていたため、ロボット開発日記3 で使ったPCA9685のI2C制御基板が使えるのです!

早速、接続して動作させてみた結果がこちら。

ただ最新のOSに設定すると、今までの設定では上手くいかないエラーがいくつか発生したので記事も修正しております。

次回はもう少し細かくアームを制御できるようにしていきたいと思います。

ここまで読んでいただきありがとうございました!

この記事が気に入ったらサポートをしてみませんか?