Chat freely about anything...

User avatar
By sza2
#11826 Hi,

I googled a lot to find any relevant information on booting ESP8266 from SD card.

There are several ESP8266 related pages describes that pulling GPIO15 (MTD0) high initiate the chip in SD card mode.

However none of them has further info about using this mode.

So, I'm curious about
- which ESP8266 pins used in SD mode? (actually 4bit SD mode and 25Q40 Quad mode have quite similar pins used, but no exact info)
- which mode should one use?; SPI, 1bit SD or 4bit SD
- what kind of data should the SD card contain? I assume the bootloader does not support partitions and file systems (eg. FAT)

I removed the 25Q40 from one of my modules and attached an SD card socket (4bit mode, D0-D3, CMD, CLK) to the module.

If I set my serial port to 76800 I can see the boot messages:
- if there is no SD card in the socket, the bootloader reports bootmode 7,0 and in the next line "waiting for host"
- if I insert an SD card bootmode changes to 7,2
First digit (7) seems OK, (all lines (GPIO15, GPIO2, GPIO0) are '1'). I did not find anything about the second digit.

Could someone help how to boot from SD?


User avatar
By Dave S
#17967 There is a new variant of the ESP8266-12 that breaks out what appears to be the SD pin requirements. It is probably coming from the 25Q flash chip, but I have not been able to find any more info on it. Still searching...

Here is an interesting post on this forum regarding SD Cards:
User avatar
By WanaGo
#18288 Has anyone got this working?

I am using the Arduino IDE, and wanting to use the ESP-12E to talk to an SD card on the new pins it breaks out, but unsure what to connect to where.