Comments (6)
This crate is intended to allow you to read/write files on a FAT formatted SD card on your Rust Embedded device, as easily as using the SdFat Arduino library.
Can you list the advantages that splitting the crate would bring? As stated in the README, the primary goal is simplicity.
from embedded-sdmmc-rs.
It makes library clear: you can extend and update fat fs crate without hw depends and you can improve hw support without changes in fat fs. So crate is staied commonly easy for use - you can create default feature flag for use another hw support, or you can support hw extension as in serilalization in serde.
from embedded-sdmmc-rs.
OK, so if embedded-sdmmc was left as a simple, high-level crate, I'm fine with the FAT implementation being booted off into fat-rs or something, where it can be consumed by other applications / crates without all the SD stuff coming along too.
from embedded-sdmmc-rs.
Likewise the SD over SPI protocol implementation, and any future SD over SD Bus implementation - they can be in other crates, as long as this crate brings it all together is a nice easy to use format.
from embedded-sdmmc-rs.
I'd like to continue this discussion but instead of splitting it up, let's create a feature for enabling the fs for fat32 & fat16.
This will allow people to still depend on the crate for raw access, like for using it with e.g. littlefs2
from embedded-sdmmc-rs.
But if you don't use the FAT32 code, it all gets dead-code eliminated, doesn't it?
from embedded-sdmmc-rs.
Related Issues (20)
- File.current_offset is private to the crate and there is no tell() HOT 5
- Make File and Directory safely droppable HOT 1
- No no-std example HOT 1
- Support different codepages
- Errors with initialization with latest develop: respone 8 and 3f HOT 2
- Async support HOT 1
- Reason for MS-DOS 8.3 filename compability HOT 3
- Update dependency to heapless = "0.8" HOT 1
- In case of early ejection of SD card, allow "closing" `RawFile` handle anyway HOT 3
- How to do multi-block writes? HOT 10
- Make Directory::iterate_dir version returning an Iterator HOT 3
- should use SpiBus, not SpiDevice HOT 10
- Ensuring generic device-level reset HOT 2
- warning: field `0` is never read HOT 3
- new() without chip-select? HOT 2
- `find_data_on_disk()` panics due to attempt to subtract with overflow HOT 2
- Do a release HOT 4
- Simplify dir calcs
- Add a flush API HOT 3
- Re-add the File methods HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from embedded-sdmmc-rs.