CCCPaste

Web based home automation system

#include 
#include 

const char* ssid = "your_SSID";
const char* password = "your_PASSWORD";

WebServer server(80);

const int relay1Pin = 23;
const int relay2Pin = 22;
const int led1Pin = 18;
const int led2Pin = 19;

void handleRoot() {
  String html = "

ESP32 Home Automation

"; html += "

Turn Relay 1 ON

"; html += "

Turn Relay 1 OFF

"; html += "

Turn Relay 2 ON

"; html += "

Turn Relay 2 OFF

"; html += "

Turn LED 1 ON

"; html += "

Turn LED 1 OFF

"; html += "

Turn LED 2 ON

"; html += "

Turn LED 2 OFF

"; html += ""; server.send(200, "text/html", html); } void handleRelay1On() { digitalWrite(relay1Pin, LOW); // Assuming LOW turns the relay ON server.send(200, "text/html", "

Relay 1 ON

Back

"); } void handleRelay1Off() { digitalWrite(relay1Pin, HIGH); // Assuming HIGH turns the relay OFF server.send(200, "text/html", "

Relay 1 OFF

Back

"); } void handleRelay2On() { digitalWrite(relay2Pin, LOW); // Assuming LOW turns the relay ON server.send(200, "text/html", "

Relay 2 ON

Back

"); } void handleRelay2Off() { digitalWrite(relay2Pin, HIGH); // Assuming HIGH turns the relay OFF server.send(200, "text/html", "

Relay 2 OFF

Back

"); } void handleLED1On() { digitalWrite(led1Pin, HIGH); server.send(200, "text/html", "

LED 1 ON

Back

"); } void handleLED1Off() { digitalWrite(led1Pin, LOW); server.send(200, "text/html", "

LED 1 OFF

Back

"); } void handleLED2On() { digitalWrite(led2Pin, HIGH); server.send(200, "text/html", "

LED 2 ON

Back

"); } void handleLED2Off() { digitalWrite(led2Pin, LOW); server.send(200, "text/html", "

LED 2 OFF

Back

"); } void setup() { Serial.begin(115200); WiFi.begin(ssid, password); while (WiFi.status() != WL_CONNECTED) { delay(1000); Serial.println("Connecting to WiFi..."); } Serial.println("Connected to WiFi"); pinMode(relay1Pin, OUTPUT); pinMode(relay2Pin, OUTPUT); pinMode(led1Pin, OUTPUT); pinMode(led2Pin, OUTPUT); digitalWrite(relay1Pin, HIGH); // Initialize relay to OFF state digitalWrite(relay2Pin, HIGH); // Initialize relay to OFF state digitalWrite(led1Pin, LOW); // Initialize LED to OFF state digitalWrite(led2Pin, LOW); // Initialize LED to OFF state server.on("/", handleRoot); server.on("/relay1/on", handleRelay1On); server.on("/relay1/off", handleRelay1Off); server.on("/relay2/on", handleRelay2On); server.on("/relay2/off", handleRelay2Off); server.on("/led1/on", handleLED1On); server.on("/led1/off", handleLED1Off); server.on("/led2/on", handleLED2On); server.on("/led2/off", handleLED2Off); server.begin(); Serial.println("HTTP server started"); } void loop() { server.handleClient(); }