Necessary tools and Hardware
1. NodeMCU ESP8266------ 012. LED ------------------------ 01
3. Wifi Connection / Arduino IDE
How it works.
when you connect to the webserver using IP two switches will be displayed, by switching them you can turn on and off an LED that connected to D0.How to set up IDE
1. File--> Preferences--> Additional Board Manager URL: http://arduino.esp8266.com/stable/package_esp8266com_index.json
2. Tools--> Board--> BoardManager--> search for ''ESP8266'' --> install
3. Now Ready to Program after you select
3.1 Tools--> Board--> '' NodeMCU 0.9 (ESP-12 Module)''
3.2 Proper Serial Poart
Arduino Code.
#include <ESP8266WiFi.h>
const char* ssid = "Dialog 4G"; //your WiFi Name
const char* password = "YJNHQ102RD8"; //Your Wifi Password
int ledPin = D0;
WiFiServer server(80);
void setup() {
Serial.begin(115200);
delay(10);
pinMode(ledPin, OUTPUT);
digitalWrite(ledPin, 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("http://");
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("/LED=ON") != -1) {
digitalWrite(ledPin, HIGH);
value = HIGH;
}
if (request.indexOf("/LED=OFF") != -1) {
digitalWrite(ledPin, LOW);
value = LOW;
}
// 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 is now: ");
if(value == HIGH) {
client.print("On");
} else {
client.print("Off");
}
client.println("<br><br>");
client.println("<a href=\"/LED=ON\"\"><button>On </button></a>");
client.println("<a href=\"/LED=OFF\"\"><button>Off </button></a><br />");
client.println("</html>");
delay(1);
Serial.println("Client disonnected");
Serial.println("");
}
Compile and Upload
1. Change SSID and Wifi password
2. Compile and upload
3. open up serial monitor set baud rate as per above code
4. find the IP
connect and finalize
1. use above IP to open the web page and turn ON/OFF led which connected to D0
No comments:
Post a Comment