Skip to content

sdioio on Feather RP2040 Adalogger#3

Merged
FoamyGuy merged 1 commit into
FoamyGuy:rpi_sdioiofrom
mikeysklar:adalogger-rp2040-sdioio
Jul 3, 2026
Merged

sdioio on Feather RP2040 Adalogger#3
FoamyGuy merged 1 commit into
FoamyGuy:rpi_sdioiofrom
mikeysklar:adalogger-rp2040-sdioio

Conversation

@mikeysklar

@mikeysklar mikeysklar commented Jul 3, 2026

Copy link
Copy Markdown

Builds on adafruit#11090 Enables the PIO sdioio driver on the Feather RP2040 Adalogger, whose built-in microSD slot is already wired for 4-bit SDIO on consecutive GPIOs

2 files, 23 lines: CIRCUITPY_SDIOIO = 1 + the SDIO_* aliases and SDIO_DATA tuple, mirroring the Metro RP2350 board.

Feather RP2040 tested mounts at 25 MHz 4-bit, best-of-3 with Jeff Epler's benchmark, same board and card (64GB ExFAT A2/U3):

Bus Write Read Logging
SPI (built-in auto-mount) 1.9 MB/s 1.8 MB/s 1065 l/s
4-bit SDIO @25 MHz (this PR) 9.6 MB/s 8.1 MB/s 1160 l/s
gain 5.1× 4.5× 1.09×

Turn on the PIO SDIO driver for the Feather RP2040 Adalogger's built-in
microSD slot, which is already wired for 4-bit SDIO on consecutive GPIOs
(CLK=GPIO18, CMD=GPIO19, DAT0..3=GPIO20..23).

Set CIRCUITPY_SDIOIO = 1 and add the standard SDIO_CLOCK / SDIO_COMMAND /
SDIO_DATA0..3 pin aliases plus the SDIO_DATA four-pin tuple, matching the
Metro RP2350 board's pattern so board.SDIO_DATA works out of the box.

Tested on hardware: mounts at 25 MHz 4-bit and benchmarks ~9.6 MB/s write,
~8.1 MB/s read (bulk 4096x16) vs ~1.9 / 1.8 MB/s over the SPI auto-mount on
the same board and card -- roughly a 5x throughput improvement. The vendored
SdFat PIO driver builds cleanly for RP2040 (the RP2350-only gpio_base block
compiles out); firmware fits at 92% of the FLASH region.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@mikeysklar mikeysklar changed the title raspberrypi: enable sdioio on Feather RP2040 Adalogger sdioio on Feather RP2040 Adalogger Jul 3, 2026
@FoamyGuy FoamyGuy merged commit b55169f into FoamyGuy:rpi_sdioio Jul 3, 2026
16 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants