Post topics, source code that relate to the Arduino Platform

User avatar
By hary
#84740 Hi.

I have a few Lolin V3 NodeMCU esp8266 board and I use Arduino 1.8.9 to program them.

They all seem to work except 1 of them that gives me the following error : it used to work but after doing something, it stopped working. Is there any way possible to get it back working properly ?

Le croquis utilise 313020 octets (29%) de l'espace de stockage de programmes. Le maximum est de 1044464 octets.
Les variables globales utilisent 27948 octets (34%) de mémoire dynamique, ce qui laisse 53972 octets pour les variables locales. Le maximum est de 81920 octets.
esptool.py v2.6
2.6
esptool.py v2.6
Serial port /dev/ttyUSB0
Connecting....
Traceback (most recent call last):
Chip is ESP8266EX
File "/home/harold/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/tools/upload.py", line 25, in <module>
esptool.main(fakeargs)
Features: WiFi
MAC: 2c:3a:e8:0f:26:9e
Uploading stub...
Running stub...
Stub running...
Configuring flash size...
File "/home/harold/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/tools/esptool/esptool.py", line 2694, in main
detect_flash_size(esp, args)
File "/home/harold/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/tools/esptool/esptool.py", line 2073, in detect_flash_size
flash_id = esp.flash_id()
File "/home/harold/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/tools/esptool/esptool.py", line 567, in flash_id
return self.run_spiflash_command(SPIFLASH_RDID, b"", 24)
File "/home/harold/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/tools/esptool/esptool.py", line 812, in run_spiflash_command
old_spi_usr = self.read_reg(SPI_USR_REG)
File "/home/harold/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/tools/esptool/esptool.py", line 475, in read_reg
val, data = self.command(self.ESP_READ_REG, struct.pack('<I', addr))
File "/home/harold/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/tools/esptool/esptool.py", line 332, in command
p = self.read()
File "/home/harold/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/tools/esptool/esptool.py", line 277, in read
return next(self._slip_reader)
File "/home/harold/.arduino15/packages/esp8266/hardware/esp8266/2.5.2/tools/esptool/esptool.py", line 1877, in slip_reader
raise FatalError("Timed out waiting for packet %s" % waiting_for)
esptool.FatalError: Timed out waiting for packet header
esptool.FatalError: Timed out waiting for packet header


I've been checking some info and I've found that GPIO 0 (D3 on the NodeMCU board) has to be connected to GND to put the ESP into flash mode.
When I measure D3/GND, it gives 1.90V.
If I put a 15O Ohm resistor to shunt D3 to GND, I ma close to the 12mA max output current but I still have 1.5V on D3 !
When I press the FLASH button on the board, it only goes down to 1.8V.
It seems that D3 (or GPIO 0) would never go down to 0V, and so the ESP would never enter in flash mode.
I guess my problem has something to do with that, but how I can fix this ?
User avatar
By QuickFix
#84769 I agree with Rudy; it's not worth the time and effort to (try to) fix a cheap board like the NodeMCU.

But, if you want to save the planet and/or are looking for a challenge in your spare time, you could try your luck by using the schematics of an NodeMCU (of a version 0.9, but it's a start). ;)