/* Project: ESP8266 ESP-01 module, Relay webserver Function: Webserver to control 2 outputs on ESP01 module Modified by Mini-kits to suit the EME216 Switch Kit */ //************************************************************ #include //include library code #include #include //include library code #include //include library code //************************************************************ //Static IP address configuration //IPAddress local_IP(192, 168, 7, 151); //ESP static ip //IPAddress gateway(192, 168, 7, 1); //IP Address of your WiFi Router (Gateway) //IPAddress subnet(255, 255, 255, 0); //Subnet mask //IPAddress primaryDNS(203, 12, 160, 35); //DNS //IPAddress secondaryDNS(203, 12, 160, 36); //DNS //************************************************************ MDNSResponder mdns; // Replace with your network credentials const char* ssid = "VK5EME"; const char* password = "sd78nhetsdr"; //************************************************************ ESP8266WebServer server(80); String webPage = ""; int gpio0_pin = 0; int gpio1_pin = 1; int gpio2_pin = 2; int gpio3_pin = 3; void setup(void){ webPage += "

HF Antenna Switch

   

"; //RELAY 1 RED LED //RELAY 2 GREEN LED // preparing GPIOs pinMode(gpio0_pin, OUTPUT); digitalWrite(gpio0_pin, LOW); pinMode(gpio1_pin, OUTPUT); digitalWrite(gpio1_pin, LOW); pinMode(gpio2_pin, OUTPUT); digitalWrite(gpio2_pin, LOW); pinMode(gpio3_pin, OUTPUT); digitalWrite(gpio3_pin, LOW); delay(1000);//sets delay for 1 second //Serial.begin(115200);//initialize serial communication at 115200 bps // This line stops GPIO1 and 3 from working as outputs // // Configures static IP address if (!WiFi.config(local_IP, gateway, subnet, primaryDNS, secondaryDNS)) { Serial.println("STA Failed to configure"); } WiFi.begin(ssid, password); //Serial.println(""); // Wait for connection while (WiFi.status() != WL_CONNECTED) { delay(500); //Serial.print("."); //} //Serial.println(""); //Serial.print("Connected to "); //Serial.println(ssid); //Serial.print("IP address: "); //Serial.println(WiFi.localIP()); //if (mdns.begin("esp8266", WiFi.localIP())) { //Serial.println("MDNS responder started"); } server.on("/", [](){ server.send(200, "text/html", webPage); }); server.on("/hf-1", [](){ server.send(200, "text/html", webPage); digitalWrite(gpio0_pin, LOW); digitalWrite(gpio1_pin, HIGH); digitalWrite(gpio2_pin, LOW); digitalWrite(gpio3_pin, LOW); delay(1000); }); server.on("/hf-2", [](){ server.send(200, "text/html", webPage); digitalWrite(gpio0_pin, LOW); digitalWrite(gpio1_pin, LOW); digitalWrite(gpio2_pin, HIGH); digitalWrite(gpio3_pin, LOW); delay(1000); }); server.on("/hf-3", [](){ server.send(200, "text/html", webPage); digitalWrite(gpio0_pin, HIGH); digitalWrite(gpio1_pin, LOW); digitalWrite(gpio2_pin, LOW); digitalWrite(gpio3_pin, LOW); delay(1000); }); server.on("/hf-4", [](){ server.send(200, "text/html", webPage); digitalWrite(gpio0_pin, LOW); digitalWrite(gpio1_pin, LOW); digitalWrite(gpio2_pin, LOW); digitalWrite(gpio3_pin, HIGH); delay(1000); }); server.begin(); //Serial.println("HTTP server started"); } //************************************************************************ void loop(void){ server.handleClient(); }