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")
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...
$2.95
In Stock
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...
$37.50
In Stock
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...
Out of Stock

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

This page (Grand Central M4 Express + SDIO Breakout) was last updated on Apr 18, 2021.

Text editor powered by tinymce.