CircuitPython supports external SPI/QSPI flash chips for the CIRCUITPY filesystem. Each board build is setup to support only one or a few flash chips. The chips are not identical in how they are accessed, so you can't just substitute without rebuilding. The chips that CircuitPython currently supports are listed in a GitHub repository of chip data, https://github.com/adafruit/nvm.toml, along with the settings needed for each.

The chip(s) that are supported in a particular board are specified in the mpconfigboard.mk file for that board, in the line that defines EXTERNAL_FLASH_DEVICESSo change or add to EXTERNAL_FLASH_DEVICES if you want to use a different supported chip. We don't support a entire list of chips for each build because the table of data for all possible chips would take significant space in the CircuitPython build.

Here's an example:

EXTERNAL_FLASH_DEVICES = "S25FL116K, S25FL216K, GD25Q16C"

This guide was first published on Apr 26, 2018. It was last updated on Nov 04, 2023.

This page (Choosing a Different SPI Flash Chip) was last updated on Dec 20, 2020.

Text editor powered by tinymce.