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

User avatar
By twinkel
#12466 Hello there,
After some experimenting on a breadboard my ESP-01 module did not respond normally after flashing new code.

The effect is that the unit only responds normally to the uart download mode (GPIO0=0 while reset), but reflashing NodeMCU with esptool does not solve anything.
Sometimes, the boot report is undecipherable at any baudrate (normally 76800).
Sometimes, at 115200 baud, between all the rubbish on my terminal, a FLASH ERROR is reported.

I have read the flash contents to disk (with esptool) in order to do a binary compare with the original, apparently the flash is ok, because the downloaded code matches the original.

This now happened also with a second unit. The only thing I can think of is, the ESP somehow does not like the response from the 2 connected DS18B20's (I have tried both GPIO0 and GPIO2). In the beginning, when it all still worked, It read some erratic temperatures like 85 C which slowly went down to a normal 20 C-22 C range.

Both ESP-01 are getting warm now when connected in another board and there is no way I can get them to give me the NodeMCU version string or prompt. There is data printed but i can find no baudrate to help me read it. Is there anything I can do to investigate more on these units?
What can I do to prevent a third ESP-01 break in connection with 1 or 2 DS18B20's?
User avatar
By jra
#12502 I have an ESP-01 reading three DS18B20's all connected to GPIO2 without any issues. What sort of pullup resistors are you using on GPIO0/GPIO2/RST/CH_PD? I am using fairly weak pullups (10K) on all four of these pins and everything seems to be stable
User avatar
By twinkel
#12531 @HolgerW I take your point of the current limiting resistor and the ESP01 units, still the internet is flooded with examples of this combination, as @jra also proves. I used a 4k7 pull-up.

I Investigated the problem a bit more and managed to get both ESP01's out of this state by applying the following command (under linux):
Code: Select all./esptool.py  --port /dev/ttyUSB1 --baud 115200 write_flash 0x7e000 blank.bin

where blank.bin is a file of 4096 bytes with data = 0xff (see https://github.com/espressif/esp8266_at/tree/master/bin).

I got this idea because somebody documented a similar solution at https://github.com/nodemcu/nodemcu-firmware/issues/307. Only in my case it wasn't the boot loader that solved it. Alternatively, one can of course also make a full 512k copy of a working ESP01 and program that in the suspect ESP01.

I assume a power surge brought the flash contents in a state that NodeMCU could not recover from.

BTW it was a MEM CHCK FAIL!! that was reported when entering download mode (115200 baud) when the unit was inoperable.