I just did a performance test of the latest version of my SdFat library on Photon.
I am really pleased with Particle’s support for SPI and porting Arduino libraries. I was able to get a version of SdFat running with DMA transfers in about two hours.
Here are performance results for the bench example.
Type is FAT32
Card size: 31.91 GB (GB = 1E9 bytes)
Manufacturer ID: 0X3
OEM ID: SD
Product: SE32G
Version: 8.0
Serial number: 0X838DE929
Manufacturing date: 9/2015
File size 10 MB
Buffer size 32768 bytes
Starting write test, please wait.
write speed and latency
speed,max,min,avg
KB/Sec,usec,usec,usec
2655.22,20395,11506,12333
2658.04,21573,11514,12322
Starting read test, please wait.
read speed and latency
speed,max,min,avg
KB/Sec,usec,usec,usec
3030.39,11146,10788,10814
3031.31,11148,10742,10809
Done
Write at 2,655 KB/sec and read at 3,030 KB/sec is better than I had hoped for. This is with large 32 KB transfers.
The port is a quick hack but I plan to clean it up and put the photon version on GitHub.