I am searching for a file system, suitable for NAND flash memory chips. Currently I use a Micron 256MB SPI NAND flash memory where I write and read raw sensors data but without a file system and error correction.

So I decided to move to a file system but I don't know where to begin with. I use the PIC32MX274F256D microcontroller

Now that I also need error correction I decided to move to a suitable file system for NAND. After searching I realized that it is more dificult than I thought.

If someone has prior experience with NAND flash memory file system or where to begin with please give me a few hints.

If there is something that I forget to mention please let me know

Thank you

  • \$\begingroup\$ I don't think this is off-topic. File systems are more of a method, than a product. \$\endgroup\$
    – DKNguyen
    Feb 10, 2020 at 16:02
  • 1
    \$\begingroup\$ Are you using Harmony to program this, or bare metal? Do you need features like detecting bad blocks? Wear leveling? I'm not sure YAFFS can work with the PIC32, it really depends on how many files you need open at a time. The 274F256D is pretty flash/RAM limited so you may have limited options. \$\endgroup\$
    – Ron Beyer
    Feb 10, 2020 at 16:13
  • \$\begingroup\$ Hi, I use bare metal design. Yes I need bad block detection and wear leveling especially wear leveling. I want to open only one file at a time \$\endgroup\$
    – Sparky
    Feb 11, 2020 at 7:48
  • \$\begingroup\$ This is the list with file systems I found that might be suitable (?) github.com/m-labs/rtems-yaffs2/blob/master/README-linux github.com/aviadzuc/NANDFS github.com/bnahill/FLogFS github.com/dlbeer/dhara github.com/ARMmbed/littlefs github.com/rickyzheng/uffs \$\endgroup\$
    – Sparky
    Feb 11, 2020 at 8:00
  • 1
    \$\begingroup\$ I do not know if you are still looking for an answer but I would suggest looking at UBI. linux-mtd.infradead.org/doc/ubi.html You might check out the reserved blocks for bad blocks section. Besides of that you can mount a filesystem on top of UBI. Maybe something like SquashFS (very common for embedded devices), depends if you also want a read-only filesystem or not. \$\endgroup\$
    – Ramazuri
    Mar 3, 2020 at 10:01


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.