DIY LAB PROJECT
CODES USED FOR THE PROJECT
#include <Arduino.h>
#include <ESP8266WiFi.h>
#include <ESP8266WebServer.h>
#define pin D5
#define trig D7
#define echo D8
ESP8266WebServer server(80);
bool sensorState = 1;
bool lockState = 0;
IOT BASED DOOR LOCKER           1
void onConnect()
  server.send(200, "text/html", "<!DOCTYPE
html><html><head><meta charset=\"UTF-8\" /><meta
name=\"viewport\" content=\"width=device-width, initial-
scale=1.0, maximum-scale=1.0, user-scalable=no\" /><title>Door</
title></head><body><h1 align=\"center\">Wireless Door Lock <br /
><br /><br /><br /><br /><button onclick=\"fetch('/l')\"><h2>Lock /
Unlock</h2></button><br /><br /><button onclick=\"fetch('/d')
\"><h3>Enable / Disable Sensing</h3></button></h1><script></
script></body></html>");
void lock()
    digitalWrite(pin, lockState = !lockState);
    server.send(200);
void sensor()
    sensorState = !sensorState;
IOT BASED DOOR LOCKER                                             2
    server.send(200);
void setup()
    pinMode(pin, OUTPUT);
    pinMode(trig, OUTPUT);
    pinMode(echo, INPUT);
    WiFi.mode(WIFI_AP);
    WiFi.softAP("Door");
    server.on("/", onConnect);
    server.on("/l", lock);
    server.on("/d", sensor);
    server.begin();
int a;
IOT BASED DOOR LOCKER            3
void loop()
    server.handleClient();
    if (sensorState)
        digitalWrite(trig, LOW);
        delayMicroseconds(2);
        digitalWrite(trig, HIGH);
        delayMicroseconds(10);
        digitalWrite(trig, LOW);
        a = pulseIn(echo, HIGH);
        if (a > 100 && a < 1100)
            digitalWrite(pin, LOW);
            lockState = 0;
        delay(50);
IOT BASED DOOR LOCKER                 4
    }
IOT BASED DOOR LOCKER   5
IOT BASED DOOR LOCKER   6