Slide 1

I made a 64x64 neopixel array, 4096 pixels in 3 byte color, 12KB. Everything worked except one demo that crashed and I couldn’t find the bug in

I wanted to re-use all my code written for FastLED::NeoMatrix, on top of SmartMatrix

Once I had Framebuffer::GFX, I wrote other driver frontends

My new 96x64 RGBPanel outfit uses RGBPanels, which require multiple pre-computed bitmap planes that are used for DMA

RGBPanels 96x64 and TFTs at 320x240 blew up memory on ESP32 “Statically allocated DRAM is limited to 160KB” “Compiler/linker should do a better job handling global arrays instead of crashing at runtime before setup() runs”

The most annoying parts are: having to change working code, checking for malloc success, and dealing with multi dimensional arrays.

If you don’t want to rewrite multi dimensional arrays, you can use a malloc loop

Slide 17

Slide 19