//#include /* * * https://www.instructables.com/id/ESP0101S-RELAY-MODULE-TUTORIAL/ * * http://www.icstation.com/esp8266-wifi-channel-relay-module-remote-control-switch-wireless-transmitter-smart-home-p-13420.html * * * http://esp8266-server.de/WiFi-Relais.html * server.sendHeader("Cache-Control", "no-cache, no-store, must-revalidate"); server.sendHeader("pragma","no-cache"); server.sendHeader("Expires", "-1"); server.sendHeader("Access-Control-Allow-Origin","*"); server.send(200, "application/json", String(int(val)) ); * */ #include // Stationsmode (STA mode) #ifndef STASSID #define STASSID "Router3" #define STAPSK "1234123487658765" #endif //const char* ssid = "YOUR SSID"; // fill in here your router or wifi SSID //const char* password = "YOUR PASSWORD"; // fill in here your router or wifi password #define RELAY 0 // relay connected to GPIO0 const char* ssid = STASSID; const char* password = STAPSK; WiFiServer server(80); void setup() { Serial.begin(9600); // must be same baudrate with the Serial Monitor pinMode(RELAY,OUTPUT); digitalWrite(RELAY, LOW); // Connect to WiFi network Serial.println(); Serial.println(); Serial.print("Connecting to "); Serial.println(ssid); WiFi.begin(ssid, password); while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); } Serial.println(""); Serial.println("WiFi connected"); // Start the server server.begin(); Serial.println("Server started"); // Print the IP address Serial.print("Use this URL to connect: "); Serial.print("https://192.168.0.178/"); Serial.print(WiFi.localIP()); Serial.println("/"); } void loop() { // Check if a client has connected WiFiClient client = server.available(); if (!client) { return; } // Wait until the client sends some data Serial.println("new client"); while(!client.available()) { delay(1); } // Read the first line of the request String request = client.readStringUntil('\r'); Serial.println(request); client.flush(); // Match the request int value = LOW; if (request.indexOf("/RELAY=ON") != -1) { Serial.println("RELAY=ON"); digitalWrite(RELAY,LOW); value = LOW; } if (request.indexOf("/RELAY=OFF") != -1) { Serial.println("RELAY=OFF"); digitalWrite(RELAY,HIGH); value = HIGH; } // Return the response client.println("HTTP/1.1 200 OK"); client.println("Content-Type: text/html"); client.println(""); // this is a must client.println(""); client.println(""); client.println("ESP8266 RELAY Control"); client.print("Relay is now: "); if(value == HIGH) { client.print("OFF"); } else { client.print("ON"); } client.println("

"); client.println("Turn OFF RELAY
"); client.println("Turn ON RELAY
"); client.println(""); delay(1); Serial.println("Client disonnected"); Serial.println(""); }