はじめに
秋葉原ロボット部の2024年に取り組むOSの一つにZephyrOSがあります。
ZephyrOSはマイクロコントローラなどで動作するリアルタイムOSで、様々なボードで動作することが知られています。
デバッガーをつないで、作成したファームウェアを書き込むのが定番ですが、初心者には難易度が高いので、UF2ファイルをドラッグ&ドロップするだけでいいボードで環境構築が成功したのかを確認することにしました。
ZephyrOSはWindows10で動作するVirtualbox上のUbuntu22.04です。
Zephyr新規インストール用スクリプトを作る
RP2350搭載ボードでのLチカ
2024年末の時点で、RP2350搭載ボードで、Lチカプログラムのblinkyを使うので、~/zephyrproject/zephyrで以下のように入力します。
$ west build -p always -b rpi_pico2/rp2350a/m33 samples/basic/blinky
~/zephyrproject/zephyr/build/zephyr
に、zephyr.elf、zephyr.bin、zephyr.hexの他にzepher.uf2が生成します。
RP2350搭載ボードにUF2ファイルをインストール
UF2ファイルはWindows上で書き込みます。
ファイル操作はWinSCPを介して行います。WinSCPでVirtualboxのUbuntuにアクセスするために、Virtualboxの「ネットワーク」の「ポートフォワーディング」の「ルール」を、例えば以下のように設定しておきます。
名前:ssh
プロトコル:TCP
ホストIP:127.0.0.1
ゲストポート:22
WinSCPで「${USER}@127.0.0.1:2222」として、アクセスすると、Uvuntu22.04上のファイルが見えます。
「zephyr.uf2」が表示されたら、RP2350搭載ボードのBOOTSELボタンを押しながら接続して現れる「RP2350」のドライブにドラッグ&ドロップします。
ファイルの書き込みが完了すると、ボードが再起動しLチカが始まります。
おわりに
ZephyrがRaspberry pi pico2でも利用できることがわかりました。
新しいプロジェクトをmakeする場合は、buildディレクトリの名前変更か削除が必要です。