Is there a way to attach another microSD slot to the Raspberry Pi 3? I have searched online for shields or breakouts that can be attached to the pins but have only found solutions for microcontrollers such as Arduino. An alternative is the use of a USB Cardreader, but I want to know if additional slots using pins are possible.

I was considering using one of those microSD breakouts with the pins on the RPi3, but I'm worried about the sensitivity of the signal lines because of previous breadboarding nightmares:

enter image description here

Are these the only options I have?

  • 1
    Like you I considered something similar years ago. It is theoretically possible, but I never found any software support, although I suspect it is hidden in the kernel (there are indications of support in the BMC documentation). The microSD can certainly be connected to the SPI interface, but I never found any drivers. I did consider writing one based on the Arduino FAT code, but just using a USB adapter, which has software support for a variety of filesystems, seems easier, even if not achieving maximum throughput.
    – Milliways
    Apr 18, 2017 at 11:58
  • 2
    There's a linux mmc_spi driver that's in the stock Pi kernel, but other than the fact that it exists I don't know anything about it, beyond the fact it seems to take no parameters (implying the device is detectable). Very possibly this would just work, but how reliable it would be on the Pi I don't know -- pretty sure it would be much much slower than the onboard one, as the SPI bus doesn't go nearly that fast, there's no dedicated controller, etc. Which is another argument in favour of just using an adapter.
    – goldilocks
    Apr 18, 2017 at 12:38

1 Answer 1


Those adapters are SPI-based, meaning you will only get a single data line between the SD card and the RPi (as opposed to 4 lines in USB card readers). Modern SD cards are not optimized for SPI usage: you may be limited to as little as 50 kB/s unless you switch to 4-bit bus mode. With some luck, you may get it working at maybe 2 MHz, or 250 kB/s. The level converter chip (SN74LVC125A), which by the way you don't need, will further slow down the transfer.

Unless your goal is to study how SPI works, go for USB card readers.

  • USB costs more, is bigger, more complex and speed can be irrelevant. Oct 25, 2018 at 9:54

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.