#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();
}