Your new topic does not fit any of the above??? Check first. Then post here. Thanks.

Moderator: igrr

User avatar
By marciokoko
#87420 My setup is an UNO with a ESP8266 WiFi shield. Ive uploaded this sketch to it before, I just dont remember. Im getting this error below.

Ive selected the NodeMCU 0.9 ESP12 which I got from a picture of my blog of when I did this a few months back. I have my UNO Rx/Tx pins bent outwards (so as to NOT connect to shield 0&1 pins) but instead thru jumpers connected to the Rx/Tx pins on the top side of the shield:

Code: Select v2.8
Serial port /dev/cu.usbmodem14501
Connecting........_____....._____....._____....._____....._____....._____.....____Traceback (most recent call last):
  File "/Users/mars/Library/Arduino15/packages/esp8266/hardware/esp8266/2.7.1/tools/", line 65, in <module>
  File "/Users/mars/Library/Arduino15/packages/esp8266/hardware/esp8266/2.7.1/tools/esptool/", line 2890, in main
  File "/Users/mars/Library/Arduino15/packages/esp8266/hardware/esp8266/2.7.1/tools/esptool/", line 483, in connect
    raise FatalError('Failed to connect to %s: %s' % (self.CHIP_NAME, last_error))
esptool.FatalError: Failed to connect to ESP8266: Timed out waiting for packet header
esptool.FatalError: Failed to connect to ESP8266: Timed out waiting for packet header
User avatar
#87716 Hi marciokoko,

Your hardware setup is a little bit mysterious and hard to understand. Also it isn't clear if you are using an arduino UNO (ATMEL CPU) or an NodeMCU (ESP8266 CPU) - you are mixing that up a little bit.

But expecting you do have an ESP8266 and looking at your posted log, your ESP is not entering the boot loader. The NodeMCU has a little 'hardware' on board that uses special lines of the RS232 (DTR+RTS) to reset the chip and directly after resetting it to enter the boot loader mode - so that you can upload your code.

If you don't have a NodeMCU you need to enter the boot loader by yourself. You usually do that by resetting the chip (pulling RST pin to ground for an instant) and then pulling GPIO0 or GPIO1 to ground for an instant right after the reset. You can do that procedure right at the moment when you see 'Connecting...'