This Experiment will help you to "Turn On and Turn Off" an LED that has connected to the Nodemcu (Esp8266), the Nodemcu has programmed from Arduino IDE to control the Device (here it is LED).
Connect Nodemcu ( Esp8266) to the Wi-Fi using SSID and password .
After uploading the program , use Serial monitor to find the IP Address and url for controlling Device
#include <ESP8266WiFi.h> const char* ssid = "your SSID"; const char* password = "Your Password"; int ledPin = 2; // GPIO13 // NodMcu builtin LED WiFiServer server(80); void setup() { Serial.begin(115200); delay(10); pinMode(ledPin, OUTPUT); digitalWrite(ledPin, HIGH); // 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("http://"); Serial.print(WiFi.localIP()); Serial.println("/"); //see your serial monitor with boud rate 115200 for see the link } 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("/LED=ON") != -1) { digitalWrite(ledPin, LOW); value = LOW; } if (request.indexOf("/LED=OFF") != -1) { digitalWrite(ledPin, HIGH); value = HIGH; } // Set ledPin according to the request //digitalWrite(ledPin, value); // Return the response client.println("HTTP/1.1 200 OK"); client.println("Content-Type: text/html"); client.println(""); // do not forget this one client.println("<!DOCTYPE HTML>"); client.println("<html>"); client.print("LED STATUS "); if(value == LOW) { client.print("ON"); } else { client.print("OFF"); } client.println("<br><br>"); client.println("<a href=\"/LED=ON\"\"><button>Turn On </button></a>"); client.println("<a href=\"/LED=OFF\"\"><button>Turn Off </button></a><br />"); client.println("</html>"); delay(1); Serial.println("Client disonnected"); Serial.println(""); }
No comments:
Post a Comment