Showing results for 
Search instead for 
Did you mean: 

Issue with Fatfs on SLC micro SD with wear leveling



I'm using a microSD connected with SPI to a STM32F4 microcontroller. I have used MLC micro SD card with fatfs for years without any issues. Recently, I have switched to SLC NAND micro SD, Industrial grade, with Wear Leveling (for application specific reasons). However, when I try to mount the new SD card I get FR_NO_FILESYSTEM.

Do someone have an idea why it is not working as expected?

Chief II

If you are using the HAL/Cube code, the answer is clear - because it is a broken bloatware. The solution is obvious - replace it with up to date FatFS and a normal driver and other code, which is not developed by inc0mpetent fools.

Check what content of sector zero / MBR and partition table.

Check if a supported file system, and suitably ffconf.h configuration for support.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..

Hello @Piranha ,

yes I’m using CubeIDE with the fatfs version provided by ST. The card is formatted in Fat32, allocation unit 4K.

There is an updated version of fatfs that I can import?

I have checked the ffconf.h file but I don't see any special configuration that can help. I see that the microSD is recognized as SD standard which is different from the older ones that were recognized as SDHC.

FatFS is an open source library. Open it's home page and download it!