The AK-SDFS-UART board allows you to read/write data from/to a micro SD card using a serial TTL port (UART). The board supports the FAT file system so the files can be read back from the micro SD on a PC/MAC.
Using a simple protocol (libraries included) you can read/write 4 files concurrently, in text or binary mode. Using only four wires (TX, RX, VCC and GND) you can read and write from the SD using very small microprocessors, even 8-bit ones. The baudrate can be adjusted from 9600 up to 460800 bps.
We have prepared a library that encapsulates the communication protocol and the source code can be downloaded. There is also an Arduino sketch demonstration available for download.
The AK-SDFS-UART is perfect to be used as a data logger, for sensors and debug information. It supports micro SD and SDHC cards.
We also have a standard SD version of this board.
Features
- Only four wires to get a working FAT File System
- Powered from 3.3V external supply
- All I/O pins are 5V tolerant
- Operates on 4 files concurrently
- RTC supported (time and date command has to be given at every power up)
- Supports all file commands as Open, Create, Exist, Close, Write, Flush, Read, Size
- Supports long file names
- Supports directory tree listing
- Commands to create and delete directories
- Supports binary files
- Uses a single and secure UART protocol. Source code examples are provided
- Breadboard-ready
- Supports firmware upgrade
Comments
You must be logged in to post a comment.
Sorry I mean USB MSC protocol, thanks.
(1) What version FATFS, it look like 2011 not 2021 (R014B)
(2) Any suggestion how to stream SDCARD to MSC via UART?
Hello Richard,
1) I’ve have to check this. If you mean Chan’s FATFS, I’m not sure we are using it on this product.
2) The AK-SDFS-UART has its own protocol. I guess your firmware has to act as a translator between MSC commands and the board’s protocol.
Hello
I bought this module and it doesn’t work!!!
1. I use an Atmega1284 (UART0, 9600 Baud) to control the module
2. When I insert an SD card, the DISK LED does not light up
3. I don’t get feedback from the module when I send a command.
4. I use CRC16-CCITT as a checksum, okay?
Can the module be defective?
Or what am I doing wrong?
Regards
Wolfgang
Hi,
Ok, let’s figure this out. But first I wanted to ask if you can use the forum (https://forum.artekit.eu/) for this kind of support, since the comment section for the product is not the appropriate place.
Remember to post as much information as possible: a simple code example of what you are doing and seeing problems, a schematic of your connections, also a picture if possible, etc.
Hi Ivan,
okay, will do!
Regards
Wolfgang
Hi,
what means CRC16 exactly?
Which data should I take to calculate?
Regards
Wolfgang
Hi,
The CRC16 is calculated from all the fields (Preamble, Command, File handle / opt, Data length and Data) using the function described in the documentation (link is here above as “User manual).
Hi Ivan,
thank you for your answer. I think that will helps me!
Regards
Wolfgang
Hello, are there any libraries/guide in C for interfacing the SD card Shield with ATMEGA16L MCU?
Thank you
There is the protocol library, written in C, that is generic (the link is up here in the description). Since it’s microcontroller-agnostic, you have to provide 3 functions: one for serial data transmission, one for serial data reception and one implementing a delay.