#include "ESP8266WiFi.h" #include "ESP8266WebServer.h" // https://techtutorialsx.com/2016/10/03/esp8266-setting-a-simple-http-webserver/ const char* SSID = "LeWe"; const char* PASSWORD = "5275274365464843"; ESP8266WebServer server(80); const int remotePin = D1; const int buttonPin = D2; const int motorPin = D3; void setup() { Serial.begin(115200); connectWifi(); server.on("/trigger", handleRequest); server.begin(); Serial.println("Server listening"); pinMode(BUILTIN_LED, OUTPUT); pinMode(remotePin, OUTPUT); pinMode(buttonPin, INPUT); pinMode(motorPin, OUTPUT); } int buttonState = 0; void loop() { if ((WiFi.status() == WL_CONNECTED)) { server.handleClient(); } else { Serial.println("WiFi not connected!"); connectWifi(); } buttonState = digitalRead(buttonPin); if (buttonState == HIGH) { triggerAll(); } } void handleRequest() { server.send(200, "text/plain", "Triggered"); triggerAll(); } void triggerAll() { digitalWrite(remotePin, HIGH); digitalWrite(motorPin, HIGH); digitalWrite(BUILTIN_LED, LOW); delay(500); digitalWrite(remotePin, LOW); digitalWrite(motorPin, LOW); digitalWrite(BUILTIN_LED, HIGH); } void connectWifi() { Serial.print("Connecting to "); Serial.println(SSID); WiFi.begin(SSID, PASSWORD); while (WiFi.status() != WL_CONNECTED) { delay(500); Serial.print("."); } Serial.println("WiFi connected."); Serial.println("IP address: "); Serial.println(WiFi.localIP()); }