Use this forum to chat about hardware specific topics for the ESP8266 (peripherals, memory, clocks, JTAG, programming)

User avatar
By raichea
#87532 I've been using an old (2 or 3 years ago) D1 Mini v2.x for a project and it's quite a while since I programmed one. I've moved from the Arduino IDe to using PlatformIO and everything is working as expected. More recently, I bought a new v3.0.0 D1 Mini and found I was getting checksum errors after uploading my application.

After investigating, I discovered that the older board is quite happy using QIO but the new board has to use DIO and fails if I use QIO. Digging further with the flash_id tool, I found the following:

Old Wemos v2.x:

Output from esptool.py flash_id
Manufacturer: ef
Device: 4016
Detected flash size: 4MB

...which implies: WINBOND_NEX_W25Q32_V 0x4016 /* W25Q32BV; W25Q32FV in SPI mode (default) */

New Wemos v3.0.0:

Output from esptool.py flash_id
Manufacturer: 68
Device: 4016
Detected flash size: 4MB

...which implies:
nothing, as the manufacturer is not listed in the flashrom source code found at;
https://review.coreboot.org/cgit/flashr ... ashchips.h

The v3.0.0 board doesn't have the metal can, so I can see that the flash chip is a BoyaMicro 25032BSSIG. The BoyaMicro website doesn't have this specific chip listed, but their other 32Mb chips support quad modes. I'm therefore wondering if the issue is that the flash chip is not recognised so defaults to DIO mode.

I haven't had the opportunity to trace out the tracks to see if the two extra ESP pins are connected to the flash chip, but wondering if anyone else has any relevant info/insight?

Cheers, Steve
User avatar
By raichea
#87572 I've checked the circuit and the CS and WP pins are wired to the ESP chip as expected, so I guess it is a matter of support for QIO for this particular flash memory not being present.
User avatar
By raichea
#87631 Thanks for the link, but I have it working with DIO. The problem is that I think QIO should work fine, but the specific memory chip is not supported. What I'd like to know is how to flag this to the developers with the hope that support will be added.