M5Stack FIRE: psRAMはファームウェアを入れ替えたら動きました

先日、psRAMが使えないと書いたM5Stack FIREですが、twitterを見ていると使えている人もいるようです。
この方はファームウェアを入れ替えられています。
私も試してみたところ、無事psRAMが使えるようになりました。

bottom stack(というのかな?バッテリーが入っている部分)を着けた状態でも動作し、ツイッターで流れていた以下のような処置も特に必要ありませんでした。

psRAM領域への書き込みも成功しました。

>>> import machine
>>> hex(machine.mem32[0x3f800000])
'0x3ffae7d0'
>>> machine.mem32[0x3f800000] = 0xa5c33c5a
>>> hex(machine.mem32[0x3f800000])
'-0x5a3cc3a6'
>>>

試したファームウェアは以下のリポジトリにある「m5cloud-psram-20180516-v0.4.0.bin」です。

m5stack/M5Cloud: Micropython Web IDE beta version

FIREに元から入っているファームウェア(MicroPython ESP32_LoBo_v3.2.20 – 2018-06-28)よりちょっと古いバージョン(MicroPython ESP32_LoBo_v3.2.16 – 2018-05-15)ですが、リポジトリではこれが最新です。一応クラウドで入力したコードを実行することもできます。
(ただ、実行ボタンを押すごとにFIREがリブートしてWiFi接続も最初から行うので、かなり使い勝手は劣ります。)

というわけで現時点の私の解釈は

・現行のFIREに工場出荷でインストールされているファームウェアはpsRAMが無効になっているらしい
・そのため、psRAMを使うには、psRAMを有効にしたファームウェアをインストールすることが必要だった

ということです。

ただ、新しいファームウェアはM5Stackをリブートせずにクラウドからコードを実行できていたので、できれば新しいファームウェアのpsRAMイネーブル版を提供して欲しいところです。

コメント