The SD card class allows to configure and enable the memory card module of your SG module and automatically mount it as /sd as part of the file system. There is a single pin combination that can be used for the SD card, and the current implementation only works in 1-bit mode. The pin connections are as follows:

P8: DAT0, P23: SCLK and P4: CMD (no external pull-up resistors are needed)

If you have one of the SG expansion boards, then simply insert the card into the micro SD socket and run your script.


Make sure your SD card is formatted either as FAT16 or FAT32.

Quick Example Usage:

from machine import SD
import os

sd = SD()
os.mount(sd, '/sd')

# check the content

# try some standard file operations
f = open('/sd/test.txt', 'w')
f.write('Testing SD card write operations')
f = open('/sd/test.txt', 'r')


class machine.SD([id])

Create a SD card object. See sd.init() for parameters.



Enable the SD card. The id is always 0.

Use the os module to manipulate files.


Disable the SD card

Please note that the SD card library currently supports FAT16/32 formatted SD cards up to 32 GB. Future firmware updates will increase compatibility with additional formats and sizes.