Arduino Radio Control  Arduino Radio Control



SD Card Shield

I made a SD card interface for a data logging project, that is compatible with the official SD Library and plugs into Arduino's ICSP connector. It works fine with Arduino Uno, Nano, Mega2560.

I used this kind of SD Card adapter, widely available on Ebay:

cheap SD Card adapter

The schematics show that:

  • the board is powered with 5V, which is converted to 3.3V by a LM1117 regulator
  • all SPI pins work at 3.3V
SD Card adapter schematics

Level conversion is required to connect this board to the 5V Arduino boards.
I tried with CD4050 buffers and with Schottky diodes, both worked. I opted for the diodes:

SPI Level shifter with BAT85 Schottky diodes

Notice that I have hardwired the CS input of the SD adapter to the ground since this signal is not available on the ICSP connector. This means that when the SD card interface is connected, you can't use other SPI devices. If you have additional devices on the SPI bus, connect the CS input to the hardware SS pin of the Arduino instead: pin 10 (on most Arduino boards) or pin 53 (on the Mega).

I designed a small interface board to perform this voltage conversion, with 2 x 3 pins female headers to plug into the Arduino ICSP connector:

SPI Level shifter board Arduino ICSP connector pinout

Here is the SD Card adapter soldered on the interface board, the ICSP female header is visible on the right:

SD Card adapter with SPI Level shifter
SD Card adapter with SPI Level shifter
Page last modified on June 03, 2013, at 07:41 AM