SD Pull-up Requirements

[中文]

Espressif hardware products are designed for multiple use cases which may require different pull states on pins. For this reason, the pull state of particular pins on certain products needs to be adjusted to provide the pull-ups required in the SD bus.

SD pull-up requirements apply to cases where ESP32-C6 uses the SPI or SDMMC controller to communicate with SD cards. When an SD card is operating in SPI mode or 1-bit SD mode, the CMD and DATA (DAT0 - DAT3) lines of the SD bus must be pulled up by 10 kΩ resistors. SD cards and SDIO devices should also have pull-ups on all above-mentioned lines (regardless of whether these lines are connected to the host) in order to prevent them from entering a wrong state.

This document has the following structure:

Overview of Compatibility

This section provides an overview of compatibility issues that might occur when using SDIO (secure digital input output). Since the SD bus needs to be connected to pull-ups, these issues should be resolved regardless of whether they are related to master (host) or slave (device). Each issue has links to its respective solution. A solution for a host and device may differ.

Non-Espressif Hosts

Please make sure that your SDIO host provides necessary pull-ups for all SD bus signals.

Solutions

No Pull-ups

When using a development board without pull-ups:

  • If your host and slave device are on separate boards, replace one of them with a board that has pull-ups.

  • Attach external pull-ups by connecting each pin which requires a pull-up to VDD via a 10 kΩ resistor.


Was this page helpful?