I have published a first version of SdFat. I would appreciate feedback.
This is the first library I have published for Particle. I assume it will be at the bottom of the list of libraries. It appears as my library so I can't be sure but looks to be public:
An SD card library for Particle.
SdFat evolved from a library I wrote in 2008 for Arduinos with 1KB of RAM. In 2009 the Arduino company used SdFat as the core of the "Standard SD Library". The 2009 version of SdFat has been ported to many systems, including Particle devices.
This version of SdFat has many new features such as long file names. I support DMA on all SPI interfaces.
I have tested SdFat on Photon and P1. SdFat compiles for Core and Electron but I can't test since I have no hardware. Please let me know if SdFat has problems on Core or Electron.
There are a number of example. I suggest you start with TryMeFirst.cpp. This is a simple read/write example and the functions in this example are sufficient for many applications.
To try this example in the Web IDE go to libraries, find SdFat, select the TryMeFirst.cpp file and hit the "use this example" button.
SdFat has many features so you should download html documentation from GitHub. Doxygen html documentation is in the doc folder.
Here is a list of example file I have tested on P1/photon.
bench.cpp - Benchmark SD read/write speed.
DirectoryFunctions.cpp - Demonstrate chdir(), ls(), mkdir(), and rmdir().
LowLatencyLogger.cpp - High speed binary data logger.
OpenNext.cpp - Open all files in a directory.
ReadCsvArray.cpp - Function to read an array from a csv file.
ReadCsvFields.cpp - Function to read csv fields.
SdFormatter.cpp - Format an SD card according to the SD standard.
SdInfo.cpp - Display information about an SD card.
Timestamp.cpp - Shows how to time-stamp files.
TryMeFirst.cpp - A simple read/write example.
VolumeFreeSpace.cpp - Determine free space in a volume.