RP2350用FuzixでPSRAM上のfilesystemを使う話
はじめに
8ビットCPUやマイクロコントローラで動作するFuzixを、RP2350搭載のRaspberry pi pico2等で動作させる記事を紹介しました。
この記事では、rootfsの保存されているfilesystem.imgをSPI接続したSDカード上に保存して利用していました。その理由は、PSRAMに保存したfilesystem.uf2を認識することができなかったからです。
その後、FuzixのGitリポジトリのISSUEでのやり取りを経て、PSRAM上のfilesystemへのアクセスに成功しましたので、その設定方法を紹介します。
Raspberry pi pico2用のfuzix.uf2とfilesystem.uf2の作成方法は、「W5500-EVB-PICO2やRaspberry pi pico2でFuzixを起動する話」を参照してください。
uf2ファイルのPSRAMへの保存方法
通常、uf2ファイルは外部ドライブとして認識されたボード上へのコピー・ペーストで利用可能となります。
例えば、RP2040用のFuzixでは、fuzix.uf2とfilesystem.uf2のファイルをコピー・ペーストするだけで、利用可能となります。
一方、RP2350用のFuzixでは、ファイルのコピー・ペーストでは、filesystem.uf2上のrootfsを認識しません。この方法では、PSRAMにfilesystem.uf2を正しく書き込めないようです。
以下のように、fuzix.uf2とfilesystem.rtlのファイルを書き込みます。
picotoolのインストール
Fuzixのビルドの際、picotoolもビルドされますが、このpicotoolでは、loadオプションが使えません。raspberryのpicotoolリポジトリをクローンして、makeします。
filesystem.uf2の書き込み
RP2350ボードをBOOTSELボタンを押しながら、母艦のUSB端子に接続します。
ルート権限で、
picotool load filesystem.uf2
で、filesystem.uf2を書き込みます。この時、picotoolとfilesystem.uf2はご自身のパスに合わせてください。
fuzix.uf2の書き込み
uf2ファイルをすでに書き込んだPSRAMに新たにuf2ファイルをpicotoolで書き込むことができませんでした。
fuzix.uf2の書き込みは、外部ドライブと認識されているボードへのファイルのコピーで行います。
ルート権限で、
cp fuzix.uf2 /media/${USER}/RP2350
として、ファイルをコピーします。ここで、${USER}はご自身のホームディレクトリです。
ファイルの書き込みが完了すると、Fuzixが起動しますので、シリアルターミナルソフトを使って、Fuzixにアクセスします。
おわりに
FuzixはAlan Coxさん主導で様々なボードに移植されてきましたが、今では、多くの人が移植の作業に携わっています。RP2350への移植は、RP2040への移植を行った方と別の方が行われているので、RP2040のインストールのお作法とRP2350のものとで若干異なっています。
この差異に振り回されながら、動作確認を行っていくことが、Fuzixファンの楽しみの一つでもあります。
Discussion