For a sanity check, I flashed it with just stock rp2350 .uf2 and it now reading that there is 2.5mb of usable space.
I do know that there were issues in the past with some boards manufactured incorrectly but judging by the pictures in this github issue, but I don’t think my board was a part of it.
The board does work with i75w_rp2350-v0.0.5-micropython-with-filesystem.uf2 and i75w_rp2350-v0.0.5-micropython.uf2.
I have gotten it to run the example programs with little to no issue.
I’m just trying to get as much usable space as possible to play long rendered animations.
You should be aware that the Pimoroni fork of MicroPython is on steroids. I.e. they include all kinds of drivers and libraries in the firmware.
Although I am no expert on their build-system, it seems that they reserve 2MB for the firmware. If you need more flash available to the user, you must build your own version and remove everything you don’t need.
What you could do to save some space is to precompile your own py-files. This does save some flash and is simple.
BTW: There is no (Python) solution if your animations don’t work because they need too much RAM. In this case you could switch to plain C SDK programming, but that is not trivial.
I’ve never had good luck with making a custom build or getting C working on the pico.
I have tried to hook up a SD card to it and have gotten it to work, but the pico takes way too long reading from the card and decoding the image for the animation to be smooth.
I think I’m going to look into doing indexed colors for .pngs and see if i can save space that way.
This looks very nice. One option would be to switch to a different driver board. Adafruit has one with an ESP32-S3 with 8MB flash and 2MB RAM. Or you build your own with one of these powerful Pico2 Plus boards here and add the matrix driver as an external breakout. Of course not as nice as an integrated solution, but I think once you leave basic territory, you just need additional effort.