0
 /*
 * 115200. Connect GPIO 0 of your ESP8266 to VCC and reset the board
 */

#include <ESP8266WiFi.h>
#include <WiFiClient.h>
#include <ESP8266WebServer.h>
#include <ESP8266mDNS.h>

MDNSResponder mdns;

// Network id and pw
const char* ssid = "MY_ID";
const char* password = "MY_PASSWORD";

ESP8266WebServer server(80);

String webPage = "";

int gpio0_pin = 0;
int gpio2_pin = 2;

void setup(void)
{
  webPage += "<h1>ESP8266 Web Server</h1><p>Socket #1 <a href=\"socket1On\"><button>ON</button></a>&nbsp;<a href=\"socket1Off\"><button>OFF</button></a>    </p>";
  webPage += "<p>Socket #2 <a href=\"socket2On\"><button>ON</button></a>&nbsp;<a     href=\"socket2Off\"><button>OFF</button></a></p>";

  // preparing GPIOs
  pinMode(gpio0_pin, OUTPUT);
  digitalWrite(gpio0_pin, LOW);
  pinMode(gpio2_pin, OUTPUT);
  digitalWrite(gpio2_pin, LOW);

  delay(1000);
  Serial.begin(115200);
  WiFi.begin(ssid, password);
  Serial.println("");

  // Wait for connection
  while (WiFi.status() != WL_CONNECTED)
  {
    delay(500);
    Serial.print(".");
  }
  Serial.println("");
  Serial.print("Connected to ");
  Serial.println(ssid);
  Serial.print("IP address: ");
  Serial.println(WiFi.localIP());

  if (mdns.begin("esp8266", WiFi.localIP()))
    Serial.println("MDNS responder started");

  server.on("/", []()
  {
    server.send(200, "text/html", webPage);
  });

  server.on("/socket1On", []()
  {
    server.send(200, "text/html", webPage);
    digitalWrite(gpio0_pin, HIGH);
    delay(1000);
   });

  server.on("/socket1Off", []()
  {
    server.send(200, "text/html", webPage);
    digitalWrite(gpio0_pin, LOW);
    delay(1000);
  });

  server.on("/socket2On", []()
  {
    server.send(200, "text/html", webPage);
    digitalWrite(gpio2_pin, HIGH);
    delay(1000);
  });

  server.on("/socket2Off", []()
  {
    server.send(200, "text/html", webPage);
    digitalWrite(gpio2_pin, LOW);
    delay(1000);
  });
  server.begin();
  Serial.println("HTTP server started");
}

void loop(void)
{
  server.handleClient();
}

Hi I'm trying to make a wifi webserver with the ESP8266 using an Arduino. The code is in this link: code. I'm following the steps of this site. I've connected my yp-01 (USB to serial) with my ESP8266.

  • USB --> ESP
  • TX --> RX
  • RX --> TX

I use the 3.3V supply of my arduino mega.

  • ARDUINO --> ESP
  • 3.3V --> VCC
  • GND --> GND.

When I try to upload the code it gives the error:

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

I've read a lot of posts but none of them fixed my problem. Is there anyone who knows the solution or someone who had the same problem? I'm using ARduino IDE 1.6.9

2 Answers 2

2

Connect GPIO0 and GPIO15 to Ground with resistors 10k.

Sign up to request clarification or add additional context in comments.

1 Comment

The GPIO0 is connected woth a 10k resistor to ground and the CH_PD to VCC and it works. Thank you!
0

for the error "espcomm_open_failed"

ESP01 Flash config: Flash real size: 1048576 1MB 512SPIFFS Flash ide speed: 40000000 - 4MHz Flash ide mode: DOUT

ESP07 Flash config: Flash real size: 1048576 1MB 512SPIFFS Flash ide speed: 40000000 - 4MHz Flash ide mode: QIO

When programming the ESP8266, connect VCC, ground, TX and RX properly. (FTDI <->ESP)

VCC --> 3.3V
GND --> GND
TX -->RX
RX --> TX

(Power from USB 2.0 was enough to program ESP01 and ESP07; I used arduino software to program; Nodemcu flasher can also be used to flash)

In order to turn into program the ESP, first both the RESET and the GPIO0 should be connected to the ground. Then keep it for around 5 seconds Then remove the RESET BUT do not remove GPIO0.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.