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

User avatar
By Fotonic
#39650
martinayotte wrote:When I've upgraded some of my ESPs, one wasn't working, looking with magnifier, I saw that one soldering was bad.
Such mistakes can be done easily since the bigger Flash are a bit larger than old ones.
Your can use esptool.py to read flash_id, if it doesn't read it, maybe it is soldering problem.


Its been my first fear too so the first thing I've done has been re-checking solder points. All was ok, used flux paste and good tin.

Doing some research, I've read somewhere that ESP tool may not have all flash id chips and if someone founds an id which is not recognized he should send a message to developers to include it into application.
Maybe this is the cause, programmers find a UFO (Undefined Flash Object :D ) and don't know how to talk to it to memory map application and download it. Just my opinion...
User avatar
By eriksl
#40166 Winbond has a whole range of flash chips in this series, if you replace it with a bigger one, it will just work (tested with both 16 Mbits and 32 Mbits versions). Be aware though that 32 Mbits chips are larger (210 mil) as the usually applied 4 Mbits versions (150 mil), as does SOME of the 16 Mbits SOIC packages. So to be trouble free, use the 150 mil 16 Mbits version, it's something like 25Q16DVSNIG IIRC. On the chip it's marked as 25Q16DVSIG. That's the 150 mil version. The DVSSIG package is 210 mil and is much easier to come by, but you were warned ;)

The 16 Mbits is just big enough to hold two 1 mbyte OTA images with bank switching (so the same image, same addresses) can be used for both slots.

See here: http://www.winbond-usa.com/resource-fil ... 14_web.pdf
User avatar
By Fotonic
#40167
eriksl wrote:Winbond has a whole range of flash chips in this series, if you replace it with a bigger one, it will just work (tested with both 16 Mbits and 32 Mbits versions). Be aware though that 32 Mbits chips are larger (210 mil) as the usually applied 4 Mbits versions (150 mil), as does SOME of the 16 Mbits SOIC packages. So to be trouble free, use the 150 mil 16 Mbits version, it's something like 25Q16DVSNIG IIRC. On the chip it's marked as 25Q16DVSIG. That's the 150 mil version. The DVSSIG package is 210 mil and is much easier to come by, but you were warned ;)

The 16 Mbits is just big enough to hold two 1 mbyte OTA images with bank switching (so the same image, same addresses) can be used for both slots.

See here: http://www.winbond-usa.com/resource-fil ... 14_web.pdf


Thanks, I've already ordered some Winbond flash chips and while I wait for them I was experimenting with Microchip chips too.

So you confirm me that once changed the flash with a bigger one it's sufficient to select that memory size in Arduino IDE and all will work out of the box like before...
So if Microchip's flash respects voltages, pinout and supports QIO what can be the reason it's not woring? :/
User avatar
By eriksl
#40168 I have never used Arduino (nor have I any intention to do so), so I can't tell you anything about that subject.

The Winbonds will certainly work (if from this series).

The Microchip ones? No idea. It's not at all certain they're using the some protocol. Having the same pinout is not sufficient. So I'd say stay safe and use Winbond. They're only a about $1 a piece.