SparkFun Forums 

Where electronics enthusiasts find answers.

Have questions about a SparkFun product or board? This is the place to be.
By wrongbat
#186773
Hi there!

I've followed this guide: https://learn.sparkfun.com/tutorials/es ... okup-guide, but for some reason the arduino can't talk to the ESP8266 module. I get the following output:
Press any key to begin.

Press any key to begin.

Error talking to ESP8266.
Error: 0
Looping forever.
The error appears instantly after I key in some letters and press enter. The switch on the ESP8266 is set to SW, as per instructions in the guide. Things are so completely failing to work that I'm most likely doing something wrong, but I can't figure out what :). Any ideas? Thank you!
By Valen
#186785
The arduino (what board?) can't talk to the ESP shield indeed. Except your output does not match what the code does. You have twice the message "Press any key to begin." That can only happen once in the code, unless after the first time the Arduino somehow resets itself. Or did you do that manually, but forgot to clear the serial log?

The switch should be set to SW before you upload the program to the Arduino. But leaving it there is best.
Did you need to solder anything on the ESP shield? Those pinheaders perhaps? Any chance of a solderbridge to other pins or traces on the PCB? Pictures would help to identify those.
By Clark
#186835
My shield will do this occasionally (using the shield for the first time tonight on an Uno R3), but if I completely power down the Uno and shield the sketch will work again.

This is somewhat problematic though in some projects. I'd like to know the correct way to reliably restart an ESP sketch without having to power down the electronics.

Happy Holidays
Clark
By Valen
#186854
The reset switch on the board only resets the Arduino and restarts it's program. If you want to reset the ESP8266 chip and make it reboot it's firmware/bootloader (or code if you programmed it) then you should temporarily connect the broken out RST pin on the side to ground. That resets the ESP8266 (alone).
By Clark
#186936
So I may have burnt out my ESP shield by tying an UNO digital pin to the ESP's RST pin. Sure, I can write out LOW to reset the ESP, but otherwise I'm writing out HIGH which I guess is 5V. The ESP is spec'd for 3v. Now the ESP's blue light will not come on. Think it's dead?
By Valen
#186945
That is certainly a possibility, but not a certain case. The blue led indicates an internal state of Wifi being connected to an accespoint or other devices being connected to it. If it is turned off then Wifi is disconnected or not configured. If the ESP8266 does not work then obviously this will not work. But if you made a mistake in providing the correct SSID settings for your wifi then this is also a possibility.

The led is connected to GPIO5 of the ESP8266 and not to anything else as far as I understand. It is broken out right next to the Reset pin on the side though. Any chance of there being a short between them? Because if the ESP8266 tries to light up this led, it would immediately reset itself through that.

If you program an empty sketch into the Redboard, and then set the switch to the HW side and power cycle the redboard/shield, does it not send data on the serial connection to the pc? Do the RX and TX lights on the redboard light up then?

To protect it you should have put a voltage divider between the Redboard pin and the ESP8266 reset pin. Like at about 1/5th of this page:
http://iot-playground.com/2-uncategoris ... connection
By jmatbastos
#199543
After confirming that the esp8266 chip was ok by talking AT commands with the chip (using a USB to TTL adapter connected to the programming socket), I came to the conclusion (confirmed with a multimeter) that the SW-HW switch was defect.
SOLUTION: solder short-circuit the upper two pins (center pin and SW pin) and the lower two pins (center pin and SW pin) of the switch, making the connection of the esp8266 RX and TX pins to the arduino 8 and 9 digital pins permanent.
By jmatbastos
#199544
When the power comes from the power supply, I also had problems starting the arduino (Uno) board with the shield attached, and had to use the same solution as with the ethernet shield, placing a capacitor between the GND and the RESET pins of the arduino, thus delaying the power on of the arduino board.

Using an extra Arduino Stackable Header Kit, to make more distance between the arduino and the shield, solved the interference problem.
By gtanyware
#199933
I'm getting the same error message the first time I try to use a just-arrived shield with an ELEGOO UNO R3. Everything else on this Arduino has worked so far and the board is identified as a Genuino, but could there be an incompatibility? PWR is on and STAT flashing; UART set to SW and running ESP8266_Shield_Demo with the correct character strings in place. Checked carefully for solder bridges, etc.
By gtanyware
#199952
Looks like the solution - in my case at least - may be simple. The ESP8266_Shield_Demo code starts with a call to esp8266.begin(). If this fails that's the end of things. In ESP8266_GPIO_Blink, however, the code waits for a second then retries. I find it frequently takes 2 attempts but it always gets there in the end if a retry loop is included.