4
votes

I bought esp8266 with serial wifi wifi card I connect RX to TX; TX to RX; VCC to VCC; GRD to GRD; I cant communicate with the board not if program mode and not in UART mode; the reset do nothing.

the red led on the board is on.

I connected the wifi serial to Arduino uno board. try to upload sketch i got the following error:

warning: espcomm_sync failed
error: espcomm_open failed
error: espcomm_upload_mem failed

Any help or guides will help me to solve the issue.

12
Have you researched on the web on how to connect the device and how it works? There are many resources available. You can also post your code here so we can see what you are doing.Blurry Sterk
I spent days try to find how to work with the card, without success. I cant upload any program to it, I got the same error each time. do I need to be in uart or program mode to upload the code? why I can't get response to AT commands from serial monitor?Gilad Ravid
Do you know that there are different formats of the ESP8266? Which one do you have? Do NOT comment; post a picture. Where is your code effort? Did you try other ways of communicating with the ESP? Did you search right here on SO for ESP8266? On quite a few of them lately you will see my name. Expand your question to include as much info as possible so we can see your are serious and are not just looking for a freebie.Blurry Sterk
thanks for you comments, It is my first Arduino project. I have a "Serial wifi" (which pictured in my original question). it is an esp-07 mounted on a serial board with four legs and two switches. (I didnt find any manual for it). I understood that the first attempt should be to connect the serial wifi to Arduino board and send simple "AT" command from the serial monitor. unfortunately this not work for me. I got no response from the board. I will appreciate any hints / help / source that will explain me how to do it.Gilad Ravid
No. The first attempt should be to connect to the device directly from a terminal like CoolTerm. Then you issue the commands from there. It removes the intermediary Arduino and thus you will be able to see what happens. Then you will see which firmware version it has and also see the formatting of the responses which is the most important as that will be used to get the data you need when reading the responses from the Arduino.Blurry Sterk

12 Answers

9
votes

Since I have had numorous of problems with my ESP8266 modules, this is what I generally watch for:

  • Output is 3.3v
  • Swap over tx and rx. Some boards have them swapped for some reason (searched for days for this!!)
  • When uploading the code, first the code compiles, then the code uploads. During the compile process, keep the reset button (or pin) pressed. As soon as you see the "uploading" status message, you can release it.
  • Make sure the GPIO0 is connected to the ground and (depending on which version you have) the GPIO15 as well.
  • When grounding the GPIO0 and GPIO15, use a resistor for each (between 2K and 10K will do).
2
votes

I've spent two nights trying to upload firmware so I'll just repeat what helped me since there's not so many solutions:

  • First in Serial Monitor make sure that your chip responses to AT commands. There's no point in going further without achieving it. If you fail here then it's time to check your commutation, power source, etc.
  • While uploading: 1. Ground GPIO-0 pin. 2. In Arduino IDE press Upload button. 3. Code starts compiling. 4. As soon as you see that code starts uploading ground RST pin for just a blink. Before I reseted the chip too early so I had sync failed problem as you did. It took me a while to "catch" this moment for resetting the chip. Still I upload new firmware in 4-5 takes.
1
votes

Before flashing firmware, please hold FLASH button, and press RST button once. When our firmware download tool released, it will flash firmware automatically and needn't press any button

0
votes

I have this really weird issue where grounding GPIO 0 didn't work for me, but after a lot of trial and error I managed to upload the sketch connecting directly both gpios to ground in the arduino board and it worked. Really strange.

0
votes

I had the same issue. In my case, I was uploading while in another terminal program I was checking for serial data. After I closed the serial monitor (and let Arduino IDE use the serial port) the problem was resolved partially.

The other half of the problem involves carefully pressing the button GPIO0 and then RESET. This helped me achieving that.

0
votes

I had the same issue, but after I set the Programmer to "AVR ISP" in the Arduino IDE/Tools, after that the upload was successful and it worked fine.

Hope it helps.

0
votes

First you have to make sure that the Arduino IDE has the ESP8266 libraries installed. To do that, go to file>preferences and under Additional Boards Manager URLS, paste this link:

http://arduino.esp8266.com/stable/package_esp8266com_index.json

Then, go to tools>board>boards manager. Scroll until you find the link for ESP, than download it. Once you select all the info for the board change the programmer to "AVR ISP"

Finally, to download the code, hold down the GPIO0 button and press the reset button once. Finally, hit download!

To use serial monitor, you may need to use the 115200 speed as it is not the default. Hope this helps!

0
votes

Please downlode and install these driver as per OS i spent 6 hours today and finally this was the solution. https://www.silabs.com/products/mcu/Pages/USBtoUARTBridgeVCPDrivers.aspx

0
votes

Look follow the leads and you will get the proper output as 'OK' in reply to AT command, just search for Arduino15 file in C directory of your computer, it will be in somewhere at C/users/app data and delete it, then set the Arduino to arduino uno board or whatever board you are using and connect the Esp8266 as, UNO --- ESP8266 RX ----- RX TX ----- TX GND --- GND 3.3V --- VCC and CH_PD Once Connected open the Serial Monitor and set "Both NL & CR" and Baud to 9600. Send "AT" to test. If nothing comes up try different baud rates such as 115200 or 57600 and retest. If you get "OK" reply then all is working.

0
votes

I just bought the Wemos D1 and had the same problem: I could not upload my sketches. There were several reasons for this:

1) I did not have the CH340G drivers loaded on my Mac. Both Win and Mac platforms need these drivers. Linux does not. I found my drivers at http://sparks.gogo.co.nz/ch340.html

2) You need to add the board to your Arduino IDE. You can find the steps to do that at http://www.beerandchips.net/2016/01/24/wemos-d1-hands-on-with-the-new-arduino-compatible-esp8266-dev-board/

Once I completed those 2 steps (be sure to select the serial port) everything worked great and I can upload my sketches with no difficulty.

0
votes

I had (too many/wrong) COM port(s). Find the right one and I't fine.

-1
votes

This worked for me this time in the following way to successfully upload sketch from IDE to esp8266 via arduino:

1) IDE Tools menu: upload speed 115200

2) opt this one in tools menu:   Programmer- AVR ISP
3) Keep serial monitor closed. If com port not visible under Tools, disconnect and reconnect USB from laptop
4)Reset Arduino
5)Connect GPIO0 of 8266 to VCC(3.3V) for a blink and remove
6) Connect reset of 8266 to gnd for a blink and remove
7)GPIO0 grounded..keep this one gnded for the upload period

Hope this one works..