skip to content

5.2 Code

Steps to do coding in Arduino IDE :

1. Open Arduino IDE.

2. For writing this code, add the Esp8266WIFI.h library.

Here is a program for Air Quality Monitoring project. Copy this code and upload it to Nodemcu.

Note: Change the wifi SSID, password.

Complete Code:

#include <ESP8266WiFi.h>
int air_quality = analogRead(A0);
const char *ssid = “realme 3i”; // Enter your WiFi Name
const char *pass = “YADAV ji”; // Enter your WiFi Password
WiFiServer server(80);
void setup() {
Serial.begin(115200);
delay(10);
Serial.println(“Connecting to “);
Serial.println(ssid);
WiFi.begin(ssid, pass);
while (WiFi.status() != WL_CONNECTED)
{
delay(550);
Serial.print(“.”);
}
Serial.println(“”);
Serial.println(“WiFi connected”);
Serial.print(“IP Address: “);
Serial.println(WiFi.localIP());
server.begin();
}
void loop() {
delay(500);
air_quality = ((analogRead(A0)/1024.0)*100.0);
Serial.println(air_quality);
WiFiClient client = server.available();
if ( client.connected()) { // loop while the client’s connected
// HTTP headers always start with a response code (e.g. HTTP/1.1 200 OK)
client.println(“HTTP/1.1 200 OK”);
client.println(“Content-type:text/html”);
client.println(“Connection: close”);
client.println(“Refresh: 3”); // update the page after 3 Sec.
client.println();
client.println(“<!DOCTYPE html><html>”);
client.println(“<head><meta name=\”viewport\” content=\”width=device-width, initialscale=
1\”>”);
client.println(“<link rel=\”icon\” href=\”data:,\”>”);// Web Page Heading
client.println(“<body><h1 style=\”color:orange;\”> Air Quality Measurement </h1>”);
client.println(“<body><p style=\”color:blue;\”> Pollution Content(in percentage) = ” +
String(air_quality) +” %”+ ” </p>”);
if(air_quality <= 20.0 ){
client.println(“<body><p style=\”color:green;\”> Normal </p>”);
} else if (air_quality > 20.0 && air_quality < 70.0){
client.println(“<body><p style=\”color:purple;\”> Medium </p>”);
} else {
client.println(“<body><p style=\”font-size:200%; color:red\”> Danger!!! </p>”);
}
client.println(“</body></html>”);
delay(1000);
}}

Demonstration :