Connecting Macronix QSPI Flash to ESP32

alexturner
Posts: 4
Joined: Tue Oct 29, 2019 12:23 pm

Connecting Macronix QSPI Flash to ESP32

Postby alexturner » Mon Apr 27, 2020 1:48 am

Hi there,

I'm having a difficult time connecting an Macronix mx25R6435FM2IH0 to an ESP32s' QSPI bus and was looking for some advice. I've removed the chip from my board and have connected it directly to an ESP-WROOM development module as follows:

Code: Select all

Q = GPIO12
D = GPIO13
CLK = GPIO14
CS = GPIO15
WP = GPIO2
HD = GPIO4
and have the chip configured on the HSPI bus as follows (using the sample code in esp-idf)

Code: Select all

    const spi_bus_config_t bus_config = {
        .mosi_io_num = 13,
        .miso_io_num = 12,
        .sclk_io_num = 14,
        .quadwp_io_num = 2,
        .quadhd_io_num = 4,
    };

    const esp_flash_spi_device_config_t device_config = {
        .host_id = HSPI_HOST,
        .cs_id = 0,
        .cs_io_num = 15,
        .io_mode = SPI_FLASH_QIO,
        .speed = ESP_FLASH_40MHZ
    };
I have the sdkconfig value for autodetection of MX chips set, however I'm seeing the following when I run the application:

Code: Select all

I (341) spi_flash: detected chip: generic
E (341) spi_flash: failed to get chip size
E (341) example: Failed to initialize external Flash: ESP_ERR_FLASH_UNSUPPORTED_CHIP (0x6005)
A couple of things that I'm finding interesting; this particular chip doesn't have a HOLD pin instead having a RESET pin; will that make it incompatible with the driver? It'd be super helpful if ESP were able to release the source for the driver in debugging this one as I'm finding it a little challenging trying to work out where it's going south.

Unfortunately, I don't have access to a suitable LA to test what's coming out of the chip or the ESP. The wire length is fairly short to the chip which still doesn't rule out parasitic capacitance, however I've tried turning the clock rate well down to over come that.

Any ideas?

Who is online

Users browsing this forum: No registered users and 352 guests