Hi,
I'm new to Arduino programming and am undertaking a project using a NodeMCU board.
I am having trouble uploading a sketch to my NodeMCU board. I have had previous success uploading the same sketch to the board, but seemingly without changing anything, the board gives me the following verbose error:
Arduino: 1.8.7 (Windows Store 1.8.15.0) (Windows 10), Board: "NodeMCU 0.9 (ESP-12 Module), 80 MHz, Flash, 4M (1M SPIFFS), v2 Lower Memory, Disabled, None, Only Sketch, 9600"
Sketch uses 296336 bytes (28%) of program storage space. Maximum is 1044464 bytes.
Global variables use 31696 bytes (38%) of dynamic memory, leaving 50224 bytes for local variables. Maximum is 81920 bytes.
C:\Users\TyB\Documents\ArduinoData\packages\esp8266\tools\esptool\0.4.13/esptool.exe -vv -cd nodemcu -cb 9600 -cp COM6 -ca 0x00000 -cf C:\Users\TyB\AppData\Local\Temp\arduino_build_573006/BareMinimum.ino.bin
esptool v0.4.13 - (c) 2014 Ch. Klippel ck@atelier-klippel.de
setting board to nodemcu
setting baudrate from 115200 to 9600
setting port from COM1 to COM6
setting address from 0x00000000 to 0x00000000
espcomm_upload_file
espcomm_upload_mem
setting serial port timeouts to 1000 ms
opening bootloader
resetting board
trying to connect
flush start
setting serial port timeouts to 1 ms
setting serial port timeouts to 1000 ms
flush complete
espcomm_send_command: sending command header
espcomm_send_command: sending command payload
read 0, requested 1
trying to connect
flush start
setting serial port timeouts to 1 ms
setting serial port timeouts to 1000 ms
An error occurred while uploading the sketch
flush complete
espcomm_send_command: sending command header
espcomm_send_command: sending command payload
read 0, requested 1
trying to connect
flush start
setting serial port timeouts to 1 ms
setting serial port timeouts to 1000 ms
flush complete
espcomm_send_command: sending command header
espcomm_send_command: sending command payload
read 0, requested 1
resetting board
trying to connect
flush start
setting serial port timeouts to 1 ms
setting serial port timeouts to 1000 ms
flush complete
espcomm_send_command: sending command header
espcomm_send_command: sending command payload
read 0, requested 1
trying to connect
flush start
setting serial port timeouts to 1 ms
setting serial port timeouts to 1000 ms
flush complete
espcomm_send_command: sending command header
espcomm_send_command: sending command payload
read 0, requested 1
trying to connect
flush start
setting serial port timeouts to 1 ms
setting serial port timeouts to 1000 ms
flush complete
espcomm_send_command: sending command header
espcomm_send_command: sending command payload
read 0, requested 1
resetting board
trying to connect
flush start
setting serial port timeouts to 1 ms
setting serial port timeouts to 1000 ms
flush complete
espcomm_send_command: sending command header
espcomm_send_command: sending command payload
read 0, requested 1
trying to connect
flush start
setting serial port timeouts to 1 ms
setting serial port timeouts to 1000 ms
flush complete
espcomm_send_command: sending command header
espcomm_send_command: sending command payload
read 0, requested 1
trying to connect
flush start
setting serial port timeouts to 1 ms
setting serial port timeouts to 1000 ms
flush complete
espcomm_send_command: sending command header
espcomm_send_command: sending command payload
read 0, requested 1
warning: espcomm_sync failed
error: espcomm_open failed
error: espcomm_upload_mem failed
This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.
It seems whenever I hold down the FLASH button while plugging the board in, the error reads as such (non-verbose):
Arduino: 1.8.7 (Windows Store 1.8.15.0) (Windows 10), Board: "NodeMCU 0.9 (ESP-12 Module), 80 MHz, Flash, 4M (1M SPIFFS), v2 Lower Memory, Disabled, None, Only Sketch, 9600"
Sketch uses 296336 bytes (28%) of program storage space. Maximum is 1044464 bytes.
Global variables use 31696 bytes (38%) of dynamic memory, leaving 50224 bytes for local variables. Maximum is 81920 bytes.
Uploading 300480 bytes from C:\Users\TyB\AppData\Local\Temp\arduino_build_573006/BareMinimum.ino.bin to flash at 0x00000000
warning: espcomm_send_command: didn't receive command response
warning: espcomm_send_command(FLASH_DOWNLOAD_BEGIN) failed
error: espcomm_upload_mem failed
error: espcomm_upload_mem failed
This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.
The main difference being that the board is actually attempting to upload the sketch.
Does anyone have any idea why this is happening? Is the board faulty?
I have the proper USB firmware. I've tried varying the upload speed. I've had success previously with 57600. I've tried varying the board selection in the IDE as well.
I've attached a picture of the board (pin D8 is missing).
Any recommendations would be appreciated. Thank you.

