Bench test C of 5 · microSD

microSD on its own SPI bus

2 pads to solder Power: 5 V 3 A on U6, not the laptop Have ready: FAT32 card, 32 GB or less
What you add The blue SPI microSD module
What passing proves The card mounts, reads, writes and keeps up with audio
Already working A: chip, PSRAM, amp at 0x2D · B: both speakers

TipThe module keeps driving MISO even when it isn’t selected, so it gets four pins of its own. Tests C and D can never get in each other’s way.

Wiring · test C · 6 wires · 2 pads to solder
Louder-ESP32-S3 · K1 nothing modified
test C
microSD module SPI · XC6206 · labels say SO and SI
Same board wired in test B
test B
Supply + 2 speakers already in place
Test D · PN532 readerP1 and P2 sockets, no soldering
Test E · knob and buttonssockets + pads SD 39, RGB OUT 21, IR IN 07
power ground signal later steps pad = solder · pin = header pin · socket · screw = terminal
Pin budget · Louder-ESP32-S3 rev K1 4 of the build's 13 GPIO wired after test C

Tap a pin to see why it’s free, used or off limits.

this step earlier step later step free on the chip, pad not checked avoid
  • 0, 3, 45, 46 strapping pins: they decide how the chip boots
  • 8, 9, 14–17 wired on the board to the TAS5805M amp
  • 19, 20 USB: flashing and the serial console
  • 26–37 flash and octal PSRAM inside the N8R8 module
  • 7 usable, but it shares the IR receiver
  • 43, 44 UART0: fine for the SD card, the console moves to USB

Wire it, then check before power

0 of 5
  1. ⚠ Caution · no fuse on this board The barrel jack and U6 share the same two nets, and the M7 diode clamps across the rail. A reversed supply conducts straight through it. Meter first, plug second.

Flash and check

Power: 5 V 3 A supply on U6
pio run -e c_sd -t upload -t monitor

Or flash it from the browser, desktop Chrome or Edge, with the build note. Blank board? Do the first flash once.

What you should see
TEST C - microSD
card : SDHC, 30528 MB
root:
 4213 test.txt
write : ok
read back: written by test C
write rate: 480 kB/s over 1065 ms
TEST C done.

Pass: the card mounts, the file list matches, and the write reads back. A 128 kbps MP3 needs 16 kB/s; anything in the hundreds is fine.

On my bench

✓ PASSED ON THE PADS · SANDISK ULTRA 32 GB · 371 KB/S · MISO ON 43, CS ON 44 · VCC ON 5 V

It passed on the P1/P2 sockets first (c_sd_sockets, 376 kB/s), then on the pads. The UART header on my board already has pins; if yours is bare, that’s three more pads.

Parts list with shop links, pin map, all five tests as one PDF. Unsubscribe is one click.

What went wrong on my bench

  • CS and MISO came out the reverse of the plan. the plan c_sd_scan tried both and found MISO on 43, CS on 44. Everything on this page already uses them.
  • The module holds MISO even when it isn’t selected. the module Its buffer’s output-enable is tied on. Rather than modify it, the card gets its own pins.
  • The card never answered its first command. me Every time it was wiring: pins in bare holes without solder, two wires swapped, one a position off. Run c_sd_sockets on P1/P2 first to rule the pads out.
  • An older sheet said 3.3 V would starve the card. the plan It assumed an AMS1117. This module has an XC6206, so 3.3 V works. 5 V from U6 still leaves more headroom.

If yours fails

GO_IDLE_STATE failed / cmd: 0x00
Wiring. Check each wire against the label at both ends, one at a time.
MOUNT FAILED
In order: module on 3.3 V instead of 5 V; MISO and MOSI swapped; a dry joint; an exFAT card. Cards above 32 GB usually arrive exFAT.
Mounts, then errors mid-file
Wire length or a poor ground. Shorten everything; give the module its own ground.
Works cold, fails after test B ran
Supply current. Use the 3 A adapter for this test too.
Next · test D The PN532 reader. Six jumpers into the sockets, no soldering on the board. Go to D →