👨‍💻

RP2350用FuzixでPSRAM上のfilesystemを使う話

2025/01/04に公開

はじめに

8ビットCPUやマイクロコントローラで動作するFuzixを、RP2350搭載のRaspberry pi pico2等で動作させる記事を紹介しました。

https://github.com/EtchedPixels/FUZIX

https://zenn.dev/kazueda/articles/ba41bc8f15cfda

この記事では、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