ESP8266 not responding with SD card on 2nd SPI interface

I got a Waveshare SD card working on SPI on an ESP32 (the only peripheral) but when putting it on the 2nd SPI interface on the ESP8266 the MCU locks up. Removing the GND/3.3V from the SD card and the MCU is fine. The ESP8266 has a BMP180 on I2C and an RTC and SX1278 on the other SPI interface. Is it just case of too much load on the MCU? I read that SD cards prefer their own SPI interface so I put it on SDD1/SDCMD/SDD0/SDCLK but it hangs the ESP8266. The RTC/SX1278 are on the other SPI interface sharing the MOSI/MISO/SCLK lines.

If I try to upload to the ESP8266 with the SD card active it just says:

"Timed out waiting for packet header".

thanks.

I found this question so removed the SD card from the SD board and the MCU is fine and I can upload the sketch and all the peripherals work. If I put the SD card back in the slot, the MCU hangs and times out if I try to upload. It doesn't run the sketch that was previously working.

Then I found this information that says:

the SPI interface with ID 0 is used for the communication of the flash chip

and this that says SPI0 is used for flash memory so having the SD card on that SPI interface means the MCU is trying to boot from the SD card.

Daisy chaining the SD card on the RTC/SX1278 SPI solves the bootup and upload. Will see if the coding works.

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.