sdioio uses SDIO high-speed interface to communicate with SD cards, it is not pin compatible with SPI and requires special wiring. Not all chips support SDIO, and if they do, you usually have to use special pins! It also requires CircuitPython 6.0.

The Adafruit Grand Central M4 Express supports SDIO mode with the SDIO Breakout Board.  First, wire the two together as shown:

  • Board 3.3 to breakout 3V
  • Board GND to breakout GND
  • Board D32 to breakout CLK
  • Board D33 to breakout CMD
  • Board D8 to breakout D0
  • Board D29 to breakout D1
  • Board D20 to breakout DAT2
  • Board D21 to breakout D3

To mount the SD card, use the following code.  Remember to put it in the file mount_sd.py on CIRCUITPY so you can easily call it from code.py or the REPL with import mount_sd.

import board
import sdioio
import storage

sdcard = sdioio.SDCard(
    clock=board.SDIO_CLOCK,
    command=board.SDIO_COMMAND,
    data=board.SDIO_DATA,
    frequency=25000000)

vfs = storage.VfsFat(sdcard)

storage.mount(vfs, "/sd")
Angled shot of a Adafruit Micro SD SPI or SDIO Card Breakout Board.
Micro SD cards and microcontrollers go together like micro-peanutbutter-and-jelly: SD cards are inexpensive, durable, easy to find at any shop, come in many sizes and can plug into any...
$3.50
In Stock
Top down shot of a Adafruit Grand Central M4 Express featuring the SAMD51.
Are you ready? Really ready? Cause here comes the Adafruit Grand Central featuring the Microchip ATSAMD51. This dev board is so big, it's not...
$39.95
In Stock
Hand removing/installing micro SD card from SD adapter
Add mega-storage in a jiffy using this 8 GB class 4 micro-SD card. It comes with a SD adapter so you can use it with any of our shields or adapters. Preformatted to FAT so it works out...
$9.95
In Stock

This guide was first published on Jul 31, 2020. It was last updated on Nov 30, 2023.

This page (Grand Central M4 Express + SDIO Breakout) was last updated on Jul 24, 2020.

Text editor powered by tinymce.