From this point I can no longer update the code not over OTA, not over Serial. Test while uploading basic "Blink" sketch (#1)
OTA:
Arduino: 1.8.13 (Windows Store 1.8.39.0) (Windows 10), Board:"NodeMCU 1.0 (ESP-12E Module), 80 MHz, Flash, Legacy (new can return nullptr), All SSL ciphers (most compatible), 4MB (FS:2MB OTA:~1019KB), 2, v2 Lower Memory, Disabled, None, Only Sketch, 115200"
Executable segment sizes:
IROM : 228624 - code in flash (default or ICACHE_FLASH_ATTR)
IRAM : 26756 / 32768 - code in IRAM (ICACHE_RAM_ATTR, ISRs...)
DATA : 1248 ) - initialized variables (global, static) in RAM/HEAP
RODATA : 688 ) / 81920 - constants (global, static) in RAM/HEAP
BSS : 24880 ) - zeroed variables (global, static) in RAM/HEAP
De schets gebruikt 257316 bytes (24%) programma-opslagruimte. Maximum is 1044464 bytes.
Globale variabelen gebruiken 26816 bytes (32%) van het dynamisch geheugen. Resteren 55104 bytes voor lokale variabelen. Maximum is 81920 bytes.
C:\Users\Els\Documents\ArduinoData\packages\esp8266\tools\python3\3.7.2-post1/python3 C:\Users\Els\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.7.2/tools/espota.py -i 192.168.1.100 -p 8266 --auth= -f C:\Users\Els\AppData\Local\Temp\arduino_build_468800/Blink.ino.bin
10:19:34 [ERROR]: No Answer
10:19:34 [ERROR]: No Answer
Serial:
Arduino: 1.8.13 (Windows Store 1.8.39.0) (Windows 10), Board:"NodeMCU 1.0 (ESP-12E Module), 80 MHz, Flash, Legacy (new can return nullptr), All SSL ciphers (most compatible), 4MB (FS:2MB OTA:~1019KB), 2, v2 Lower Memory, Disabled, None, Only Sketch, 115200"
Executable segment sizes:
IROM : 228624 - code in flash (default or ICACHE_FLASH_ATTR)
IRAM : 26756 / 32768 - code in IRAM (ICACHE_RAM_ATTR, ISRs...)
DATA : 1248 ) - initialized variables (global, static) in RAM/HEAP
RODATA : 688 ) / 81920 - constants (global, static) in RAM/HEAP
BSS : 24880 ) - zeroed variables (global, static) in RAM/HEAP
De schets gebruikt 257316 bytes (24%) programma-opslagruimte. Maximum is 1044464 bytes.
Globale variabelen gebruiken 26816 bytes (32%) van het dynamisch geheugen. Resteren 55104 bytes voor lokale variabelen. Maximum is 81920 bytes.
C:\Users\Els\Documents\ArduinoData\packages\esp8266\tools\python3\3.7.2-post1/python3 C:\Users\Els\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.7.2/tools/upload.py --chip esp8266 --port COM6 --baud 115200 --before default_reset --after hard_reset write_flash 0x0 C:\Users\Els\AppData\Local\Temp\arduino_build_468800/Blink.ino.bin
esptool.py v2.8
Serial port COM6
Connecting....
Chip is ESP8266EX
Features: WiFi
Crystal is 26MHz
MAC: d8:bf:c0:ff:6d:fe
Uploading stub...
Running stub...
Stub running...
Configuring flash size...
Auto-detected Flash size: 4MB
Compressed 261472 bytes to 193181...
Writing at 0x00004000... (16 %)Traceback (most recent call last):
File "C:\Users\Els\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.7.2/tools/upload.py", line 65, in <module>
esptool.main(cmdline)
File "C:/Users/Els/Documents/ArduinoData/packages/esp8266/hardware/esp8266/2.7.2/tools/esptool\esptool.py", line 2938, in main
operation_func(esp, args)
File "C:/Users/Els/Documents/ArduinoData/packages/esp8266/hardware/esp8266/2.7.2/tools/esptool\esptool.py", line 2374, in write_flash
esp.flash_defl_block(block, seq, timeout=DEFAULT_TIMEOUT * ratio * 2)
File "C:/Users/Els/Documents/ArduinoData/packages/esp8266/hardware/esp8266/2.7.2/tools/esptool\esptool.py", line 104, in inner
return func(*args, **kwargs)
File "C:/Users/Els/Documents/ArduinoData/packages/esp8266/hardware/esp8266/2.7.2/tools/esptool\esptool.py", line 672, in flash_defl_block
self.ESP_FLASH_DEFL_DATA, struct.pack('<IIII', len(data), seq, 0, 0) + data, self.checksum(data), timeout=timeout)
File "C:/Users/Els/Documents/ArduinoData/packages/esp8266/hardware/esp8266/2.7.2/tools/esptool\esptool.py", line 379, in check_command
raise FatalError.WithResult('Failed to %s' % op_description, status_bytes)
esptool.FatalError: Failed to write compressed data to flash after seq 1 (result was C100)
esptool.FatalError: Failed to write compressed data to flash after seq 1 (result was C100)
After power cycling the NodeMCU and trying upload over serial:
Arduino: 1.8.13 (Windows Store 1.8.39.0) (Windows 10), Board:"NodeMCU 1.0 (ESP-12E Module), 80 MHz, Flash, Legacy (new can return nullptr), All SSL ciphers (most compatible), 4MB (FS:2MB OTA:~1019KB), 2, v2 Lower Memory, Disabled, None, Only Sketch, 115200"
Executable segment sizes:
IROM : 228624 - code in flash (default or ICACHE_FLASH_ATTR)
IRAM : 26756 / 32768 - code in IRAM (ICACHE_RAM_ATTR, ISRs...)
DATA : 1248 ) - initialized variables (global, static) in RAM/HEAP
RODATA : 688 ) / 81920 - constants (global, static) in RAM/HEAP
BSS : 24880 ) - zeroed variables (global, static) in RAM/HEAP
De schets gebruikt 257316 bytes (24%) programma-opslagruimte. Maximum is 1044464 bytes.
Globale variabelen gebruiken 26816 bytes (32%) van het dynamisch geheugen. Resteren 55104 bytes voor lokale variabelen. Maximum is 81920 bytes.
C:\Users\Els\Documents\ArduinoData\packages\esp8266\tools\python3\3.7.2-post1/python3 C:\Users\Els\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.7.2/tools/upload.py --chip esp8266 --port COM6 --baud 115200 --before default_reset --after hard_reset write_flash 0x0 C:\Users\Els\AppData\Local\Temp\arduino_build_468800/Blink.ino.bin
esptool.py v2.8
Serial port COM6
Connecting....
Chip is ESP8266EX
Features: WiFi
Crystal is 26MHz
MAC: d8:bf:c0:ff:6d:fe
Uploading stub...
Running stub...
Stub running...
Configuring flash size...
Auto-detected Flash size: 4MB
Compressed 261472 bytes to 193181...
Writing at 0x00004000... (16 %)Traceback (most recent call last):
File "C:\Users\Els\Documents\ArduinoData\packages\esp8266\hardware\esp8266\2.7.2/tools/upload.py", line 65, in <module>
esptool.main(cmdline)
File "C:/Users/Els/Documents/ArduinoData/packages/esp8266/hardware/esp8266/2.7.2/tools/esptool\esptool.py", line 2938, in main
operation_func(esp, args)
File "C:/Users/Els/Documents/ArduinoData/packages/esp8266/hardware/esp8266/2.7.2/tools/esptool\esptool.py", line 2374, in write_flash
esp.flash_defl_block(block, seq, timeout=DEFAULT_TIMEOUT * ratio * 2)
File "C:/Users/Els/Documents/ArduinoData/packages/esp8266/hardware/esp8266/2.7.2/tools/esptool\esptool.py", line 104, in inner
return func(*args, **kwargs)
File "C:/Users/Els/Documents/ArduinoData/packages/esp8266/hardware/esp8266/2.7.2/tools/esptool\esptool.py", line 672, in flash_defl_block
self.ESP_FLASH_DEFL_DATA, struct.pack('<IIII', len(data), seq, 0, 0) + data, self.checksum(data), timeout=timeout)
File "C:/Users/Els/Documents/ArduinoData/packages/esp8266/hardware/esp8266/2.7.2/tools/esptool\esptool.py", line 369, in check_command
val, data = self.command(op, data, chk, timeout=timeout)
File "C:/Users/Els/Documents/ArduinoData/packages/esp8266/hardware/esp8266/2.7.2/tools/esptool\esptool.py", line 337, in command
self.write(pkt)
File "C:/Users/Els/Documents/ArduinoData/packages/esp8266/hardware/esp8266/2.7.2/tools/esptool\esptool.py", line 300, in write
self._port.write(buf)
File "C:/Users/Els/Documents/ArduinoData/packages/esp8266/hardware/esp8266/2.7.2/tools/pyserial\serial\serialwin32.py", line 323, in write
raise writeTimeoutError
serial.serialutil.SerialTimeoutException: Write timeout
de geselecteerde seriële poort serial.serialutil.SerialTimeoutException: Write timeout
bestaat niet of uw board is niet aangesloten.
- I still "see" the IP-address in the ports menu in the IDE (but IP is not responsive to ping requests)
- Windows gives me the "plong/pling" upon disconnect/reconnect from USB
- The serial port seems to have fallen back to baud 74880, as when I set the serial monitor to that baud rate and press the reset button I get:
ets Jan 8 2013,rst cause:2, boot mode:(3,6)
ets_main.c
I hope someone is willing to do this test him/herself to confirm.
WARNING: only way to get your NodeMCU back up and running (at least in my experience) is doing a firmware flash.