-
Notifications
You must be signed in to change notification settings - Fork 13.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ESP8266SdFat Performance vs Upstream SdFat #7772
Comments
Merged
earlephilhower
added a commit
that referenced
this issue
Dec 23, 2020
* Update to upstream SdFat 2.0.2 Increases the read/write performance for SD card accesses by a significant amount, up to 5x (3+MB/s) in testing. Fixes #7772 * Add SDFS::availableForWrite handler Peek into the sector cache to determine the maximum number of bytes that can be written w/o needing a (slow) SD operation. Fixes #7650
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Basic Infos
Platform
Settings in IDE
Problem Description
SPI SD card usage utilizing SD or SDFS is much slower than expected. Testing utilizing the ESP8266SdFat->bench example sketch is showing write speeds of ~130 KB/s and read speeds of ~650 KB/s. Attempts to utilize
ENABLE_EXTENDED_TRANSFER_CLASS
andSdFatEx
in the bench example fail to compile. Analysis with a logic analyzer show many pauses in SPI transactions while writing data. While troubleshooting, I decided to replace ESP8266SdFat with the upstream version which now supports ESP8266 and ESP32. Testing with the upstream SdFat->bench example showed write speeds of ~1.6MB/s and read speeds of 3.2MB/s, much faster than the current version included in ESP8266SdFat. This does seem to break the SD/SDFS wrappers due to changes in SdFat. Usage ofENABLE_DEDICATED_SPI
in SdFat didn't cause any noticeable increase of performance which may warrant further analysis.MCVE Sketch
2.7.4 ESP8266SdFat bench.ino
Upstream SdFat bench.ino
The text was updated successfully, but these errors were encountered: