Ketersediaan ruang memori, khususnya Flash dan RAM, sering menjadi kendala ketika mengembangkan aplikasi berbasis MicroPython di platform mikrokontroler STM32, khususnya versi ekonomis seperti STM32F411CEU6 (Flash: 512k, RAM: 128k) atau STM32F401CCU6 (Flash: 256k, RAM: 64k)
.
Mikrokontroler yang satu ini memiliki CPU yang mumpuni, Cortex-M4, dengan dapur pacu 100 MHz dan 84 MHz. Namun ketika ditanam firmware MicroPython, ruang memori flash seperti tampak pada gambar terlampir (gambar dikutip dari Instagram pribadi usai riset ๐)
.
Ketika mencoba satu aplikasi yang cukup besar, ruang memori tidak cukup. Pilihannya, ganti dengan varian STM32 yang memiliki ruang memori flash yang lebih besar atau melakukan cangkok. Upgrade ke seri STM32 yang memiliki ruang hingga 2MB, misal STM32F429, yang harganya lumayan, karena disertai dengan daya gedor CPU yang lebih gegas (dapur pacu hingga 180 MHz); sementara yang menjadi kendala adalah ruang flash, bukan performa CPU.
.
Ketika itu, karena memerlukan ruang flash ekstra dan kinerja CPU bisa diterima, maka dipilih cara cangkok. Hasilnya bisa dilihat di gambar terlampir, ruang flash hasil cangkok menjadi sangat lapang dan leluasa ~ 4MB ๐