5 years, 7 months ago.

Is FlashFileSystem compatible with Mbed OS 5

I'm looking for an easy way to store icons and logo in a program and display it through a RA8875 tft screen. I saw FlashFileSystem that looks really nice because I want to avoid using an SD card. Will this library work with Mbed OS 5 and if not, is there an alternative ?

Thanks

2 Answers

5 years, 2 months ago.

Hi Nicolas,

I'm the author of the RA8875 library, but I actually have done very little with OS 5. I saw this question when it was new, and was hoping somebody else might provide an answer. Have you tried to use it with OS 5 or found an alternative?

5 years, 2 months ago.

Looks like it does with this;

https://os.mbed.com/questions/82732/EEProm-Emulation-on-STM32L432KC

https://os.mbed.com/docs/mbed-os/v5.10/apis/flash-iap.html

Off topic but would be nice to be able to speed up image file transfer, burst SPI would help as its a writing process. Not sure if this compatible with today's Mbed 2 and OS5 or even if OS5 now has that built in.

Hi Paul.

I believe Nicolas is looking for an OS 5 version of FlashFileSystem, which sounds quite similar to Flash File System (and the search engine can't seem to tell the difference). I think you were referring to the latter.

The FlashFileSystem is a read-only file system where an offline tool creates an embedded-in-flash data structure (the files), which Adam Green's code then accesses. It integrated into the usual FileSystemLike interface to support your basic fopen/fread/fclose APIs.

I integrated FlashFileSystem into some of my display projects where a bunch of graphic elements are then very rapidly accessed and delivered to the display. When FlashFileSystem is compiled under OS 5, it generates a compile error that I don't quite understand, so have not solved -

299: protected:
300:    FlashFileSystemFileHandle*  FindFreeFileHandle();
301:    FlashFileSystemDirHandle*   FindFreeDirHandle();

303:    // File handle table used by this file system so that it doesn't need
304:    // to dynamically allocate file handles at runtime.
305:    FlashFileSystemFileHandle   m_FileHandles[NUM_CONCURRENT_FILES];

Error: Array of abstract class "FlashFileSystemFileHandle" is not allowed in "FlashFileSystem/FlashFileSystem.h", Line: 305, Col: 34
posted by David Smart 19 Feb 2019

Hi David,

Okay I see, I was assuming this OS5 version was much the same as IAP that I used to use on the Freescale MCU's, that worked really well.

I like the look of OS5 but I'm finding it difficult to work around the Thread/RTOS and none of my code works here.

Also we seem to be in a Microsoft Windows scenario where early versions of windows would run without needing a CPU cooler and performed perfectly well, now we need energy expensive cooling to do much the same thing and endless updates to fix bugs, are we moving forward?

posted by Paul Staron 19 Feb 2019