Secure Digital, or SD, cards and tiny microSD cards are inexpensive and ubiquituous means of adding lots of storage to devices. For a few dollars you can have gigabytes of storage at your fingertips (smaller than your fingertips actually!). With small CircuitPython and MicroPython boards you typically have a very limited amount of flash memory to store code and data. Wouldn't it be nice if you could connect a microSD card to a Python board and expand its storage? It turns you can use microSD cards with CircuitPython and MicroPython! In fact some boards like the pyboard come with microSD card support built-in, and for other boards like the ESP8266 or M0 / SAMD21 family they can easily be connected to a microSD card that expands their storage.
This guide explores how to use a microSD card to store files for a CircuitPython MicroPython board. Specifically adding a microSD card to CircuitPython boards like Feather M0 adalogger, pyboard, WiPy, and ESP8266 will be covered in this guide. You'll learn how to connect a microSD card to the board and mount it as a new filesystem that store code & data.