This video shows me checking the size of the flash RAM (memory) on an MRC Naze32 (ARM STM32F103) flight controller from MultiRC. Because I am loading my own firmware onto the board, I have to short the bootloader pins on the board, via some male jumper wires I soldered on.
These inexpensive FCs with onboard flash RAM are sold for use with the Blackbox logging feature in Cleanflight, but I wanted to re-purpose the RAM for developing algorithms like SLAM onboard the FC. As advertised, the board has 8 MB (eight megabytes, or 64 megabits) of flash memory.
Borrowing firmware code from Cleanflight, and the original Baseflight firmware on which it's based, I've created a simple API for this kind of firmware hacking:
https://github.com/simondlevy/BreezySTM32
As you can see by looking at the code, the API allows you to write very short, Arduino-like programs for specific tasks like this. There are also examples for the classic blinking LED, I^2C sniffing, and ultrasonic sonar.
Comments
Yeah, a C++ API sounds like a good idea. There's already a similar-looking project, but it looks much more ambitious / complicated than mine (hence the "Breezy" name) and isn't specifically focused on flight controllers.
Very Nice! Another board that is ideal for use as a sensor board.
Are you planning a C++ API? to compliment the C one :)
Very good. Please keep us updated on your progress to use STM32F1 board with SLAM or other algorithms.