Running out of memory space in your Arduino project? The SparkFun microSD Shield equips your Arduino with mass-storage capability, so you can use it for data-logging or other related projects.
Communication with microSD cards is achieved over an SPI interface. The SCK, DI, and DO pins of the microSD socket are broken out to the ATmega168/328's standard SPI pins (digital 11-13), while the CS pin is broken out to Arduino's D8 pin. If you decide to use one of the many open source FAT libraries (like FAT16 or SDFat) make sure to change the code to reflect the location of the CS pin.
Most libraries assume the CS pin is connected to D10; this will have to be changed to D8. Also for the libraries to work pin D8 will have to be set as an output in the 'setup()' section of your sketch. The shield also includes a large prototyping area with a 13x12 grid of 0.1" pitch PTHs.
This shield comes populated with a microSD socket, red power indicator LED, and a reset button; but it does not come with headers installed. We recommend the Arduino R3 Stackable Header Kit.
We have had customers confirm this shield will work on an Arduino Due. You will need to add a 2x3 Header like this to the shield for SPI over ICSP and do not use pins 11-13.
This skill defines how difficult the soldering is on a particular product. It might be a couple simple solder joints, or require special reflow tools.
Skill Level: Noob - Some basic soldering is required, but it is limited to a just a few pins, basic through-hole soldering, and couple (if any) polarized components. A basic soldering iron is all you should need.
See all skill levels
If it requires power, you need to know how much, what all the pins do, and how to hook it up. You may need to reference datasheets, schematics, and know the ins and outs of electronics.
Skill Level: Rookie - You may be required to know a bit more about the component, such as orientation, or how to hook it up, in addition to power requirements. You will need to understand polarized components.
See all skill levels
Based on 9 ratings:
1 of 1 found this helpful:
The Arduino Due does not use pins 11-13 as SPI pins, so the shield won't work if you connect them. Instead, you have to connect the ICSP header, that is the Due's only SPI breakout, and leave pins 11-13 unconnected.
Having sorted that out, the shield works great!
3 of 3 found this helpful:
The MicroSD shield worked fine on an Arduino Uno but did not work as delivered with the recommended header set on the Arduino Mega2560. I had to order the six pin female SPI header and it then worked on the Mega. Here should have been documentation stating what was needed for it to operate with the mega type boards.
4 of 5 found this helpful:
Using the stackable header kit, the micro SD shield does not seat correctly on the UNO-R3. The back of the unit (roughly where the Sparkfun logo is shown on the shield) hits the back of the USB port. I used a dremmel tool to cut a 1/8" notch on the board to accommodate the USB port, but the other side (where the work "Power" appears) hit the power port for the barrel power plug. I ended up setting the whole unit about 1/8" higher to get it to sit straight. This creates a stability problem since I have mounted an accelerometer on the shield so it needs to be stable and sit straight to function properly.
I purchased this to learn data logging basics. There was plenty of room to layout a baro/temp breakout board, connectors for GPS, Radio, analog sensor and wire everything within the shield. The library is easy to understand and use. Flawless product! BTW... the stacking issue is easily solved by installing "bottom headers" (the thin stip of holed plastic that holds normal header pins together). This simple addition prevents the shield from resting directly onto of the top of the Arduino's female header rows.
Good documentation allowed very little setup time. The prototype area I used for a few pushbuttons and an RTC. One suggestion for improvement, the SD socket should be a little closer to the edge of the board. With a SD inserted, it takes a fingernail to depress it because it does not extend over the board edge. Because it's hard to grip the SD, several times the spring action has launched the card about a meter.
Nice, handy shield, but it has one limitation: The CS pin is hardwired to pin 8. Normally, if I had a conflict with another shield I could (reluctantly) cut a trace and tack on a wire if necessary, but the trace on this is extremely small. This scenario is not uncommon, but totally frustrating. It would be nice if the PCB had a row of "solder-bridge jumper" pads, where any one of several pins could be used, and it wouldn't cost a single penny extra to manufacture. All shields should have this type of option, to the extent practical.
Hi, Thanks for the suggestion. It would be really a cool feature for shields to include a jumper for relocation of pins. There is a hardware option that can also help you with this. It’s the go between shield and it lets you easily adapt the pinouts of your shield to change things up.
This Arduino shield lacks the standard Arduino mounting holes. Drilling the holes to match a UNO requires cutting a pin off of the Reset switch and patching some traces. There is plenty of space on the board so I don't see why these holes we left off.
Hi, We don't include mounting holes with most of our shields. Sorry if that is a feature that you need.