I hooked up a
format command to my CLI. For Windows compatibility, I’m only using one partition per SD card. One use case is a brand new 128 GB SD card, which comes formatted with exFAT. To use that card, it appears that I need to partition and format the card for FAT32. I copied the prvPartitionAndFormatDisk( FF_Disk_t *pxDisk ) example, and it seems to work, at least for a while. I have run into some problems lately like this:
The \Vibration.csv entry contains a nonvalid link. The size of the \Vibration.csv entry is not valid. File and folder verification is complete. Lost chain cross-linked at cluster 9473. Orphan truncated. Bad links in lost chain at cluster 9474 corrected. Bad links in lost chain at cluster 9475 corrected.
and I wonder if they are related.
My question is this: are these parameters from the RAM disk example appropriate for a large SD card?
#define HIDDEN_SECTOR_COUNT 8
I made one change to the example, from
FF_Format( pxDisk, ramPARTITION_NUMBER, pdTRUE, pdTRUE );
FF_Format( pxDisk, 0, pdFALSE, pdFALSE );
i.e., these are set to pdFLASE:
xPreferFAT16 Set to pdTRUE to use FAT16 if it is possible, otherwise use FAT32.
xSmallClusters Set to pdTRUE to use small clusters if it is possible, otherwise use large clusters. When set to pdFALSE, the largest possible cluster size will be selected. The actual size will depends on the FAT type in use.
I admit that I don’t know why there are any hidden sectors at all, or what impact cluster size has (or much else about FAT file systems).