Garage Door Opener with ESP8266 web server

Hello Everyone,
I found a web server script, and I am editing it to use it as a wireless garage door opener with an ESP8266 module, The way you see the script here, it works, and it opens and closes my garage door.

The problem is that I am trying to set a time delay using millis() so that when the button that reads "the garage door is closed" is clicked in the web browser, I want to wait 12 seconds and then change the text in the button to read "the garage door is open: and I also want change output5State to off. It takes approximately 12 seconds for the garage door to fully open and to fully close.

This is my first time using a web sever script and I don't even know where the button press is happening in the script, and I am not clear on where I should put the millis code.
Thanks for any help

//this is what I am thinking for millis() Don't know where to put it in the script

long LastTimeDoorWasActivated = 0;  
long DoorDelay = 12000;     
     
    //output5State
       
    if ( (millis() - LastTimeDoorWasActivated) > DoorDelay) 
    {
      LastTimeDoorWasActivated = millis(); //
      //do stuff here 
    } 
//=========================================================






//start script
/*********
  Rui Santos https://randomnerdtutorials.com/esp8266-web-server-with-arduino-ide/
  Complete project details at http://randomnerdtutorials.com
*********/

//#77878A color Regent Grey
//#FF0000 color Red
//#195B6A Color Green
// Load Wi-Fi library
#include <ESP8266WiFi.h>


//My Add/Edit
#include "ESPAsyncWebServer.h"

//New add 07_20_2023 working to date
#include <ESP8266HTTPClient.h>


// Replace with your network credentials
const char* ssid     = "xxxxxxxx";
const char* password = "xxxxxxxx";

// Set web server port number to 80
WiFiServer server(80);

// Variable to store the HTTP request
String header;

// Auxiliar variables to store the current output state
String output5State = "off";


//My Add/Edit ADD ANOTHER RELAY GPIO 14
String output14State = "off";

// Assign output variables to GPIO pins
const int output5 = 5;



// Current time
unsigned long currentTime = millis();
// Previous time
unsigned long previousTime = 0;
long interval = 100;           // interval at which to blink (milliseconds)


// Define timeout time in milliseconds (example: 2000ms = 2s)
const long timeoutTime = 2000;


//My Add/ DEFINE STATIC IP 10.0.69.22 WORKING! https://www.youtube.com/watch?v=B9jJI7p2Gw4
IPAddress local_IP(10, 0, 69, 22);
IPAddress gateway(10, 0, 69, 1);
IPAddress subnet(255, 255, 255, 0);
IPAddress primaryDNS(208, 67, 222, 222);
IPAddress secondaryDNS(208, 67, 220, 220);



void setup() {
  Serial.begin(115200);
  // Initialize the output variables as outputs

  pinMode(output5, OUTPUT);

  digitalWrite(output5, HIGH);


  // Connect to Wi-Fi network with SSID and password
  Serial.print("Connecting to ");
  Serial.println(ssid);

  //My Add/ Define Static IP Setings working!
  if (!WiFi.config(local_IP, gateway, subnet, primaryDNS, secondaryDNS))
  {
    Serial.println("STA Failed to configure");
  }

  WiFi.begin(ssid, password);
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }
  // Print local IP address and start web server
  Serial.println("");
  Serial.println("WiFi connected.");
  Serial.println("IP address: ");
  Serial.println(WiFi.localIP());
  server.begin();
}

void loop() {
  WiFiClient client = server.available();   // Listen for incoming clients

  if (client) {                             // If a new client connects,
    Serial.println("New Client.");          // print a message out in the serial port
    String currentLine = "";                // make a String to hold incoming data from the client
    currentTime = millis();
    previousTime = currentTime;
    while (client.connected() && currentTime - previousTime <= timeoutTime) { // loop while the client's connected
      currentTime = millis();
      if (client.available()) {             // if there's bytes to read from the client,
        char c = client.read();             // read a byte, then
        Serial.write(c);                    // print it out the serial monitor
        header += c;
        if (c == '\n') {                    // if the byte is a newline character
          // if the current line is blank, you got two newline characters in a row.
          // that's the end of the client HTTP request, so send a response:
          if (currentLine.length() == 0) {
            // HTTP headers always start with a response code (e.g. HTTP/1.1 200 OK)
            // and a content-type so the client knows what's coming, then a blank line:
            client.println("HTTP/1.1 200 OK");
            client.println("Content-type:text/html");
            client.println("Connection: close");
            client.println();



            //My Add/Edit 07_30_2023 GROUND WIRE OF LOAD IN "NO" PORT REVERSE THE HIGH AND LOW FROM ABOVE ORIGINAL
            // turns the GPIOs on and off
            if (header.indexOf("GET /5/on") >= 0) {
              Serial.println("GPIO 5 on");
              output5State = "on";
              digitalWrite(output5, LOW);
            } else if (header.indexOf("GET /5/off") >= 0) {
              Serial.println("GPIO 5 off");
              output5State = "off";
              digitalWrite(output5, HIGH);

            }

            // Display the HTML web page
            client.println("<!DOCTYPE html><html>");
            client.println("<head><meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">");
            client.println("<link rel=\"icon\" href=\"data:,\">");
            // CSS to style the on/off buttons
            // Feel free to change the background-color and font-size attributes to fit your preferences
            client.println("<style>html { font-family: Helvetica; display: inline-block; margin: 0px auto; text-align: center;}");
            //client.println(".button { background-color: #195B6A; border: none; color: white; padding: 16px 40px;");//Original Color Green

            //BACKGROUND COLOR RED
            client.println(".button { background-color: #FF0000; border: none; color: white; padding: 16px 40px;");//My Edit Color Red

            //client.println("text-decoration: none; font-size: 30px; margin: 2px; cursor: pointer;}");//Original

            //FONT SIZE
            client.println("text-decoration: none; font-size: 20px; margin: 2px; cursor: pointer;}");//My Edit Font Size
            //client.println(".button2 {background-color: #77878A;}</style></head>");//Original Color Regent Grey

            //BACKGROUND COLOR GREEN
            client.println(".button2 {background-color: #195B6A;}</style></head>");//My Edit Color Green

            // Web Page Heading
            //client.println("<body><h1>ESP8266 Web Server</h1>");//Original

            //BODY HEADING HOFFMAN COLLISION
            //client.println("<body><h1>Hoffman Collision ESP8266 Web Server</h1>"); //My Add/Edit
            client.println("<body><h1>John's Garage Door Opener</h1>");  //My Add/Edit Garage Door Opener 07_31_2023

            // Display current state, and ON/OFF buttons for GPIO 5
            client.println("<p>GPIO 5 - State " + output5State + "</p>");
            // If the output5State is off, it displays the ON button


            //My Add/Edit Garage Door Opener 07_31_2023

            if (output5State == "off") {
              client.println("<p><a href=\"/5/on\"><button class=\"button\">The Garage Door is Closed</button></a></p>");//
            } else {
              client.println("<p><a href=\"/5/off\"><button class=\"button button2\">The Garage Door is Open</button></a></p>");
            }



            client.println("</body></html>");

            // The HTTP response ends with another blank line
            client.println();
            // Break out of the while loop
            break;
          } else { // if you got a newline, then clear currentLine
            currentLine = "";
          }
        } else if (c != '\r') {  // if you got anything else but a carriage return character,
          currentLine += c;      // add it to the end of the currentLine
        }
      }
    }
    // Clear the header variable
    header = "";
    // Close the connection
    client.stop();
    Serial.println("Client disconnected.");
    Serial.println("");
  }
}
1 Like

not tested

#include <ESP8266WiFi.h>
#include "ESPAsyncWebServer.h"
#include <ESP8266HTTPClient.h>

// Replace with your network credentials
const char* ssid     = "xxxxxxxx";
const char* password = "xxxxxxxx";

// Set web server port number to 80
WiFiServer server(80);

// Variable to store the HTTP request
String header;

// Auxiliar variables to store the current output state
String output5State = "off";


//My Add/Edit ADD ANOTHER RELAY GPIO 14
String output14State = "off";

// Assign output variables to GPIO pins
const int output5 = 5;



unsigned long LastTimeDoorWasActivated = 0;
const unsigned int DoorDelay = 12000;

// Current time
unsigned long currentTime = millis();
// Previous time
unsigned long previousTime = 0;
long interval = 100;           // interval at which to blink (milliseconds)


// Define timeout time in milliseconds (example: 2000ms = 2s)
const long timeoutTime = 2000;


//My Add/ DEFINE STATIC IP 10.0.69.22 WORKING! https://www.youtube.com/watch?v=B9jJI7p2Gw4
IPAddress local_IP(10, 0, 69, 22);
IPAddress gateway(10, 0, 69, 1);
IPAddress subnet(255, 255, 255, 0);
IPAddress primaryDNS(208, 67, 222, 222);
IPAddress secondaryDNS(208, 67, 220, 220);



void setup() {
  Serial.begin(115200);
  // Initialize the output variables as outputs

  pinMode(output5, OUTPUT);

  digitalWrite(output5, HIGH);


  // Connect to Wi-Fi network with SSID and password
  Serial.print("Connecting to ");
  Serial.println(ssid);

  //My Add/ Define Static IP Setings working!
  if (!WiFi.config(local_IP, gateway, subnet, primaryDNS, secondaryDNS))
  {
    Serial.println("STA Failed to configure");
  }

  WiFi.begin(ssid, password);
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }
  // Print local IP address and start web server
  Serial.println("");
  Serial.println("WiFi connected.");
  Serial.println("IP address: ");
  Serial.println(WiFi.localIP());
  server.begin();
}

void loop() {


  if ( (millis() - LastTimeDoorWasActivated) >= DoorDelay) {
    LastTimeDoorWasActivated = millis(); //
    Serial.println("GPIO 5 off");
    output5State = "off";
    digitalWrite(output5, HIGH);
  }
  //=========================================================





  WiFiClient client = server.available();   // Listen for incoming clients

  if (client) {                             // If a new client connects,
    Serial.println("New Client.");          // print a message out in the serial port
    String currentLine = "";                // make a String to hold incoming data from the client
    currentTime = millis();
    previousTime = currentTime;
    while (client.connected() && currentTime - previousTime <= timeoutTime) { // loop while the client's connected
      currentTime = millis();
      if (client.available()) {             // if there's bytes to read from the client,
        char c = client.read();             // read a byte, then
        Serial.write(c);                    // print it out the serial monitor
        header += c;
        if (c == '\n') {                    // if the byte is a newline character
          // if the current line is blank, you got two newline characters in a row.
          // that's the end of the client HTTP request, so send a response:
          if (currentLine.length() == 0) {
            // HTTP headers always start with a response code (e.g. HTTP/1.1 200 OK)
            // and a content-type so the client knows what's coming, then a blank line:
            client.println("HTTP/1.1 200 OK");
            client.println("Content-type:text/html");
            client.println("Connection: close");
            client.println();



            //My Add/Edit 07_30_2023 GROUND WIRE OF LOAD IN "NO" PORT REVERSE THE HIGH AND LOW FROM ABOVE ORIGINAL
            // turns the GPIOs on and off
            if (header.indexOf("GET /5/on") >= 0) {
              Serial.println("GPIO 5 on");
              output5State = "on";
              digitalWrite(output5, LOW);
            } else if (header.indexOf("GET /5/off") >= 0) {
              Serial.println("GPIO 5 off");
              output5State = "off";
              digitalWrite(output5, HIGH);

            }

            // Display the HTML web page
            client.println("<!DOCTYPE html><html>");
            client.println("<head><meta name=\"viewport\" content=\"width=device-width, initial-scale=1\"><meta http-equiv="refresh" content="6">");
            client.println("<link rel=\"icon\" href=\"data:,\">");
            // CSS to style the on/off buttons
            // Feel free to change the background-color and font-size attributes to fit your preferences
            client.println("<style>html { font-family: Helvetica; display: inline-block; margin: 0px auto; text-align: center;}");
            //client.println(".button { background-color: #195B6A; border: none; color: white; padding: 16px 40px;");//Original Color Green

            //BACKGROUND COLOR RED
            client.println(".button { background-color: #FF0000; border: none; color: white; padding: 16px 40px;");//My Edit Color Red

            //client.println("text-decoration: none; font-size: 30px; margin: 2px; cursor: pointer;}");//Original

            //FONT SIZE
            client.println("text-decoration: none; font-size: 20px; margin: 2px; cursor: pointer;}");//My Edit Font Size
            //client.println(".button2 {background-color: #77878A;}</style></head>");//Original Color Regent Grey

            //BACKGROUND COLOR GREEN
            client.println(".button2 {background-color: #195B6A;}</style></head>");//My Edit Color Green

            // Web Page Heading
            //client.println("<body><h1>ESP8266 Web Server</h1>");//Original

            //BODY HEADING HOFFMAN COLLISION
            //client.println("<body><h1>Hoffman Collision ESP8266 Web Server</h1>"); //My Add/Edit
            client.println("<body><h1>John's Garage Door Opener</h1>");  //My Add/Edit Garage Door Opener 07_31_2023

            // Display current state, and ON/OFF buttons for GPIO 5
            client.println("<p>GPIO 5 - State " + output5State + "</p>");
            // If the output5State is off, it displays the ON button


            //My Add/Edit Garage Door Opener 07_31_2023

            if (output5State == "off") {
              client.println("<p><a href=\"/5/on\"><button class=\"button\">The Garage Door is Closed</button></a></p>");//
            } else {
              client.println("<p><a href=\"/5/off\"><button class=\"button button2\">The Garage Door is Open</button></a></p>");
            }



            client.println("</body></html>");

            // The HTTP response ends with another blank line
            client.println();
            // Break out of the while loop
            break;
          } else { // if you got a newline, then clear currentLine
            currentLine = "";
          }
        } else if (c != '\r') {  // if you got anything else but a carriage return character,
          currentLine += c;      // add it to the end of the currentLine
        }
      }
    }
    // Clear the header variable
    header = "";
    // Close the connection
    client.stop();
    Serial.println("Client disconnected.");
    Serial.println("");
  }
}

based on what you have posted in #1 I suggest you make smaller steps.

Part 1
start with a small program which handles the desired program flow by a simple button press.

Make a function which "starts" your sequence (and opens the door)
Make a function which checks if the 12 seconds are over and report it to Serial output.

thats's the first part you will need.

Part 2
Then you need a ESP8266WebServer (not the WiFiServer you are currently using).

check the IDE Example of the ESP8266WebServer and make it running on your ESP8266.
If this works, make a page with a HTML form and a Button to start the function you have made in Part1.
To read the button presses you can use server.args() , server.argName, server.arg(i) etc.

Part 3
Print the current state of the door in your webserver. As a start, just reload the page and let the webserver print the actual state to your browser.

Part 4
To "update" the Page/Text on the Button without reloading you might need some knowledge regarding the FetchAPI and Javascript. That's doable, but you will need Stepp 1 - 3 before.

ah, yes, my fault
should be:

client.println("<head><meta name=\"viewport\" content=\"width=device-width, initial-scale=1\"><meta http-equiv=\"refresh\" content=\"6\">");

I ran my script with your edit, and it is working, but what is weird is that the 12 second delay with millis seems to run for 12 seconds and then at other times it runs a much shorter time.

I am also working on what the buttons say when the 12 seconds is up. I have to coordinate the buttons to read correctly when the door is up and when the door is down. Her is the update with your edit.
Thanks for your helo

/*********
  Rui Santos https://randomnerdtutorials.com/esp8266-web-server-with-arduino-ide/
  Complete project details at http://randomnerdtutorials.com
*********/
//This is bad practice.https://forum.arduino.cc/t/having-issues-adding-a-void-in-this-script/1147852/47
//Output5State should be bool (if it can be only on or off) or uint8_t if there are more options or better: use an enum.

//My Add/Edit
//#77878A color Regent Grey
//#FF0000 color Red
//#195B6A Color Green
// Load Wi-Fi library
#include <ESP8266WiFi.h>


//My Add/Edit
#include "ESPAsyncWebServer.h"

//New add 07_20_2023 working to date
#include <ESP8266HTTPClient.h>

long LastTimeDoorWasActivated = 0;
long DoorDelay = 12000;


// Replace with your network credentials
const char* ssid     = "xxxxxxxxxx";
const char* password = "xxxxxxxxxxx";

// Set web server port number to 80
WiFiServer server(80);

// Variable to store the HTTP request
String header;

// Auxiliar variables to store the current output state
String output5State = "off";
String output4State = "off";

//My Add/Edit ADD ANOTHER RELAY GPIO 14
String output14State = "off";

// Assign output variables to GPIO pins
const int output5 = 5;
//const int output4 = 4;

//My Add/Edit ADD ANOTHER RELAY GPIO 14
//const int output14 = 14;

// Current time
unsigned long currentTime = millis();
// Previous time
unsigned long previousTime = 0;
long interval = 100;           // interval at which to blink (milliseconds)


// Define timeout time in milliseconds (example: 2000ms = 2s)
const long timeoutTime = 2000;


//My Add/ DEFINE STATIC IP 10.0.69.22 WORKING! https://www.youtube.com/watch?v=B9jJI7p2Gw4
IPAddress local_IP(10, 0, 69, 22);
IPAddress gateway(10, 0, 69, 1);
IPAddress subnet(255, 255, 255, 0);
IPAddress primaryDNS(208, 67, 222, 222);
IPAddress secondaryDNS(208, 67, 220, 220);



void setup() {
  Serial.begin(115200);
  // Initialize the output variables as outputs

  pinMode(output5, OUTPUT);
  pinMode(output4, OUTPUT);

  //My Add/Edit ADD ANOTHER RELAY GPIO 14
  pinMode(output14, OUTPUT);



  // Set outputs to LOW //ORIGINAL
  //digitalWrite(output5, LOW);
  //digitalWrite(output4, LOW);

  // My Add/Edit Set outputs to high put load in "NC" Slot
  digitalWrite(output5, HIGH);
  digitalWrite(output4, HIGH);



  //My Add/Edit ADD ANOTHER RELAY GPIO 14
  digitalWrite(output14, LOW);

  // Connect to Wi-Fi network with SSID and password
  Serial.print("Connecting to ");
  Serial.println(ssid);

  //My Add/ Define Static IP Setings working!
  if (!WiFi.config(local_IP, gateway, subnet, primaryDNS, secondaryDNS))
  {
    Serial.println("STA Failed to configure");
  }

  WiFi.begin(ssid, password);
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }
  // Print local IP address and start web server
  Serial.println("");
  Serial.println("WiFi connected.");
  Serial.println("IP address: ");
  Serial.println(WiFi.localIP());
  server.begin();
}

void loop() {


  //My Add this time delay placement from kolaha Karma: on arduino forum https://forum.arduino.cc/t/garage-door-opener-with-esp8266-web-server/1154364
  if ( (millis() - LastTimeDoorWasActivated) >= DoorDelay) {
    LastTimeDoorWasActivated = millis(); //
    Serial.println("GPIO 5 off");
    output5State = "off";
    digitalWrite(output5, HIGH);
  }



  WiFiClient client = server.available();   // Listen for incoming clients

  if (client) {                             // If a new client connects,
    Serial.println("New Client.");          // print a message out in the serial port
    String currentLine = "";                // make a String to hold incoming data from the client
    currentTime = millis();
    previousTime = currentTime;
    while (client.connected() && currentTime - previousTime <= timeoutTime) { // loop while the client's connected
      currentTime = millis();
      if (client.available()) {             // if there's bytes to read from the client,
        char c = client.read();             // read a byte, then
        Serial.write(c);                    // print it out the serial monitor
        header += c;
        if (c == '\n') {                    // if the byte is a newline character
          // if the current line is blank, you got two newline characters in a row.
          // that's the end of the client HTTP request, so send a response:
          if (currentLine.length() == 0) {
            // HTTP headers always start with a response code (e.g. HTTP/1.1 200 OK)
            // and a content-type so the client knows what's coming, then a blank line:
            client.println("HTTP/1.1 200 OK");
            client.println("Content-type:text/html");
            client.println("Connection: close");
            client.println();


            /*
              // turns the GPIOs on and off ORIGINAL GROUND WIRE OF LOAD IN "NC" PORT
              if (header.indexOf("GET /5/on") >= 0) {
              Serial.println("GPIO 5 on");
              output5State = "on";
              digitalWrite(output5, HIGH);
              } else if (header.indexOf("GET /5/off") >= 0) {
              Serial.println("GPIO 5 off");
              output5State = "off";
              digitalWrite(output5, LOW);

              } else if (header.indexOf("GET /4/on") >= 0) {
              Serial.println("GPIO 4 on");
              output4State = "on";
              digitalWrite(output4, HIGH);
              } else if (header.indexOf("GET /4/off") >= 0) {
              Serial.println("GPIO 4 off");
              output4State = "off";
              digitalWrite(output4, LOW);
            */

            //My Add/Edit 07_30_2023 GROUND WIRE OF LOAD IN "NO" PORT REVERSE THE HIGH AND LOW FROM ABOVE ORIGINAL
            // turns the GPIOs on and off
            if (header.indexOf("GET /5/on") >= 0) {
              Serial.println("GPIO 5 on");
              output5State = "on";
              //output5State = "off";//TESTING HERE/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
              digitalWrite(output5, LOW);
            } else if (header.indexOf("GET /5/off") >= 0) {
              Serial.println("GPIO 5 off");
              output5State = "off";
              //output5State = "on";/TESTING HERE///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
              digitalWrite(output5, HIGH);
            }
            /*
              } else if (header.indexOf("GET /4/on") >= 0) {
              Serial.println("GPIO 4 on");
              output4State = "on";
              digitalWrite(output4, LOW);
              } else if (header.indexOf("GET /4/off") >= 0) {
              Serial.println("GPIO 4 off");
              output4State = "off";
              digitalWrite(output4, HIGH);

              //==============================================================


              //My Add/Edit ADD ANOTHER RELAY GPIO 14
              } else if (header.indexOf("GET /14/on") >= 0) {
              Serial.println("GPIO 14 on");
              output14State = "on";
              digitalWrite(output14, HIGH);
              } else if (header.indexOf("GET /14/off") >= 0) {
              Serial.println("GPIO 14 off");
              output14State = "off";
              digitalWrite(output14, LOW);
              }
            */
            // Display the HTML web page
            client.println("<!DOCTYPE html><html>");
            client.println("<head><meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">");
            client.println("<link rel=\"icon\" href=\"data:,\">");
            // CSS to style the on/off buttons
            // Feel free to change the background-color and font-size attributes to fit your preferences
            client.println("<style>html { font-family: Helvetica; display: inline-block; margin: 0px auto; text-align: center;}");
            //client.println(".button { background-color: #195B6A; border: none; color: white; padding: 16px 40px;");//Original Color Green

            //BACKGROUND COLOR RED
            client.println(".button { background-color: #FF0000; border: none; color: white; padding: 16px 40px;");//My Edit Color Red

            //client.println("text-decoration: none; font-size: 30px; margin: 2px; cursor: pointer;}");//Original

            //FONT SIZE
            client.println("text-decoration: none; font-size: 20px; margin: 2px; cursor: pointer;}");//My Edit Font Size
            //client.println(".button2 {background-color: #77878A;}</style></head>");//Original Color Regent Grey

            //BACKGROUND COLOR GREEN
            client.println(".button2 {background-color: #195B6A;}</style></head>");//My Edit Color Green

            // Web Page Heading
            //client.println("<body><h1>ESP8266 Web Server</h1>");//Original

            //BODY HEADING HOFFMAN COLLISION
            //client.println("<body><h1>Hoffman Collision ESP8266 Web Server</h1>"); //My Add/Edit
            client.println("<body><h1>John's Garage Door Opener</h1>");  //My Add/Edit Garage Door Opener 07_31_2023

            // Display current state, and ON/OFF buttons for GPIO 5
            client.println("<p>GPIO 5 - State " + output5State + "</p>");
            // If the output5State is off, it displays the ON button
            /*
              if (output5State == "off") {
              client.println("<p><a href=\"/5/on\"><button class=\"button\">Turn Paint Room Lights ON</button></a></p>");// My Edit For Hoffman Collision Paint Room Lights
              } else {
              client.println("<p><a href=\"/5/off\"><button class=\"button button2\">Turn Paint Room Lights OFF</button></a></p>");// My Edit For Hoffman Collision Paint Room Lights
              }
            */

            //My Add/Edit Garage Door Opener 07_31_2023

            if (output5State == "off")

            {
              client.println("<p><a href=\"/5/on\"><button class=\"button\">The Garage Door is Closed</button></a></p>");// My Edit For Hoffman Collision Paint Room Lights
              // output5State = "on";//MY ADD TESTING /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

            }

            else
            {
              client.println("<p><a href=\"/5/off\"><button class=\"button button2\">The Garage Door is Open</button></a></p>");// My Edit For Hoffman Collision Paint Room Lights
              //x output5State = "OFF";//MY ADD TESTING /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

            }









            /*

              // Display current state, and ON/OFF buttons for GPIO 4
              client.println("<p>GPIO 4 - State " + output4State + "</p>");
              // If the output4State is off, it displays the ON button
              if (output4State == "off") {
              client.println("<p><a href=\"/4/on\"><button class=\"button\">Turn ON</button></a></p>");// For other rooms and devices
              } else {
              client.println("<p><a href=\"/4/off\"><button class=\"button button2\">Turn OFF</button></a></p>");// For other rooms and devices
              }

              //My Add/Edit ADD ANOTHER RELAY GPIO 14
              // Display current state, and ON/OFF buttons for GPIO 14
              client.println("<p>GPIO 14 - State " + output14State + "</p>");
              // If the output14State is off, it displays the ON button
              if (output14State == "off") {
              client.println("<p><a href=\"/14/on\"><button class=\"button\">Turn ON</button></a></p>");// For other rooms and devices
              } else {
              client.println("<p><a href=\"/14/off\"><button class=\"button button2\">Turn OFF</button></a></p>");// For other rooms and devices
              }
            */

            client.println("</body></html>");

            // The HTTP response ends with another blank line
            client.println();
            // Break out of the while loop
            break;
          } else { // if you got a newline, then clear currentLine
            currentLine = "";
          }
        } else if (c != '\r') {  // if you got anything else but a carriage return character,
          currentLine += c;      // add it to the end of the currentLine
        }
      }
    }
    // Clear the header variable
    header = "";
    // Close the connection
    client.stop();
    Serial.println("Client disconnected.");
    Serial.println("");
  }
}

I think I am almost there with kolaha post just a few more bugs to fix

Thank you

ESP8266WebServer server(80);

tried ESP8266WebServer server(80); got this error

 32 | ESP8266WebServer server(80);
      | ^~~~~~~~~~~~~~~~
/tmp/arduino_modified_sketch_970727/Fix_Garage_Door_Opener_Testing_Millis_Time_Delay_1.ino: In function 'void setup()':
Fix_Garage_Door_Opener_Testing_Millis_Time_Delay_1:115:3: error: 'server' was not declared in this scope; did you mean 'Server'?
  115 |   server.begin();
      |   ^~~~~~
      |   Server
/tmp/arduino_modified_sketch_970727/Fix_Garage_Door_Opener_Testing_Millis_Time_Delay_1.ino: In function 'void loop()':
Fix_Garage_Door_Opener_Testing_Millis_Time_Delay_1:131:23: error: 'server' was not declared in this scope; did you mean 'Server'?
  131 |   WiFiClient client = server.available();   // Listen for incoming clients
      |                       ^~~~~~
      |                       Server
Using library ESP8266WiFi at version 1.0 in folder: /home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi 
Using library ESPAsyncWebServer-master at version 1.2.3 in folder: /home/john/Arduino/libraries/ESPAsyncWebServer-master 
Using library ESPAsyncTCP-master at version 1.2.2 in folder: /home/john/Arduino/libraries/ESPAsyncTCP-master 
Using library Hash at version 1.0 in folder: /home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/Hash 
Using library ESP8266HTTPClient at version 1.2 in folder: /home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266HTTPClient 
exit status 1
'ESP8266WebServer' does not name a type

we don't see your code but most likely you haven't included

#include <ESP8266WebServer.h>          // for the webserver

Why don't you see my code?

I added the #include <ESP8266WebServer.h> and I got another error

Arduino: 1.8.19 (Linux), Board: "NodeMCU 1.0 (ESP-12E Module), 80 MHz, Flash, Disabled (new aborts on oom), Disabled, All SSL ciphers (most compatible), 32KB cache + 32KB IRAM (balanced), Use pgm_read macros for IRAM/PROGMEM, 4MB (FS:2MB OTA:~1019KB), 2, v2 Lower Memory, Disabled, None, Only Sketch, 115200"











/app/Arduino/arduino-builder -dump-prefs -logger=machine -hardware /app/Arduino/hardware -hardware /home/john/.arduino15/packages -tools /app/Arduino/tools-builder -tools /app/Arduino/hardware/tools/avr -tools /home/john/.arduino15/packages -built-in-libraries /app/Arduino/libraries -libraries /home/john/Arduino/libraries -fqbn=esp8266:esp8266:nodemcuv2:xtal=80,vt=flash,exception=disabled,stacksmash=disabled,ssl=all,mmu=3232,non32xfer=fast,eesz=4M2M,led=2,ip=lm2f,dbg=Disabled,lvl=None____,wipe=none,baud=115200 -vid-pid=10C4_EA60 -ide-version=10819 -build-path /tmp/arduino_build_218393 -warnings=none -build-cache /tmp/arduino_cache_158461 -prefs=build.warn_data_percentage=75 -prefs=runtime.tools.xtensa-lx106-elf-gcc.path=/home/john/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec -prefs=runtime.tools.xtensa-lx106-elf-gcc-3.1.0-gcc10.3-e5f9fec.path=/home/john/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec -prefs=runtime.tools.mklittlefs.path=/home/john/.arduino15/packages/esp8266/tools/mklittlefs/3.1.0-gcc10.3-e5f9fec -prefs=runtime.tools.mklittlefs-3.1.0-gcc10.3-e5f9fec.path=/home/john/.arduino15/packages/esp8266/tools/mklittlefs/3.1.0-gcc10.3-e5f9fec -prefs=runtime.tools.mkspiffs.path=/home/john/.arduino15/packages/esp8266/tools/mkspiffs/3.1.0-gcc10.3-e5f9fec -prefs=runtime.tools.mkspiffs-3.1.0-gcc10.3-e5f9fec.path=/home/john/.arduino15/packages/esp8266/tools/mkspiffs/3.1.0-gcc10.3-e5f9fec -prefs=runtime.tools.python3.path=/home/john/.arduino15/packages/esp8266/tools/python3/3.7.2-post1 -prefs=runtime.tools.python3-3.7.2-post1.path=/home/john/.arduino15/packages/esp8266/tools/python3/3.7.2-post1 -verbose /tmp/arduino_modified_sketch_43880/Fix_Garage_Door_Opener_Testing_Millis_Time_Delay_1.ino
/app/Arduino/arduino-builder -compile -logger=machine -hardware /app/Arduino/hardware -hardware /home/john/.arduino15/packages -tools /app/Arduino/tools-builder -tools /app/Arduino/hardware/tools/avr -tools /home/john/.arduino15/packages -built-in-libraries /app/Arduino/libraries -libraries /home/john/Arduino/libraries -fqbn=esp8266:esp8266:nodemcuv2:xtal=80,vt=flash,exception=disabled,stacksmash=disabled,ssl=all,mmu=3232,non32xfer=fast,eesz=4M2M,led=2,ip=lm2f,dbg=Disabled,lvl=None____,wipe=none,baud=115200 -vid-pid=10C4_EA60 -ide-version=10819 -build-path /tmp/arduino_build_218393 -warnings=none -build-cache /tmp/arduino_cache_158461 -prefs=build.warn_data_percentage=75 -prefs=runtime.tools.xtensa-lx106-elf-gcc.path=/home/john/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec -prefs=runtime.tools.xtensa-lx106-elf-gcc-3.1.0-gcc10.3-e5f9fec.path=/home/john/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec -prefs=runtime.tools.mklittlefs.path=/home/john/.arduino15/packages/esp8266/tools/mklittlefs/3.1.0-gcc10.3-e5f9fec -prefs=runtime.tools.mklittlefs-3.1.0-gcc10.3-e5f9fec.path=/home/john/.arduino15/packages/esp8266/tools/mklittlefs/3.1.0-gcc10.3-e5f9fec -prefs=runtime.tools.mkspiffs.path=/home/john/.arduino15/packages/esp8266/tools/mkspiffs/3.1.0-gcc10.3-e5f9fec -prefs=runtime.tools.mkspiffs-3.1.0-gcc10.3-e5f9fec.path=/home/john/.arduino15/packages/esp8266/tools/mkspiffs/3.1.0-gcc10.3-e5f9fec -prefs=runtime.tools.python3.path=/home/john/.arduino15/packages/esp8266/tools/python3/3.7.2-post1 -prefs=runtime.tools.python3-3.7.2-post1.path=/home/john/.arduino15/packages/esp8266/tools/python3/3.7.2-post1 -verbose /tmp/arduino_modified_sketch_43880/Fix_Garage_Door_Opener_Testing_Millis_Time_Delay_1.ino
Using board 'nodemcuv2' from platform in folder: /home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2
Using core 'esp8266' from platform in folder: /home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2
/home/john/.arduino15/packages/esp8266/tools/python3/3.7.2-post1/python3 -I /home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/mkbuildoptglobals.py /app/Arduino 10819 /tmp/arduino_build_218393 /tmp/arduino_build_218393/core/build.opt /tmp/arduino_modified_sketch_43880/Fix_Garage_Door_Opener_Testing_Millis_Time_Delay_1.ino.globals.h /home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266/CommonHFile.h
default_encoding:       UTF-8
Assume aggressive 'core.a' caching enabled.
Note: optional global include file '/tmp/arduino_modified_sketch_43880/Fix_Garage_Door_Opener_Testing_Millis_Time_Delay_1.ino.globals.h' does not exist.
  Read more at https://arduino-esp8266.readthedocs.io/en/latest/faq/a06-global-build-options.html
Detecting libraries used...
/home/john/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE -DESP8266 @/tmp/arduino_build_218393/core/build.opt -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/lwip2/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/libc/xtensa-lx106-elf/include -I/tmp/arduino_build_218393/core -c @/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/warnings/none-cppflags -Os -g -free -fipa-pta -Werror=return-type -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=gnu++17 -ffunction-sections -fdata-sections -fno-exceptions -DMMU_IRAM_SIZE=0x8000 -DMMU_ICACHE_SIZE=0x8000 -w -x c++ -E -CC -DNONOSDK22x_190703=1 -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DARDUINO=10819 -DARDUINO_ESP8266_NODEMCU_ESP12E -DARDUINO_ARCH_ESP8266 "-DARDUINO_BOARD=\"ESP8266_NODEMCU_ESP12E\"" "-DARDUINO_BOARD_ID=\"nodemcuv2\"" -DLED_BUILTIN=2 -DFLASHMODE_DIO -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266 -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/variants/nodemcu /tmp/arduino_build_218393/sketch/Fix_Garage_Door_Opener_Testing_Millis_Time_Delay_1.ino.cpp -o /dev/null
Alternatives for ESP8266WiFi.h: [ESP8266WiFi@1.0]
ResolveLibrary(ESP8266WiFi.h)
  -> candidates: [ESP8266WiFi@1.0]
/home/john/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE -DESP8266 @/tmp/arduino_build_218393/core/build.opt -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/lwip2/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/libc/xtensa-lx106-elf/include -I/tmp/arduino_build_218393/core -c @/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/warnings/none-cppflags -Os -g -free -fipa-pta -Werror=return-type -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=gnu++17 -ffunction-sections -fdata-sections -fno-exceptions -DMMU_IRAM_SIZE=0x8000 -DMMU_ICACHE_SIZE=0x8000 -w -x c++ -E -CC -DNONOSDK22x_190703=1 -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DARDUINO=10819 -DARDUINO_ESP8266_NODEMCU_ESP12E -DARDUINO_ARCH_ESP8266 "-DARDUINO_BOARD=\"ESP8266_NODEMCU_ESP12E\"" "-DARDUINO_BOARD_ID=\"nodemcuv2\"" -DLED_BUILTIN=2 -DFLASHMODE_DIO -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266 -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/variants/nodemcu -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src /tmp/arduino_build_218393/sketch/Fix_Garage_Door_Opener_Testing_Millis_Time_Delay_1.ino.cpp -o /dev/null
Alternatives for ESP8266WebServer.h: [ESP8266WebServer@1.0]
ResolveLibrary(ESP8266WebServer.h)
  -> candidates: [ESP8266WebServer@1.0]
/home/john/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE -DESP8266 @/tmp/arduino_build_218393/core/build.opt -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/lwip2/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/libc/xtensa-lx106-elf/include -I/tmp/arduino_build_218393/core -c @/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/warnings/none-cppflags -Os -g -free -fipa-pta -Werror=return-type -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=gnu++17 -ffunction-sections -fdata-sections -fno-exceptions -DMMU_IRAM_SIZE=0x8000 -DMMU_ICACHE_SIZE=0x8000 -w -x c++ -E -CC -DNONOSDK22x_190703=1 -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DARDUINO=10819 -DARDUINO_ESP8266_NODEMCU_ESP12E -DARDUINO_ARCH_ESP8266 "-DARDUINO_BOARD=\"ESP8266_NODEMCU_ESP12E\"" "-DARDUINO_BOARD_ID=\"nodemcuv2\"" -DLED_BUILTIN=2 -DFLASHMODE_DIO -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266 -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/variants/nodemcu -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src /tmp/arduino_build_218393/sketch/Fix_Garage_Door_Opener_Testing_Millis_Time_Delay_1.ino.cpp -o /dev/null
Alternatives for ESPAsyncWebServer.h: [ESPAsyncWebServer-master@1.2.3]
ResolveLibrary(ESPAsyncWebServer.h)
  -> candidates: [ESPAsyncWebServer-master@1.2.3]
/home/john/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE -DESP8266 @/tmp/arduino_build_218393/core/build.opt -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/lwip2/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/libc/xtensa-lx106-elf/include -I/tmp/arduino_build_218393/core -c @/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/warnings/none-cppflags -Os -g -free -fipa-pta -Werror=return-type -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=gnu++17 -ffunction-sections -fdata-sections -fno-exceptions -DMMU_IRAM_SIZE=0x8000 -DMMU_ICACHE_SIZE=0x8000 -w -x c++ -E -CC -DNONOSDK22x_190703=1 -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DARDUINO=10819 -DARDUINO_ESP8266_NODEMCU_ESP12E -DARDUINO_ARCH_ESP8266 "-DARDUINO_BOARD=\"ESP8266_NODEMCU_ESP12E\"" "-DARDUINO_BOARD_ID=\"nodemcuv2\"" -DLED_BUILTIN=2 -DFLASHMODE_DIO -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266 -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/variants/nodemcu -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src -I/home/john/Arduino/libraries/ESPAsyncWebServer-master/src /tmp/arduino_build_218393/sketch/Fix_Garage_Door_Opener_Testing_Millis_Time_Delay_1.ino.cpp -o /dev/null
Alternatives for ESPAsyncTCP.h: [ESPAsyncTCP-master@1.2.2]
ResolveLibrary(ESPAsyncTCP.h)
  -> candidates: [ESPAsyncTCP-master@1.2.2]
/home/john/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE -DESP8266 @/tmp/arduino_build_218393/core/build.opt -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/lwip2/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/libc/xtensa-lx106-elf/include -I/tmp/arduino_build_218393/core -c @/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/warnings/none-cppflags -Os -g -free -fipa-pta -Werror=return-type -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=gnu++17 -ffunction-sections -fdata-sections -fno-exceptions -DMMU_IRAM_SIZE=0x8000 -DMMU_ICACHE_SIZE=0x8000 -w -x c++ -E -CC -DNONOSDK22x_190703=1 -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DARDUINO=10819 -DARDUINO_ESP8266_NODEMCU_ESP12E -DARDUINO_ARCH_ESP8266 "-DARDUINO_BOARD=\"ESP8266_NODEMCU_ESP12E\"" "-DARDUINO_BOARD_ID=\"nodemcuv2\"" -DLED_BUILTIN=2 -DFLASHMODE_DIO -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266 -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/variants/nodemcu -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src -I/home/john/Arduino/libraries/ESPAsyncWebServer-master/src -I/home/john/Arduino/libraries/ESPAsyncTCP-master/src /tmp/arduino_build_218393/sketch/Fix_Garage_Door_Opener_Testing_Millis_Time_Delay_1.ino.cpp -o /dev/null
Alternatives for Hash.h: [Hash@1.0]
ResolveLibrary(Hash.h)
  -> candidates: [Hash@1.0]
/home/john/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE -DESP8266 @/tmp/arduino_build_218393/core/build.opt -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/lwip2/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/libc/xtensa-lx106-elf/include -I/tmp/arduino_build_218393/core -c @/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/warnings/none-cppflags -Os -g -free -fipa-pta -Werror=return-type -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=gnu++17 -ffunction-sections -fdata-sections -fno-exceptions -DMMU_IRAM_SIZE=0x8000 -DMMU_ICACHE_SIZE=0x8000 -w -x c++ -E -CC -DNONOSDK22x_190703=1 -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DARDUINO=10819 -DARDUINO_ESP8266_NODEMCU_ESP12E -DARDUINO_ARCH_ESP8266 "-DARDUINO_BOARD=\"ESP8266_NODEMCU_ESP12E\"" "-DARDUINO_BOARD_ID=\"nodemcuv2\"" -DLED_BUILTIN=2 -DFLASHMODE_DIO -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266 -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/variants/nodemcu -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src -I/home/john/Arduino/libraries/ESPAsyncWebServer-master/src -I/home/john/Arduino/libraries/ESPAsyncTCP-master/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/Hash/src /tmp/arduino_build_218393/sketch/Fix_Garage_Door_Opener_Testing_Millis_Time_Delay_1.ino.cpp -o /dev/null
Alternatives for ESP8266HTTPClient.h: [ESP8266HTTPClient@1.2]
ResolveLibrary(ESP8266HTTPClient.h)
  -> candidates: [ESP8266HTTPClient@1.2]
/home/john/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE -DESP8266 @/tmp/arduino_build_218393/core/build.opt -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/lwip2/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/libc/xtensa-lx106-elf/include -I/tmp/arduino_build_218393/core -c @/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/warnings/none-cppflags -Os -g -free -fipa-pta -Werror=return-type -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=gnu++17 -ffunction-sections -fdata-sections -fno-exceptions -DMMU_IRAM_SIZE=0x8000 -DMMU_ICACHE_SIZE=0x8000 -w -x c++ -E -CC -DNONOSDK22x_190703=1 -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DARDUINO=10819 -DARDUINO_ESP8266_NODEMCU_ESP12E -DARDUINO_ARCH_ESP8266 "-DARDUINO_BOARD=\"ESP8266_NODEMCU_ESP12E\"" "-DARDUINO_BOARD_ID=\"nodemcuv2\"" -DLED_BUILTIN=2 -DFLASHMODE_DIO -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266 -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/variants/nodemcu -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src -I/home/john/Arduino/libraries/ESPAsyncWebServer-master/src -I/home/john/Arduino/libraries/ESPAsyncTCP-master/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/Hash/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266HTTPClient/src /tmp/arduino_build_218393/sketch/Fix_Garage_Door_Opener_Testing_Millis_Time_Delay_1.ino.cpp -o /dev/null
/home/john/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE -DESP8266 @/tmp/arduino_build_218393/core/build.opt -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/lwip2/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/libc/xtensa-lx106-elf/include -I/tmp/arduino_build_218393/core -c @/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/warnings/none-cppflags -Os -g -free -fipa-pta -Werror=return-type -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=gnu++17 -ffunction-sections -fdata-sections -fno-exceptions -DMMU_IRAM_SIZE=0x8000 -DMMU_ICACHE_SIZE=0x8000 -w -x c++ -E -CC -DNONOSDK22x_190703=1 -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DARDUINO=10819 -DARDUINO_ESP8266_NODEMCU_ESP12E -DARDUINO_ARCH_ESP8266 "-DARDUINO_BOARD=\"ESP8266_NODEMCU_ESP12E\"" "-DARDUINO_BOARD_ID=\"nodemcuv2\"" -DLED_BUILTIN=2 -DFLASHMODE_DIO -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266 -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/variants/nodemcu -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src -I/home/john/Arduino/libraries/ESPAsyncWebServer-master/src -I/home/john/Arduino/libraries/ESPAsyncTCP-master/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/Hash/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266HTTPClient/src /home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src/BearSSLHelpers.cpp -o /dev/null
/home/john/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE -DESP8266 @/tmp/arduino_build_218393/core/build.opt -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/lwip2/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/libc/xtensa-lx106-elf/include -I/tmp/arduino_build_218393/core -c @/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/warnings/none-cppflags -Os -g -free -fipa-pta -Werror=return-type -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=gnu++17 -ffunction-sections -fdata-sections -fno-exceptions -DMMU_IRAM_SIZE=0x8000 -DMMU_ICACHE_SIZE=0x8000 -w -x c++ -E -CC -DNONOSDK22x_190703=1 -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DARDUINO=10819 -DARDUINO_ESP8266_NODEMCU_ESP12E -DARDUINO_ARCH_ESP8266 "-DARDUINO_BOARD=\"ESP8266_NODEMCU_ESP12E\"" "-DARDUINO_BOARD_ID=\"nodemcuv2\"" -DLED_BUILTIN=2 -DFLASHMODE_DIO -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266 -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/variants/nodemcu -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src -I/home/john/Arduino/libraries/ESPAsyncWebServer-master/src -I/home/john/Arduino/libraries/ESPAsyncTCP-master/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/Hash/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266HTTPClient/src /home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src/CertStoreBearSSL.cpp -o /dev/null
/home/john/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE -DESP8266 @/tmp/arduino_build_218393/core/build.opt -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/lwip2/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/libc/xtensa-lx106-elf/include -I/tmp/arduino_build_218393/core -c @/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/warnings/none-cppflags -Os -g -free -fipa-pta -Werror=return-type -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=gnu++17 -ffunction-sections -fdata-sections -fno-exceptions -DMMU_IRAM_SIZE=0x8000 -DMMU_ICACHE_SIZE=0x8000 -w -x c++ -E -CC -DNONOSDK22x_190703=1 -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DARDUINO=10819 -DARDUINO_ESP8266_NODEMCU_ESP12E -DARDUINO_ARCH_ESP8266 "-DARDUINO_BOARD=\"ESP8266_NODEMCU_ESP12E\"" "-DARDUINO_BOARD_ID=\"nodemcuv2\"" -DLED_BUILTIN=2 -DFLASHMODE_DIO -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266 -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/variants/nodemcu -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src -I/home/john/Arduino/libraries/ESPAsyncWebServer-master/src -I/home/john/Arduino/libraries/ESPAsyncTCP-master/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/Hash/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266HTTPClient/src /home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src/ESP8266WiFi.cpp -o /dev/null
/home/john/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE -DESP8266 @/tmp/arduino_build_218393/core/build.opt -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/lwip2/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/libc/xtensa-lx106-elf/include -I/tmp/arduino_build_218393/core -c @/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/warnings/none-cppflags -Os -g -free -fipa-pta -Werror=return-type -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=gnu++17 -ffunction-sections -fdata-sections -fno-exceptions -DMMU_IRAM_SIZE=0x8000 -DMMU_ICACHE_SIZE=0x8000 -w -x c++ -E -CC -DNONOSDK22x_190703=1 -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DARDUINO=10819 -DARDUINO_ESP8266_NODEMCU_ESP12E -DARDUINO_ARCH_ESP8266 "-DARDUINO_BOARD=\"ESP8266_NODEMCU_ESP12E\"" "-DARDUINO_BOARD_ID=\"nodemcuv2\"" -DLED_BUILTIN=2 -DFLASHMODE_DIO -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266 -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/variants/nodemcu -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src -I/home/john/Arduino/libraries/ESPAsyncWebServer-master/src -I/home/john/Arduino/libraries/ESPAsyncTCP-master/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/Hash/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266HTTPClient/src /home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src/ESP8266WiFiAP.cpp -o /dev/null
/home/john/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE -DESP8266 @/tmp/arduino_build_218393/core/build.opt -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/lwip2/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/libc/xtensa-lx106-elf/include -I/tmp/arduino_build_218393/core -c @/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/warnings/none-cppflags -Os -g -free -fipa-pta -Werror=return-type -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=gnu++17 -ffunction-sections -fdata-sections -fno-exceptions -DMMU_IRAM_SIZE=0x8000 -DMMU_ICACHE_SIZE=0x8000 -w -x c++ -E -CC -DNONOSDK22x_190703=1 -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DARDUINO=10819 -DARDUINO_ESP8266_NODEMCU_ESP12E -DARDUINO_ARCH_ESP8266 "-DARDUINO_BOARD=\"ESP8266_NODEMCU_ESP12E\"" "-DARDUINO_BOARD_ID=\"nodemcuv2\"" -DLED_BUILTIN=2 -DFLASHMODE_DIO -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266 -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/variants/nodemcu -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src -I/home/john/Arduino/libraries/ESPAsyncWebServer-master/src -I/home/john/Arduino/libraries/ESPAsyncTCP-master/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/Hash/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266HTTPClient/src /home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src/ESP8266WiFiGeneric.cpp -o /dev/null
/home/john/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE -DESP8266 @/tmp/arduino_build_218393/core/build.opt -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/lwip2/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/libc/xtensa-lx106-elf/include -I/tmp/arduino_build_218393/core -c @/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/warnings/none-cppflags -Os -g -free -fipa-pta -Werror=return-type -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=gnu++17 -ffunction-sections -fdata-sections -fno-exceptions -DMMU_IRAM_SIZE=0x8000 -DMMU_ICACHE_SIZE=0x8000 -w -x c++ -E -CC -DNONOSDK22x_190703=1 -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DARDUINO=10819 -DARDUINO_ESP8266_NODEMCU_ESP12E -DARDUINO_ARCH_ESP8266 "-DARDUINO_BOARD=\"ESP8266_NODEMCU_ESP12E\"" "-DARDUINO_BOARD_ID=\"nodemcuv2\"" -DLED_BUILTIN=2 -DFLASHMODE_DIO -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266 -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/variants/nodemcu -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src -I/home/john/Arduino/libraries/ESPAsyncWebServer-master/src -I/home/john/Arduino/libraries/ESPAsyncTCP-master/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/Hash/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266HTTPClient/src /home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src/ESP8266WiFiGratuitous.cpp -o /dev/null
/home/john/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE -DESP8266 @/tmp/arduino_build_218393/core/build.opt -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/lwip2/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/libc/xtensa-lx106-elf/include -I/tmp/arduino_build_218393/core -c @/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/warnings/none-cppflags -Os -g -free -fipa-pta -Werror=return-type -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=gnu++17 -ffunction-sections -fdata-sections -fno-exceptions -DMMU_IRAM_SIZE=0x8000 -DMMU_ICACHE_SIZE=0x8000 -w -x c++ -E -CC -DNONOSDK22x_190703=1 -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DARDUINO=10819 -DARDUINO_ESP8266_NODEMCU_ESP12E -DARDUINO_ARCH_ESP8266 "-DARDUINO_BOARD=\"ESP8266_NODEMCU_ESP12E\"" "-DARDUINO_BOARD_ID=\"nodemcuv2\"" -DLED_BUILTIN=2 -DFLASHMODE_DIO -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266 -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/variants/nodemcu -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src -I/home/john/Arduino/libraries/ESPAsyncWebServer-master/src -I/home/john/Arduino/libraries/ESPAsyncTCP-master/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/Hash/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266HTTPClient/src /home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src/ESP8266WiFiMulti.cpp -o /dev/null
/home/john/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE -DESP8266 @/tmp/arduino_build_218393/core/build.opt -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/lwip2/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/libc/xtensa-lx106-elf/include -I/tmp/arduino_build_218393/core -c @/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/warnings/none-cppflags -Os -g -free -fipa-pta -Werror=return-type -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=gnu++17 -ffunction-sections -fdata-sections -fno-exceptions -DMMU_IRAM_SIZE=0x8000 -DMMU_ICACHE_SIZE=0x8000 -w -x c++ -E -CC -DNONOSDK22x_190703=1 -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DARDUINO=10819 -DARDUINO_ESP8266_NODEMCU_ESP12E -DARDUINO_ARCH_ESP8266 "-DARDUINO_BOARD=\"ESP8266_NODEMCU_ESP12E\"" "-DARDUINO_BOARD_ID=\"nodemcuv2\"" -DLED_BUILTIN=2 -DFLASHMODE_DIO -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266 -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/variants/nodemcu -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src -I/home/john/Arduino/libraries/ESPAsyncWebServer-master/src -I/home/john/Arduino/libraries/ESPAsyncTCP-master/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/Hash/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266HTTPClient/src /home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src/ESP8266WiFiSTA-WPS.cpp -o /dev/null
/home/john/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE -DESP8266 @/tmp/arduino_build_218393/core/build.opt -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/lwip2/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/libc/xtensa-lx106-elf/include -I/tmp/arduino_build_218393/core -c @/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/warnings/none-cppflags -Os -g -free -fipa-pta -Werror=return-type -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=gnu++17 -ffunction-sections -fdata-sections -fno-exceptions -DMMU_IRAM_SIZE=0x8000 -DMMU_ICACHE_SIZE=0x8000 -w -x c++ -E -CC -DNONOSDK22x_190703=1 -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DARDUINO=10819 -DARDUINO_ESP8266_NODEMCU_ESP12E -DARDUINO_ARCH_ESP8266 "-DARDUINO_BOARD=\"ESP8266_NODEMCU_ESP12E\"" "-DARDUINO_BOARD_ID=\"nodemcuv2\"" -DLED_BUILTIN=2 -DFLASHMODE_DIO -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266 -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/variants/nodemcu -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src -I/home/john/Arduino/libraries/ESPAsyncWebServer-master/src -I/home/john/Arduino/libraries/ESPAsyncTCP-master/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/Hash/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266HTTPClient/src /home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src/ESP8266WiFiSTA.cpp -o /dev/null
/home/john/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE -DESP8266 @/tmp/arduino_build_218393/core/build.opt -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/lwip2/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/libc/xtensa-lx106-elf/include -I/tmp/arduino_build_218393/core -c @/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/warnings/none-cppflags -Os -g -free -fipa-pta -Werror=return-type -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=gnu++17 -ffunction-sections -fdata-sections -fno-exceptions -DMMU_IRAM_SIZE=0x8000 -DMMU_ICACHE_SIZE=0x8000 -w -x c++ -E -CC -DNONOSDK22x_190703=1 -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DARDUINO=10819 -DARDUINO_ESP8266_NODEMCU_ESP12E -DARDUINO_ARCH_ESP8266 "-DARDUINO_BOARD=\"ESP8266_NODEMCU_ESP12E\"" "-DARDUINO_BOARD_ID=\"nodemcuv2\"" -DLED_BUILTIN=2 -DFLASHMODE_DIO -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266 -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/variants/nodemcu -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src -I/home/john/Arduino/libraries/ESPAsyncWebServer-master/src -I/home/john/Arduino/libraries/ESPAsyncTCP-master/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/Hash/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266HTTPClient/src /home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src/ESP8266WiFiScan.cpp -o /dev/null
/home/john/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE -DESP8266 @/tmp/arduino_build_218393/core/build.opt -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/lwip2/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/libc/xtensa-lx106-elf/include -I/tmp/arduino_build_218393/core -c @/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/warnings/none-cppflags -Os -g -free -fipa-pta -Werror=return-type -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=gnu++17 -ffunction-sections -fdata-sections -fno-exceptions -DMMU_IRAM_SIZE=0x8000 -DMMU_ICACHE_SIZE=0x8000 -w -x c++ -E -CC -DNONOSDK22x_190703=1 -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DARDUINO=10819 -DARDUINO_ESP8266_NODEMCU_ESP12E -DARDUINO_ARCH_ESP8266 "-DARDUINO_BOARD=\"ESP8266_NODEMCU_ESP12E\"" "-DARDUINO_BOARD_ID=\"nodemcuv2\"" -DLED_BUILTIN=2 -DFLASHMODE_DIO -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266 -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/variants/nodemcu -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src -I/home/john/Arduino/libraries/ESPAsyncWebServer-master/src -I/home/john/Arduino/libraries/ESPAsyncTCP-master/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/Hash/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266HTTPClient/src /home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src/WiFiClient.cpp -o /dev/null
/home/john/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE -DESP8266 @/tmp/arduino_build_218393/core/build.opt -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/lwip2/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/libc/xtensa-lx106-elf/include -I/tmp/arduino_build_218393/core -c @/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/warnings/none-cppflags -Os -g -free -fipa-pta -Werror=return-type -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=gnu++17 -ffunction-sections -fdata-sections -fno-exceptions -DMMU_IRAM_SIZE=0x8000 -DMMU_ICACHE_SIZE=0x8000 -w -x c++ -E -CC -DNONOSDK22x_190703=1 -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DARDUINO=10819 -DARDUINO_ESP8266_NODEMCU_ESP12E -DARDUINO_ARCH_ESP8266 "-DARDUINO_BOARD=\"ESP8266_NODEMCU_ESP12E\"" "-DARDUINO_BOARD_ID=\"nodemcuv2\"" -DLED_BUILTIN=2 -DFLASHMODE_DIO -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266 -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/variants/nodemcu -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src -I/home/john/Arduino/libraries/ESPAsyncWebServer-master/src -I/home/john/Arduino/libraries/ESPAsyncTCP-master/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/Hash/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266HTTPClient/src /home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src/WiFiClientSecureBearSSL.cpp -o /dev/null
/home/john/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE -DESP8266 @/tmp/arduino_build_218393/core/build.opt -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/lwip2/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/libc/xtensa-lx106-elf/include -I/tmp/arduino_build_218393/core -c @/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/warnings/none-cppflags -Os -g -free -fipa-pta -Werror=return-type -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=gnu++17 -ffunction-sections -fdata-sections -fno-exceptions -DMMU_IRAM_SIZE=0x8000 -DMMU_ICACHE_SIZE=0x8000 -w -x c++ -E -CC -DNONOSDK22x_190703=1 -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DARDUINO=10819 -DARDUINO_ESP8266_NODEMCU_ESP12E -DARDUINO_ARCH_ESP8266 "-DARDUINO_BOARD=\"ESP8266_NODEMCU_ESP12E\"" "-DARDUINO_BOARD_ID=\"nodemcuv2\"" -DLED_BUILTIN=2 -DFLASHMODE_DIO -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266 -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/variants/nodemcu -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src -I/home/john/Arduino/libraries/ESPAsyncWebServer-master/src -I/home/john/Arduino/libraries/ESPAsyncTCP-master/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/Hash/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266HTTPClient/src /home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src/WiFiServer.cpp -o /dev/null
/home/john/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE -DESP8266 @/tmp/arduino_build_218393/core/build.opt -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/lwip2/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/libc/xtensa-lx106-elf/include -I/tmp/arduino_build_218393/core -c @/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/warnings/none-cppflags -Os -g -free -fipa-pta -Werror=return-type -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=gnu++17 -ffunction-sections -fdata-sections -fno-exceptions -DMMU_IRAM_SIZE=0x8000 -DMMU_ICACHE_SIZE=0x8000 -w -x c++ -E -CC -DNONOSDK22x_190703=1 -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DARDUINO=10819 -DARDUINO_ESP8266_NODEMCU_ESP12E -DARDUINO_ARCH_ESP8266 "-DARDUINO_BOARD=\"ESP8266_NODEMCU_ESP12E\"" "-DARDUINO_BOARD_ID=\"nodemcuv2\"" -DLED_BUILTIN=2 -DFLASHMODE_DIO -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266 -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/variants/nodemcu -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src -I/home/john/Arduino/libraries/ESPAsyncWebServer-master/src -I/home/john/Arduino/libraries/ESPAsyncTCP-master/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/Hash/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266HTTPClient/src /home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src/WiFiServerSecureBearSSL.cpp -o /dev/null
/home/john/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE -DESP8266 @/tmp/arduino_build_218393/core/build.opt -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/lwip2/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/libc/xtensa-lx106-elf/include -I/tmp/arduino_build_218393/core -c @/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/warnings/none-cppflags -Os -g -free -fipa-pta -Werror=return-type -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=gnu++17 -ffunction-sections -fdata-sections -fno-exceptions -DMMU_IRAM_SIZE=0x8000 -DMMU_ICACHE_SIZE=0x8000 -w -x c++ -E -CC -DNONOSDK22x_190703=1 -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DARDUINO=10819 -DARDUINO_ESP8266_NODEMCU_ESP12E -DARDUINO_ARCH_ESP8266 "-DARDUINO_BOARD=\"ESP8266_NODEMCU_ESP12E\"" "-DARDUINO_BOARD_ID=\"nodemcuv2\"" -DLED_BUILTIN=2 -DFLASHMODE_DIO -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266 -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/variants/nodemcu -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src -I/home/john/Arduino/libraries/ESPAsyncWebServer-master/src -I/home/john/Arduino/libraries/ESPAsyncTCP-master/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/Hash/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266HTTPClient/src /home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src/WiFiUdp.cpp -o /dev/null
/home/john/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE -DESP8266 @/tmp/arduino_build_218393/core/build.opt -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/lwip2/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/libc/xtensa-lx106-elf/include -I/tmp/arduino_build_218393/core -c @/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/warnings/none-cppflags -Os -g -free -fipa-pta -Werror=return-type -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=gnu++17 -ffunction-sections -fdata-sections -fno-exceptions -DMMU_IRAM_SIZE=0x8000 -DMMU_ICACHE_SIZE=0x8000 -w -x c++ -E -CC -DNONOSDK22x_190703=1 -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DARDUINO=10819 -DARDUINO_ESP8266_NODEMCU_ESP12E -DARDUINO_ARCH_ESP8266 "-DARDUINO_BOARD=\"ESP8266_NODEMCU_ESP12E\"" "-DARDUINO_BOARD_ID=\"nodemcuv2\"" -DLED_BUILTIN=2 -DFLASHMODE_DIO -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266 -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/variants/nodemcu -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src -I/home/john/Arduino/libraries/ESPAsyncWebServer-master/src -I/home/john/Arduino/libraries/ESPAsyncTCP-master/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/Hash/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266HTTPClient/src /home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src/enable_wifi_at_boot_time.cpp -o /dev/null
/home/john/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE -DESP8266 @/tmp/arduino_build_218393/core/build.opt -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/lwip2/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/libc/xtensa-lx106-elf/include -I/tmp/arduino_build_218393/core -c @/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/warnings/none-cppflags -Os -g -free -fipa-pta -Werror=return-type -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=gnu++17 -ffunction-sections -fdata-sections -fno-exceptions -DMMU_IRAM_SIZE=0x8000 -DMMU_ICACHE_SIZE=0x8000 -w -x c++ -E -CC -DNONOSDK22x_190703=1 -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DARDUINO=10819 -DARDUINO_ESP8266_NODEMCU_ESP12E -DARDUINO_ARCH_ESP8266 "-DARDUINO_BOARD=\"ESP8266_NODEMCU_ESP12E\"" "-DARDUINO_BOARD_ID=\"nodemcuv2\"" -DLED_BUILTIN=2 -DFLASHMODE_DIO -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266 -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/variants/nodemcu -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src -I/home/john/Arduino/libraries/ESPAsyncWebServer-master/src -I/home/john/Arduino/libraries/ESPAsyncTCP-master/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/Hash/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266HTTPClient/src /home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src/detail/mimetable.cpp -o /dev/null
/home/john/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE -DESP8266 @/tmp/arduino_build_218393/core/build.opt -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/lwip2/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/libc/xtensa-lx106-elf/include -I/tmp/arduino_build_218393/core -c @/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/warnings/none-cppflags -Os -g -free -fipa-pta -Werror=return-type -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=gnu++17 -ffunction-sections -fdata-sections -fno-exceptions -DMMU_IRAM_SIZE=0x8000 -DMMU_ICACHE_SIZE=0x8000 -w -x c++ -E -CC -DNONOSDK22x_190703=1 -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DARDUINO=10819 -DARDUINO_ESP8266_NODEMCU_ESP12E -DARDUINO_ARCH_ESP8266 "-DARDUINO_BOARD=\"ESP8266_NODEMCU_ESP12E\"" "-DARDUINO_BOARD_ID=\"nodemcuv2\"" -DLED_BUILTIN=2 -DFLASHMODE_DIO -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266 -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/variants/nodemcu -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src -I/home/john/Arduino/libraries/ESPAsyncWebServer-master/src -I/home/john/Arduino/libraries/ESPAsyncTCP-master/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/Hash/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266HTTPClient/src /home/john/Arduino/libraries/ESPAsyncWebServer-master/src/AsyncEventSource.cpp -o /dev/null
/home/john/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE -DESP8266 @/tmp/arduino_build_218393/core/build.opt -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/lwip2/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/libc/xtensa-lx106-elf/include -I/tmp/arduino_build_218393/core -c @/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/warnings/none-cppflags -Os -g -free -fipa-pta -Werror=return-type -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=gnu++17 -ffunction-sections -fdata-sections -fno-exceptions -DMMU_IRAM_SIZE=0x8000 -DMMU_ICACHE_SIZE=0x8000 -w -x c++ -E -CC -DNONOSDK22x_190703=1 -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DARDUINO=10819 -DARDUINO_ESP8266_NODEMCU_ESP12E -DARDUINO_ARCH_ESP8266 "-DARDUINO_BOARD=\"ESP8266_NODEMCU_ESP12E\"" "-DARDUINO_BOARD_ID=\"nodemcuv2\"" -DLED_BUILTIN=2 -DFLASHMODE_DIO -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266 -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/variants/nodemcu -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src -I/home/john/Arduino/libraries/ESPAsyncWebServer-master/src -I/home/john/Arduino/libraries/ESPAsyncTCP-master/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/Hash/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266HTTPClient/src /home/john/Arduino/libraries/ESPAsyncWebServer-master/src/AsyncWebSocket.cpp -o /dev/null
/home/john/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE -DESP8266 @/tmp/arduino_build_218393/core/build.opt -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/lwip2/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/libc/xtensa-lx106-elf/include -I/tmp/arduino_build_218393/core -c @/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/warnings/none-cppflags -Os -g -free -fipa-pta -Werror=return-type -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=gnu++17 -ffunction-sections -fdata-sections -fno-exceptions -DMMU_IRAM_SIZE=0x8000 -DMMU_ICACHE_SIZE=0x8000 -w -x c++ -E -CC -DNONOSDK22x_190703=1 -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DARDUINO=10819 -DARDUINO_ESP8266_NODEMCU_ESP12E -DARDUINO_ARCH_ESP8266 "-DARDUINO_BOARD=\"ESP8266_NODEMCU_ESP12E\"" "-DARDUINO_BOARD_ID=\"nodemcuv2\"" -DLED_BUILTIN=2 -DFLASHMODE_DIO -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266 -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/variants/nodemcu -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src -I/home/john/Arduino/libraries/ESPAsyncWebServer-master/src -I/home/john/Arduino/libraries/ESPAsyncTCP-master/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/Hash/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266HTTPClient/src /home/john/Arduino/libraries/ESPAsyncWebServer-master/src/SPIFFSEditor.cpp -o /dev/null
/home/john/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE -DESP8266 @/tmp/arduino_build_218393/core/build.opt -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/lwip2/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/libc/xtensa-lx106-elf/include -I/tmp/arduino_build_218393/core -c @/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/warnings/none-cppflags -Os -g -free -fipa-pta -Werror=return-type -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=gnu++17 -ffunction-sections -fdata-sections -fno-exceptions -DMMU_IRAM_SIZE=0x8000 -DMMU_ICACHE_SIZE=0x8000 -w -x c++ -E -CC -DNONOSDK22x_190703=1 -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DARDUINO=10819 -DARDUINO_ESP8266_NODEMCU_ESP12E -DARDUINO_ARCH_ESP8266 "-DARDUINO_BOARD=\"ESP8266_NODEMCU_ESP12E\"" "-DARDUINO_BOARD_ID=\"nodemcuv2\"" -DLED_BUILTIN=2 -DFLASHMODE_DIO -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266 -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/variants/nodemcu -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src -I/home/john/Arduino/libraries/ESPAsyncWebServer-master/src -I/home/john/Arduino/libraries/ESPAsyncTCP-master/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/Hash/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266HTTPClient/src /home/john/Arduino/libraries/ESPAsyncWebServer-master/src/WebAuthentication.cpp -o /dev/null
/home/john/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE -DESP8266 @/tmp/arduino_build_218393/core/build.opt -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/lwip2/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/libc/xtensa-lx106-elf/include -I/tmp/arduino_build_218393/core -c @/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/warnings/none-cppflags -Os -g -free -fipa-pta -Werror=return-type -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=gnu++17 -ffunction-sections -fdata-sections -fno-exceptions -DMMU_IRAM_SIZE=0x8000 -DMMU_ICACHE_SIZE=0x8000 -w -x c++ -E -CC -DNONOSDK22x_190703=1 -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DARDUINO=10819 -DARDUINO_ESP8266_NODEMCU_ESP12E -DARDUINO_ARCH_ESP8266 "-DARDUINO_BOARD=\"ESP8266_NODEMCU_ESP12E\"" "-DARDUINO_BOARD_ID=\"nodemcuv2\"" -DLED_BUILTIN=2 -DFLASHMODE_DIO -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266 -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/variants/nodemcu -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src -I/home/john/Arduino/libraries/ESPAsyncWebServer-master/src -I/home/john/Arduino/libraries/ESPAsyncTCP-master/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/Hash/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266HTTPClient/src /home/john/Arduino/libraries/ESPAsyncWebServer-master/src/WebHandlers.cpp -o /dev/null
/home/john/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE -DESP8266 @/tmp/arduino_build_218393/core/build.opt -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/lwip2/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/libc/xtensa-lx106-elf/include -I/tmp/arduino_build_218393/core -c @/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/warnings/none-cppflags -Os -g -free -fipa-pta -Werror=return-type -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=gnu++17 -ffunction-sections -fdata-sections -fno-exceptions -DMMU_IRAM_SIZE=0x8000 -DMMU_ICACHE_SIZE=0x8000 -w -x c++ -E -CC -DNONOSDK22x_190703=1 -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DARDUINO=10819 -DARDUINO_ESP8266_NODEMCU_ESP12E -DARDUINO_ARCH_ESP8266 "-DARDUINO_BOARD=\"ESP8266_NODEMCU_ESP12E\"" "-DARDUINO_BOARD_ID=\"nodemcuv2\"" -DLED_BUILTIN=2 -DFLASHMODE_DIO -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266 -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/variants/nodemcu -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src -I/home/john/Arduino/libraries/ESPAsyncWebServer-master/src -I/home/john/Arduino/libraries/ESPAsyncTCP-master/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/Hash/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266HTTPClient/src /home/john/Arduino/libraries/ESPAsyncWebServer-master/src/WebRequest.cpp -o /dev/null
/home/john/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE -DESP8266 @/tmp/arduino_build_218393/core/build.opt -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/lwip2/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/libc/xtensa-lx106-elf/include -I/tmp/arduino_build_218393/core -c @/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/warnings/none-cppflags -Os -g -free -fipa-pta -Werror=return-type -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=gnu++17 -ffunction-sections -fdata-sections -fno-exceptions -DMMU_IRAM_SIZE=0x8000 -DMMU_ICACHE_SIZE=0x8000 -w -x c++ -E -CC -DNONOSDK22x_190703=1 -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DARDUINO=10819 -DARDUINO_ESP8266_NODEMCU_ESP12E -DARDUINO_ARCH_ESP8266 "-DARDUINO_BOARD=\"ESP8266_NODEMCU_ESP12E\"" "-DARDUINO_BOARD_ID=\"nodemcuv2\"" -DLED_BUILTIN=2 -DFLASHMODE_DIO -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266 -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/variants/nodemcu -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src -I/home/john/Arduino/libraries/ESPAsyncWebServer-master/src -I/home/john/Arduino/libraries/ESPAsyncTCP-master/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/Hash/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266HTTPClient/src /home/john/Arduino/libraries/ESPAsyncWebServer-master/src/WebResponses.cpp -o /dev/null
/home/john/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE -DESP8266 @/tmp/arduino_build_218393/core/build.opt -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/lwip2/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/libc/xtensa-lx106-elf/include -I/tmp/arduino_build_218393/core -c @/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/warnings/none-cppflags -Os -g -free -fipa-pta -Werror=return-type -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=gnu++17 -ffunction-sections -fdata-sections -fno-exceptions -DMMU_IRAM_SIZE=0x8000 -DMMU_ICACHE_SIZE=0x8000 -w -x c++ -E -CC -DNONOSDK22x_190703=1 -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DARDUINO=10819 -DARDUINO_ESP8266_NODEMCU_ESP12E -DARDUINO_ARCH_ESP8266 "-DARDUINO_BOARD=\"ESP8266_NODEMCU_ESP12E\"" "-DARDUINO_BOARD_ID=\"nodemcuv2\"" -DLED_BUILTIN=2 -DFLASHMODE_DIO -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266 -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/variants/nodemcu -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src -I/home/john/Arduino/libraries/ESPAsyncWebServer-master/src -I/home/john/Arduino/libraries/ESPAsyncTCP-master/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/Hash/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266HTTPClient/src /home/john/Arduino/libraries/ESPAsyncWebServer-master/src/WebServer.cpp -o /dev/null
/home/john/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE -DESP8266 @/tmp/arduino_build_218393/core/build.opt -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/lwip2/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/libc/xtensa-lx106-elf/include -I/tmp/arduino_build_218393/core -c @/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/warnings/none-cppflags -Os -g -free -fipa-pta -Werror=return-type -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=gnu++17 -ffunction-sections -fdata-sections -fno-exceptions -DMMU_IRAM_SIZE=0x8000 -DMMU_ICACHE_SIZE=0x8000 -w -x c++ -E -CC -DNONOSDK22x_190703=1 -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DARDUINO=10819 -DARDUINO_ESP8266_NODEMCU_ESP12E -DARDUINO_ARCH_ESP8266 "-DARDUINO_BOARD=\"ESP8266_NODEMCU_ESP12E\"" "-DARDUINO_BOARD_ID=\"nodemcuv2\"" -DLED_BUILTIN=2 -DFLASHMODE_DIO -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266 -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/variants/nodemcu -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src -I/home/john/Arduino/libraries/ESPAsyncWebServer-master/src -I/home/john/Arduino/libraries/ESPAsyncTCP-master/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/Hash/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266HTTPClient/src /home/john/Arduino/libraries/ESPAsyncTCP-master/src/AsyncPrinter.cpp -o /dev/null
/home/john/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE -DESP8266 @/tmp/arduino_build_218393/core/build.opt -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/lwip2/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/libc/xtensa-lx106-elf/include -I/tmp/arduino_build_218393/core -c @/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/warnings/none-cppflags -Os -g -free -fipa-pta -Werror=return-type -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=gnu++17 -ffunction-sections -fdata-sections -fno-exceptions -DMMU_IRAM_SIZE=0x8000 -DMMU_ICACHE_SIZE=0x8000 -w -x c++ -E -CC -DNONOSDK22x_190703=1 -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DARDUINO=10819 -DARDUINO_ESP8266_NODEMCU_ESP12E -DARDUINO_ARCH_ESP8266 "-DARDUINO_BOARD=\"ESP8266_NODEMCU_ESP12E\"" "-DARDUINO_BOARD_ID=\"nodemcuv2\"" -DLED_BUILTIN=2 -DFLASHMODE_DIO -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266 -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/variants/nodemcu -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src -I/home/john/Arduino/libraries/ESPAsyncWebServer-master/src -I/home/john/Arduino/libraries/ESPAsyncTCP-master/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/Hash/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266HTTPClient/src /home/john/Arduino/libraries/ESPAsyncTCP-master/src/ESPAsyncTCP.cpp -o /dev/null
/home/john/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE -DESP8266 @/tmp/arduino_build_218393/core/build.opt -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/lwip2/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/libc/xtensa-lx106-elf/include -I/tmp/arduino_build_218393/core -c @/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/warnings/none-cppflags -Os -g -free -fipa-pta -Werror=return-type -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=gnu++17 -ffunction-sections -fdata-sections -fno-exceptions -DMMU_IRAM_SIZE=0x8000 -DMMU_ICACHE_SIZE=0x8000 -w -x c++ -E -CC -DNONOSDK22x_190703=1 -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DARDUINO=10819 -DARDUINO_ESP8266_NODEMCU_ESP12E -DARDUINO_ARCH_ESP8266 "-DARDUINO_BOARD=\"ESP8266_NODEMCU_ESP12E\"" "-DARDUINO_BOARD_ID=\"nodemcuv2\"" -DLED_BUILTIN=2 -DFLASHMODE_DIO -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266 -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/variants/nodemcu -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src -I/home/john/Arduino/libraries/ESPAsyncWebServer-master/src -I/home/john/Arduino/libraries/ESPAsyncTCP-master/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/Hash/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266HTTPClient/src /home/john/Arduino/libraries/ESPAsyncTCP-master/src/ESPAsyncTCPbuffer.cpp -o /dev/null
/home/john/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE -DESP8266 @/tmp/arduino_build_218393/core/build.opt -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/lwip2/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/libc/xtensa-lx106-elf/include -I/tmp/arduino_build_218393/core -c @/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/warnings/none-cppflags -Os -g -free -fipa-pta -Werror=return-type -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=gnu++17 -ffunction-sections -fdata-sections -fno-exceptions -DMMU_IRAM_SIZE=0x8000 -DMMU_ICACHE_SIZE=0x8000 -w -x c++ -E -CC -DNONOSDK22x_190703=1 -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DARDUINO=10819 -DARDUINO_ESP8266_NODEMCU_ESP12E -DARDUINO_ARCH_ESP8266 "-DARDUINO_BOARD=\"ESP8266_NODEMCU_ESP12E\"" "-DARDUINO_BOARD_ID=\"nodemcuv2\"" -DLED_BUILTIN=2 -DFLASHMODE_DIO -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266 -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/variants/nodemcu -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src -I/home/john/Arduino/libraries/ESPAsyncWebServer-master/src -I/home/john/Arduino/libraries/ESPAsyncTCP-master/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/Hash/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266HTTPClient/src /home/john/Arduino/libraries/ESPAsyncTCP-master/src/SyncClient.cpp -o /dev/null
/home/john/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE -DESP8266 @/tmp/arduino_build_218393/core/build.opt -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/lwip2/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/libc/xtensa-lx106-elf/include -I/tmp/arduino_build_218393/core -c @/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/warnings/none-cppflags -Os -g -free -fipa-pta -Werror=return-type -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=gnu++17 -ffunction-sections -fdata-sections -fno-exceptions -DMMU_IRAM_SIZE=0x8000 -DMMU_ICACHE_SIZE=0x8000 -w -x c++ -E -CC -DNONOSDK22x_190703=1 -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DARDUINO=10819 -DARDUINO_ESP8266_NODEMCU_ESP12E -DARDUINO_ARCH_ESP8266 "-DARDUINO_BOARD=\"ESP8266_NODEMCU_ESP12E\"" "-DARDUINO_BOARD_ID=\"nodemcuv2\"" -DLED_BUILTIN=2 -DFLASHMODE_DIO -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266 -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/variants/nodemcu -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src -I/home/john/Arduino/libraries/ESPAsyncWebServer-master/src -I/home/john/Arduino/libraries/ESPAsyncTCP-master/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/Hash/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266HTTPClient/src /home/john/Arduino/libraries/ESPAsyncTCP-master/src/tcp_axtls.c -o /dev/null
/home/john/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE -DESP8266 @/tmp/arduino_build_218393/core/build.opt -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/lwip2/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/libc/xtensa-lx106-elf/include -I/tmp/arduino_build_218393/core -c @/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/warnings/none-cppflags -Os -g -free -fipa-pta -Werror=return-type -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=gnu++17 -ffunction-sections -fdata-sections -fno-exceptions -DMMU_IRAM_SIZE=0x8000 -DMMU_ICACHE_SIZE=0x8000 -w -x c++ -E -CC -DNONOSDK22x_190703=1 -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DARDUINO=10819 -DARDUINO_ESP8266_NODEMCU_ESP12E -DARDUINO_ARCH_ESP8266 "-DARDUINO_BOARD=\"ESP8266_NODEMCU_ESP12E\"" "-DARDUINO_BOARD_ID=\"nodemcuv2\"" -DLED_BUILTIN=2 -DFLASHMODE_DIO -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266 -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/variants/nodemcu -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src -I/home/john/Arduino/libraries/ESPAsyncWebServer-master/src -I/home/john/Arduino/libraries/ESPAsyncTCP-master/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/Hash/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266HTTPClient/src /home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/Hash/src/Hash.cpp -o /dev/null
/home/john/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE -DESP8266 @/tmp/arduino_build_218393/core/build.opt -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/lwip2/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/libc/xtensa-lx106-elf/include -I/tmp/arduino_build_218393/core -c @/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/warnings/none-cppflags -Os -g -free -fipa-pta -Werror=return-type -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=gnu++17 -ffunction-sections -fdata-sections -fno-exceptions -DMMU_IRAM_SIZE=0x8000 -DMMU_ICACHE_SIZE=0x8000 -w -x c++ -E -CC -DNONOSDK22x_190703=1 -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DARDUINO=10819 -DARDUINO_ESP8266_NODEMCU_ESP12E -DARDUINO_ARCH_ESP8266 "-DARDUINO_BOARD=\"ESP8266_NODEMCU_ESP12E\"" "-DARDUINO_BOARD_ID=\"nodemcuv2\"" -DLED_BUILTIN=2 -DFLASHMODE_DIO -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266 -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/variants/nodemcu -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src -I/home/john/Arduino/libraries/ESPAsyncWebServer-master/src -I/home/john/Arduino/libraries/ESPAsyncTCP-master/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/Hash/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266HTTPClient/src /home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266HTTPClient/src/ESP8266HTTPClient.cpp -o /dev/null
Generating function prototypes...
/home/john/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE -DESP8266 @/tmp/arduino_build_218393/core/build.opt -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/lwip2/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/libc/xtensa-lx106-elf/include -I/tmp/arduino_build_218393/core -c @/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/warnings/none-cppflags -Os -g -free -fipa-pta -Werror=return-type -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=gnu++17 -ffunction-sections -fdata-sections -fno-exceptions -DMMU_IRAM_SIZE=0x8000 -DMMU_ICACHE_SIZE=0x8000 -w -x c++ -E -CC -DNONOSDK22x_190703=1 -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DARDUINO=10819 -DARDUINO_ESP8266_NODEMCU_ESP12E -DARDUINO_ARCH_ESP8266 "-DARDUINO_BOARD=\"ESP8266_NODEMCU_ESP12E\"" "-DARDUINO_BOARD_ID=\"nodemcuv2\"" -DLED_BUILTIN=2 -DFLASHMODE_DIO -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266 -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/variants/nodemcu -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src -I/home/john/Arduino/libraries/ESPAsyncWebServer-master/src -I/home/john/Arduino/libraries/ESPAsyncTCP-master/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/Hash/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266HTTPClient/src /tmp/arduino_build_218393/sketch/Fix_Garage_Door_Opener_Testing_Millis_Time_Delay_1.ino.cpp -o /tmp/arduino_build_218393/preproc/ctags_target_for_gcc_minus_e.cpp
/app/Arduino/tools-builder/ctags/5.8-arduino11/ctags -u --language-force=c++ -f - --c++-kinds=svpf --fields=KSTtzns --line-directives /tmp/arduino_build_218393/preproc/ctags_target_for_gcc_minus_e.cpp
Compiling sketch...
/home/john/.arduino15/packages/esp8266/tools/python3/3.7.2-post1/python3 -I /home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/signing.py --mode header --publickey /tmp/arduino_modified_sketch_43880/public.key --out /tmp/arduino_build_218393/core/Updater_Signing.h
/home/john/.arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/3.1.0-gcc10.3-e5f9fec/bin/xtensa-lx106-elf-g++ -D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ -D_GNU_SOURCE -DESP8266 @/tmp/arduino_build_218393/core/build.opt -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/lwip2/include -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/sdk/libc/xtensa-lx106-elf/include -I/tmp/arduino_build_218393/core -c @/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/tools/warnings/none-cppflags -Os -g -free -fipa-pta -Werror=return-type -mlongcalls -mtext-section-literals -fno-rtti -falign-functions=4 -std=gnu++17 -MMD -ffunction-sections -fdata-sections -fno-exceptions -DMMU_IRAM_SIZE=0x8000 -DMMU_ICACHE_SIZE=0x8000 -DNONOSDK22x_190703=1 -DF_CPU=80000000L -DLWIP_OPEN_SRC -DTCP_MSS=536 -DLWIP_FEATURES=1 -DLWIP_IPV6=0 -DARDUINO=10819 -DARDUINO_ESP8266_NODEMCU_ESP12E -DARDUINO_ARCH_ESP8266 "-DARDUINO_BOARD=\"ESP8266_NODEMCU_ESP12E\"" "-DARDUINO_BOARD_ID=\"nodemcuv2\"" -DLED_BUILTIN=2 -DFLASHMODE_DIO -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/cores/esp8266 -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/variants/nodemcu -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src -I/home/john/Arduino/libraries/ESPAsyncWebServer-master/src -I/home/john/Arduino/libraries/ESPAsyncTCP-master/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/Hash/src -I/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266HTTPClient/src /tmp/arduino_build_218393/sketch/Fix_Garage_Door_Opener_Testing_Millis_Time_Delay_1.ino.cpp -o /tmp/arduino_build_218393/sketch/Fix_Garage_Door_Opener_Testing_Millis_Time_Delay_1.ino.cpp.o
In file included from /tmp/arduino_modified_sketch_43880/Fix_Garage_Door_Opener_Testing_Millis_Time_Delay_1.ino:17:
/home/john/Arduino/libraries/ESPAsyncWebServer-master/src/ESPAsyncWebServer.h:62:18: error: 'HTTP_GET' conflicts with a previous declaration
   62 |   HTTP_GET     = 0b00000001,
      |                  ^~~~~~~~~~
In file included from /tmp/arduino_modified_sketch_43880/Fix_Garage_Door_Opener_Testing_Millis_Time_Delay_1.ino:14:
/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src/ESP8266WebServer.h:47:29: note: previous declaration 'HTTPMethod HTTP_GET'
   47 | enum HTTPMethod { HTTP_ANY, HTTP_GET, HTTP_HEAD, HTTP_POST, HTTP_PUT, HTTP_PATCH, HTTP_DELETE, HTTP_OPTIONS };
      |                             ^~~~~~~~
In file included from /tmp/arduino_modified_sketch_43880/Fix_Garage_Door_Opener_Testing_Millis_Time_Delay_1.ino:17:
/home/john/Arduino/libraries/ESPAsyncWebServer-master/src/ESPAsyncWebServer.h:63:18: error: 'HTTP_POST' conflicts with a previous declaration
   63 |   HTTP_POST    = 0b00000010,
      |                  ^~~~~~~~~~
In file included from /tmp/arduino_modified_sketch_43880/Fix_Garage_Door_Opener_Testing_Millis_Time_Delay_1.ino:14:
/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src/ESP8266WebServer.h:47:50: note: previous declaration 'HTTPMethod HTTP_POST'
   47 | enum HTTPMethod { HTTP_ANY, HTTP_GET, HTTP_HEAD, HTTP_POST, HTTP_PUT, HTTP_PATCH, HTTP_DELETE, HTTP_OPTIONS };
      |                                                  ^~~~~~~~~
In file included from /tmp/arduino_modified_sketch_43880/Fix_Garage_Door_Opener_Testing_Millis_Time_Delay_1.ino:17:
/home/john/Arduino/libraries/ESPAsyncWebServer-master/src/ESPAsyncWebServer.h:64:18: error: 'HTTP_DELETE' conflicts with a previous declaration
   64 |   HTTP_DELETE  = 0b00000100,
      |                  ^~~~~~~~~~
In file included from /tmp/arduino_modified_sketch_43880/Fix_Garage_Door_Opener_Testing_Millis_Time_Delay_1.ino:14:
/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src/ESP8266WebServer.h:47:83: note: previous declaration 'HTTPMethod HTTP_DELETE'
   47 | enum HTTPMethod { HTTP_ANY, HTTP_GET, HTTP_HEAD, HTTP_POST, HTTP_PUT, HTTP_PATCH, HTTP_DELETE, HTTP_OPTIONS };
      |                                                                                   ^~~~~~~~~~~
In file included from /tmp/arduino_modified_sketch_43880/Fix_Garage_Door_Opener_Testing_Millis_Time_Delay_1.ino:17:
/home/john/Arduino/libraries/ESPAsyncWebServer-master/src/ESPAsyncWebServer.h:65:18: error: 'HTTP_PUT' conflicts with a previous declaration
   65 |   HTTP_PUT     = 0b00001000,
      |                  ^~~~~~~~~~
In file included from /tmp/arduino_modified_sketch_43880/Fix_Garage_Door_Opener_Testing_Millis_Time_Delay_1.ino:14:
/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src/ESP8266WebServer.h:47:61: note: previous declaration 'HTTPMethod HTTP_PUT'
   47 | enum HTTPMethod { HTTP_ANY, HTTP_GET, HTTP_HEAD, HTTP_POST, HTTP_PUT, HTTP_PATCH, HTTP_DELETE, HTTP_OPTIONS };
      |                                                             ^~~~~~~~
In file included from /tmp/arduino_modified_sketch_43880/Fix_Garage_Door_Opener_Testing_Millis_Time_Delay_1.ino:17:
/home/john/Arduino/libraries/ESPAsyncWebServer-master/src/ESPAsyncWebServer.h:66:18: error: 'HTTP_PATCH' conflicts with a previous declaration
   66 |   HTTP_PATCH   = 0b00010000,
      |                  ^~~~~~~~~~
In file included from /tmp/arduino_modified_sketch_43880/Fix_Garage_Door_Opener_Testing_Millis_Time_Delay_1.ino:14:
/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src/ESP8266WebServer.h:47:71: note: previous declaration 'HTTPMethod HTTP_PATCH'
   47 | enum HTTPMethod { HTTP_ANY, HTTP_GET, HTTP_HEAD, HTTP_POST, HTTP_PUT, HTTP_PATCH, HTTP_DELETE, HTTP_OPTIONS };
      |                                                                       ^~~~~~~~~~
In file included from /tmp/arduino_modified_sketch_43880/Fix_Garage_Door_Opener_Testing_Millis_Time_Delay_1.ino:17:
/home/john/Arduino/libraries/ESPAsyncWebServer-master/src/ESPAsyncWebServer.h:67:18: error: 'HTTP_HEAD' conflicts with a previous declaration
   67 |   HTTP_HEAD    = 0b00100000,
      |                  ^~~~~~~~~~
In file included from /tmp/arduino_modified_sketch_43880/Fix_Garage_Door_Opener_Testing_Millis_Time_Delay_1.ino:14:
/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src/ESP8266WebServer.h:47:39: note: previous declaration 'HTTPMethod HTTP_HEAD'
   47 | enum HTTPMethod { HTTP_ANY, HTTP_GET, HTTP_HEAD, HTTP_POST, HTTP_PUT, HTTP_PATCH, HTTP_DELETE, HTTP_OPTIONS };
      |                                       ^~~~~~~~~
In file included from /tmp/arduino_modified_sketch_43880/Fix_Garage_Door_Opener_Testing_Millis_Time_Delay_1.ino:17:
/home/john/Arduino/libraries/ESPAsyncWebServer-master/src/ESPAsyncWebServer.h:68:18: error: 'HTTP_OPTIONS' conflicts with a previous declaration
   68 |   HTTP_OPTIONS = 0b01000000,
      |                  ^~~~~~~~~~
In file included from /tmp/arduino_modified_sketch_43880/Fix_Garage_Door_Opener_Testing_Millis_Time_Delay_1.ino:14:
/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src/ESP8266WebServer.h:47:96: note: previous declaration 'HTTPMethod HTTP_OPTIONS'
   47 | enum HTTPMethod { HTTP_ANY, HTTP_GET, HTTP_HEAD, HTTP_POST, HTTP_PUT, HTTP_PATCH, HTTP_DELETE, HTTP_OPTIONS };
      |                                                                                                ^~~~~~~~~~~~
In file included from /tmp/arduino_modified_sketch_43880/Fix_Garage_Door_Opener_Testing_Millis_Time_Delay_1.ino:17:
/home/john/Arduino/libraries/ESPAsyncWebServer-master/src/ESPAsyncWebServer.h:69:18: error: 'HTTP_ANY' conflicts with a previous declaration
   69 |   HTTP_ANY     = 0b01111111,
      |                  ^~~~~~~~~~
In file included from /tmp/arduino_modified_sketch_43880/Fix_Garage_Door_Opener_Testing_Millis_Time_Delay_1.ino:14:
/home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer/src/ESP8266WebServer.h:47:19: note: previous declaration 'HTTPMethod HTTP_ANY'
   47 | enum HTTPMethod { HTTP_ANY, HTTP_GET, HTTP_HEAD, HTTP_POST, HTTP_PUT, HTTP_PATCH, HTTP_DELETE, HTTP_OPTIONS };
      |                   ^~~~~~~~
/tmp/arduino_modified_sketch_43880/Fix_Garage_Door_Opener_Testing_Millis_Time_Delay_1.ino: In function 'void loop()':
Fix_Garage_Door_Opener_Testing_Millis_Time_Delay_1:138:30: error: 'using ESP8266WebServer = class esp8266webserver::ESP8266WebServerTemplate<WiFiServer>' {aka 'class esp8266webserver::ESP8266WebServerTemplate<WiFiServer>'} has no member named 'available'
  138 |   WiFiClient client = server.available();   // Listen for incoming clients
      |                              ^~~~~~~~~
Using library ESP8266WiFi at version 1.0 in folder: /home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WiFi 
Using library ESP8266WebServer at version 1.0 in folder: /home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266WebServer 
Using library ESPAsyncWebServer-master at version 1.2.3 in folder: /home/john/Arduino/libraries/ESPAsyncWebServer-master 
Using library ESPAsyncTCP-master at version 1.2.2 in folder: /home/john/Arduino/libraries/ESPAsyncTCP-master 
Using library Hash at version 1.0 in folder: /home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/Hash 
Using library ESP8266HTTPClient at version 1.2 in folder: /home/john/.arduino15/packages/esp8266/hardware/esp8266/3.1.2/libraries/ESP8266HTTPClient 
exit status 1
'using ESP8266WebServer = class esp8266webserver::ESP8266WebServerTemplate<WiFiServer>' {aka 'class esp8266webserver::ESP8266WebServerTemplate<WiFiServer>'} has no member named 'available'

Her is the current code I am trying with your #include <ESP8266WebServer.h>

/*********
  Rui Santos https://randomnerdtutorials.com/esp8266-web-server-with-arduino-ide/
  Complete project details at http://randomnerdtutorials.com
*********/
//This is bad practice.https://forum.arduino.cc/t/having-issues-adding-a-void-in-this-script/1147852/47
//Output5State should be bool (if it can be only on or off) or uint8_t if there are more options or better: use an enum.

//My Add/Edit
//#77878A color Regent Grey
//#FF0000 color Red
//#195B6A Color Green
// Load Wi-Fi library
#include <ESP8266WiFi.h>
#include <ESP8266WebServer.h>

//My Add/Edit
#include "ESPAsyncWebServer.h"

//New add 07_20_2023 working to date
#include <ESP8266HTTPClient.h>

long LastTimeDoorWasActivated = 0;
long DoorDelay = 12000;


// Replace with your network credentials
const char* ssid     = "SECURE_10";
const char* password = "DED4DD82CD";

// Set web server port number to 80


//WiFiServer server(80);
ESP8266WebServer server(80);


// Variable to store the HTTP request
String header;

// Auxiliar variables to store the current output state
String output5State = "off";
String output4State = "off";

//My Add/Edit ADD ANOTHER RELAY GPIO 14
String output14State = "off";

// Assign output variables to GPIO pins
const int output5 = 5;
const int output4 = 4;

//My Add/Edit ADD ANOTHER RELAY GPIO 14
const int output14 = 14;

// Current time
unsigned long currentTime = millis();
// Previous time
unsigned long previousTime = 0;
long interval = 100;           // interval at which to blink (milliseconds)


// Define timeout time in milliseconds (example: 2000ms = 2s)
const long timeoutTime = 2000;


//My Add/ DEFINE STATIC IP 10.0.69.22 WORKING! https://www.youtube.com/watch?v=B9jJI7p2Gw4
IPAddress local_IP(10, 0, 69, 22);
IPAddress gateway(10, 0, 69, 1);
IPAddress subnet(255, 255, 255, 0);
IPAddress primaryDNS(208, 67, 222, 222);
IPAddress secondaryDNS(208, 67, 220, 220);



void setup() {
  Serial.begin(115200);
  // Initialize the output variables as outputs

  pinMode(output5, OUTPUT);
  pinMode(output4, OUTPUT);

  //My Add/Edit ADD ANOTHER RELAY GPIO 14
  pinMode(output14, OUTPUT);



  // Set outputs to LOW //ORIGINAL
  //digitalWrite(output5, LOW);
  //digitalWrite(output4, LOW);

  // My Add/Edit Set outputs to high put load in "NC" Slot
  digitalWrite(output5, HIGH);
  digitalWrite(output4, HIGH);



  //My Add/Edit ADD ANOTHER RELAY GPIO 14
  digitalWrite(output14, LOW);

  // Connect to Wi-Fi network with SSID and password
  Serial.print("Connecting to ");
  Serial.println(ssid);

  //My Add/ Define Static IP Setings working!
  if (!WiFi.config(local_IP, gateway, subnet, primaryDNS, secondaryDNS))
  {
    Serial.println("STA Failed to configure");
  }

  WiFi.begin(ssid, password);
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }
  // Print local IP address and start web server
  Serial.println("");
  Serial.println("WiFi connected.");
  Serial.println("IP address: ");
  Serial.println(WiFi.localIP());
  server.begin();
}

void loop() {

  /*
    //My Add this time delay placement from kolaha Karma: on arduino forum https://forum.arduino.cc/t/garage-door-opener-with-esp8266-web-server/1154364
    if ( (millis() - LastTimeDoorWasActivated) >= DoorDelay) {
      LastTimeDoorWasActivated = millis(); //
      Serial.println("GPIO 5 off");
      output5State = "off";
      digitalWrite(output5, HIGH);



    }
  */


  WiFiClient client = server.available();   // Listen for incoming clients

  if (client) {                             // If a new client connects,
    Serial.println("New Client.");          // print a message out in the serial port
    String currentLine = "";                // make a String to hold incoming data from the client
    currentTime = millis();
    previousTime = currentTime;
    while (client.connected() && currentTime - previousTime <= timeoutTime) { // loop while the client's connected
      currentTime = millis();
      if (client.available()) {             // if there's bytes to read from the client,
        char c = client.read();             // read a byte, then
        Serial.write(c);                    // print it out the serial monitor
        header += c;
        if (c == '\n') {                    // if the byte is a newline character
          // if the current line is blank, you got two newline characters in a row.
          // that's the end of the client HTTP request, so send a response:
          if (currentLine.length() == 0) {
            // HTTP headers always start with a response code (e.g. HTTP/1.1 200 OK)
            // and a content-type so the client knows what's coming, then a blank line:
            client.println("HTTP/1.1 200 OK");
            client.println("Content-type:text/html");
            client.println("Connection: close");
            client.println();


            /*
              // turns the GPIOs on and off ORIGINAL GROUND WIRE OF LOAD IN "NC" PORT
              if (header.indexOf("GET /5/on") >= 0) {
              Serial.println("GPIO 5 on");
              output5State = "on";
              digitalWrite(output5, HIGH);
              } else if (header.indexOf("GET /5/off") >= 0) {
              Serial.println("GPIO 5 off");
              output5State = "off";
              digitalWrite(output5, LOW);

              } else if (header.indexOf("GET /4/on") >= 0) {
              Serial.println("GPIO 4 on");
              output4State = "on";
              digitalWrite(output4, HIGH);
              } else if (header.indexOf("GET /4/off") >= 0) {
              Serial.println("GPIO 4 off");
              output4State = "off";
              digitalWrite(output4, LOW);
            */

            //My Add/Edit 07_30_2023 GROUND WIRE OF LOAD IN "NO" PORT REVERSE THE HIGH AND LOW FROM ABOVE ORIGINAL
            // turns the GPIOs on and off
            if (header.indexOf("GET /5/on") >= 0) {
              Serial.println("GPIO 5 on");
              output5State = "on";
              //output5State = "off";//TESTING HERE/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
              digitalWrite(output5, LOW);
            } else if (header.indexOf("GET /5/off") >= 0) {
              Serial.println("GPIO 5 off");
              output5State = "off";
              //output5State = "on";/TESTING HERE///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
              digitalWrite(output5, HIGH);
            }
            /*
              } else if (header.indexOf("GET /4/on") >= 0) {
              Serial.println("GPIO 4 on");
              output4State = "on";
              digitalWrite(output4, LOW);
              } else if (header.indexOf("GET /4/off") >= 0) {
              Serial.println("GPIO 4 off");
              output4State = "off";
              digitalWrite(output4, HIGH);

              //==============================================================


              //My Add/Edit ADD ANOTHER RELAY GPIO 14
              } else if (header.indexOf("GET /14/on") >= 0) {
              Serial.println("GPIO 14 on");
              output14State = "on";
              digitalWrite(output14, HIGH);
              } else if (header.indexOf("GET /14/off") >= 0) {
              Serial.println("GPIO 14 off");
              output14State = "off";
              digitalWrite(output14, LOW);
              }
            */
            // Display the HTML web page
            client.println("<!DOCTYPE html><html>");
            client.println("<head><meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">");
            client.println("<link rel=\"icon\" href=\"data:,\">");
            // CSS to style the on/off buttons
            // Feel free to change the background-color and font-size attributes to fit your preferences
            client.println("<style>html { font-family: Helvetica; display: inline-block; margin: 0px auto; text-align: center;}");
            //client.println(".button { background-color: #195B6A; border: none; color: white; padding: 16px 40px;");//Original Color Green

            //BACKGROUND COLOR RED
            client.println(".button { background-color: #FF0000; border: none; color: white; padding: 16px 40px;");//My Edit Color Red

            //client.println("text-decoration: none; font-size: 30px; margin: 2px; cursor: pointer;}");//Original

            //FONT SIZE
            client.println("text-decoration: none; font-size: 20px; margin: 2px; cursor: pointer;}");//My Edit Font Size
            //client.println(".button2 {background-color: #77878A;}</style></head>");//Original Color Regent Grey

            //BACKGROUND COLOR GREEN
            client.println(".button2 {background-color: #195B6A;}</style></head>");//My Edit Color Green

            // Web Page Heading
            //client.println("<body><h1>ESP8266 Web Server</h1>");//Original

            //BODY HEADING HOFFMAN COLLISION
            //client.println("<body><h1>Hoffman Collision ESP8266 Web Server</h1>"); //My Add/Edit
            client.println("<body><h1>John's Garage Door Opener</h1>");  //My Add/Edit Garage Door Opener 07_31_2023

            // Display current state, and ON/OFF buttons for GPIO 5
            client.println("<p>GPIO 5 - State " + output5State + "</p>");
            // If the output5State is off, it displays the ON button
            /*
              if (output5State == "off") {
              client.println("<p><a href=\"/5/on\"><button class=\"button\">Turn Paint Room Lights ON</button></a></p>");// My Edit For Hoffman Collision Paint Room Lights
              } else {
              client.println("<p><a href=\"/5/off\"><button class=\"button button2\">Turn Paint Room Lights OFF</button></a></p>");// My Edit For Hoffman Collision Paint Room Lights
              }
            */

            //My Add/Edit Garage Door Opener 07_31_2023

            //My Add this time delay placement from kolaha Karma: on arduino forum https://forum.arduino.cc/t/garage-door-opener-with-esp8266-web-server/1154364
            if ( (millis() - LastTimeDoorWasActivated) >= DoorDelay) {
              LastTimeDoorWasActivated = millis(); //
              Serial.println("GPIO 5 off");
              //output5State = "off";
              //digitalWrite(output5, HIGH);
              if (output5State == "off")

              {
                client.println("<p><a href=\"/5/on\"><button class=\"button\">The Garage Door is Closed</button></a></p>");// My Edit For Hoffman Collision Paint Room Lights
                // output5State = "on";//MY ADD TESTING /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
                output5State = "off";
                digitalWrite(output5, HIGH);
              }

              else
              {
                client.println("<p><a href=\"/5/off\"><button class=\"button button2\">The Garage Door is Open</button></a></p>");// My Edit For Hoffman Collision Paint Room Lights
                //x output5State = "OFF";//MY ADD TESTING /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
                output5State = "off";
                digitalWrite(output5, HIGH);
              }


            }
            /*

              if (output5State == "off")

              {
               client.println("<p><a href=\"/5/on\"><button class=\"button\">The Garage Door is Closed</button></a></p>");// My Edit For Hoffman Collision Paint Room Lights
               // output5State = "on";//MY ADD TESTING /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
               //digitalWrite(output5, HIGH);
              }

              else
              {
               client.println("<p><a href=\"/5/off\"><button class=\"button button2\">The Garage Door is Open</button></a></p>");// My Edit For Hoffman Collision Paint Room Lights
               //x output5State = "OFF";//MY ADD TESTING /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
               //digitalWrite(output5, HIGH);
              }

            */








            /*

              // Display current state, and ON/OFF buttons for GPIO 4
              client.println("<p>GPIO 4 - State " + output4State + "</p>");
              // If the output4State is off, it displays the ON button
              if (output4State == "off") {
              client.println("<p><a href=\"/4/on\"><button class=\"button\">Turn ON</button></a></p>");// For other rooms and devices
              } else {
              client.println("<p><a href=\"/4/off\"><button class=\"button button2\">Turn OFF</button></a></p>");// For other rooms and devices
              }

              //My Add/Edit ADD ANOTHER RELAY GPIO 14
              // Display current state, and ON/OFF buttons for GPIO 14
              client.println("<p>GPIO 14 - State " + output14State + "</p>");
              // If the output14State is off, it displays the ON button
              if (output14State == "off") {
              client.println("<p><a href=\"/14/on\"><button class=\"button\">Turn ON</button></a></p>");// For other rooms and devices
              } else {
              client.println("<p><a href=\"/14/off\"><button class=\"button button2\">Turn OFF</button></a></p>");// For other rooms and devices
              }
            */

            client.println("</body></html>");

            // The HTTP response ends with another blank line
            client.println();
            // Break out of the while loop
            break;
          } else { // if you got a newline, then clear currentLine
            currentLine = "";
          }
        } else if (c != '\r') {  // if you got anything else but a carriage return character,
          currentLine += c;      // add it to the end of the currentLine
        }
      }
    }
    // Clear the header variable
    header = "";
    // Close the connection
    client.stop();
    Serial.println("Client disconnected.");
    Serial.println("");
  }
}type or paste code here

needs a lot of cleanup.

I suggest you put your sketch to the side and start with a clean ESP8266WebServer.

Here I have a first start for you:

https://werner.rothschopf.net/microcontroller/202307_esp_webserver_en.htm

give it a try.

When you have successfully connected to the new webserver, I can support you to put your current HTML into the webserver.

Thanks much,
I will look at it.

All I am trying to do is initally have the garage door closed with the button in red stating it is closed, then when I click the button have the button say closed until 12 seconds have passed, then the button will turn green and wil state the door is open, then on rhe nect button press of door open 12 sceonds go by and button is red stating door is closed.

That is what I am toying with in the script I have now

just as teaser ... got it running, but needs some cleanup

I get that far too I just need to coordinate the time "12 seconds approx" with the button statement open or closed and the color of the button red for closed green for open

Thanks for your help

now we are back a post #4 wherein I advised you to make dedicated functions for that ...

Ok I understand your point. But are you saying that this script is not going to do the same task even though there are no cleaner functions? Once I get it working, I can always clean it up and add functions.

I do have my garage door opening and closing with this script, I know I am messed up, and not clean with the functions not being there for a cleaner look, but are you saying this script won't work as is, doing what I wish?

Or are you saying start from scratch to make it look cleaner with function.

Sorry for the confusion.

pls give me 20 minutes...

for sure :grinning:

that in the main tab:

/*********
   Door opener
   https://forum.arduino.cc/t/garage-door-opener-with-esp8266-web-server/1154364/18
*********/
//This is bad practice.https://forum.arduino.cc/t/having-issues-adding-a-void-in-this-script/1147852/47
//Output5State should be bool (if it can be only on or off) or uint8_t if there are more options or better: use an enum.

//My Add/Edit
//#77878A color Regent Grey
//#FF0000 color Red
//#195B6A Color Green
// Load Wi-Fi library
#include <ESP8266WiFi.h>
#include <ESP8266WebServer.h>

unsigned long LastTimeDoorWasActivated = 0;
const unsigned long DoorDelay = 12000;

#if true                 // true for stspringer
// Replace with your network credentials
const char* ssid     = "SECURE_10";
const char* password = "DED4DD82CD";
//My Add/ DEFINE STATIC IP 10.0.69.22 WORKING! https://www.youtube.com/watch?v=B9jJI7p2Gw4
IPAddress local_IP(10, 0, 69, 22);
IPAddress gateway(10, 0, 69, 1);
IPAddress subnet(255, 255, 255, 0);
IPAddress primaryDNS(208, 67, 222, 222);
IPAddress secondaryDNS(208, 67, 220, 220);
#endif

#if false                      // true for noiasca
#include "credentials.h"
const char* ssid     = STASSID;
const char* password = STAPSK;
IPAddress local_IP(172, 18, 67, 203);
IPAddress gateway(172, 18, 67, 230);
IPAddress subnet(255, 255, 255, 0);
IPAddress primaryDNS(208, 67, 222, 222);
IPAddress secondaryDNS(208, 67, 220, 220);
#endif

// Set web server port number to 80
ESP8266WebServer server(80);

// Variable to store the HTTP request
//String header;

// Auxiliar variables to store the current output state
String output5State = "off";
String output4State = "off";

//My Add/Edit ADD ANOTHER RELAY GPIO 14
String output14State = "off";

// Assign output variables to GPIO pins
const int output5 = 5;
const int output4 = 4;

//My Add/Edit ADD ANOTHER RELAY GPIO 14
const int output14 = 14;

// Current time
unsigned long currentTime = millis();
// Previous time
unsigned long previousTime = 0;
long interval = 100;           // interval at which to blink (milliseconds)


// Define timeout time in milliseconds (example: 2000ms = 2s)
const long timeoutTime = 2000;

// open door
void doorOpen() {
  output5State = "on";
  digitalWrite(output5, HIGH);
  LastTimeDoorWasActivated = millis();
  Serial.println(F("Door opened"));
}

// forced close
void doorClose() {
  output5State = "off";
  digitalWrite(output5, LOW);
  Serial.println(F("Door closed"));
}

// check if the door needs to be closed
void doorTimer() {
  if (output5State == "on" && (millis() - LastTimeDoorWasActivated) >= DoorDelay){
    doorClose();
    Serial.println(F("Door closed by time"));
  }
}

void setup() {
  Serial.begin(115200);
  // Initialize the output variables as outputs

  pinMode(output5, OUTPUT);
  pinMode(output4, OUTPUT);

  //My Add/Edit ADD ANOTHER RELAY GPIO 14
  pinMode(output14, OUTPUT);

  // Set outputs to LOW //ORIGINAL
  //digitalWrite(output5, LOW);
  //digitalWrite(output4, LOW);

  // My Add/Edit Set outputs to high put load in "NC" Slot
  digitalWrite(output5, HIGH);
  digitalWrite(output4, HIGH);

  //My Add/Edit ADD ANOTHER RELAY GPIO 14
  digitalWrite(output14, LOW);

  // Connect to Wi-Fi network with SSID and password
  Serial.print("Connecting to ");
  Serial.println(ssid);

  //My Add/ Define Static IP Setings working!
  if (!WiFi.config(local_IP, gateway, subnet, primaryDNS, secondaryDNS)) {
    Serial.println("STA Failed to configure");
  }

  WiFi.begin(ssid, password);
  while (WiFi.status() != WL_CONNECTED) {
    delay(500);
    Serial.print(".");
  }
  // Print local IP address and start web server
  Serial.println("");
  Serial.println("WiFi connected.");
  Serial.println("IP address: ");
  Serial.println(WiFi.localIP());

  server.on("/",         handlePage);           // the home page
  server.on("/5/on",     handle5on);            // currently you are using hyperlinks to new pages - therefore you need additional handlers
  server.on("/5/off",    handle5off);
  server.begin();
}

void loop() {
  server.handleClient();               // call the webserver
  doorTimer();
}

make a second tab "server" and put this in

/*
   Webserver Parts

*/

// the main handle for the page
void handlePage() {
  Serial.println(F("D8 handle page"));
  String message;

  // todo: handle incoming parameters

  // Display the HTML web page
  message += F("<!DOCTYPE html><html>\n"
               "<head><meta name=\"viewport\" content=\"width=device-width, initial-scale=1\">\n"
               "<link rel=\"icon\" href=\"data:,\">\n"
               "<meta http-equiv=\"refresh\" content=\"3\">\n"
               "<style>html { font-family: Helvetica; display: inline-block; margin: 0px auto; text-align: center;}"
               ".button { background-color: #FF0000; border: none; color: white; padding: 16px 40px;"
               "text-decoration: none; font-size: 20px; margin: 2px; cursor: pointer;}"
               ".button2 {background-color: #195B6A;}</style>\n</head>\n"
               "<body><h1>John's Garage Door Opener</h1>\n");

  // Display current state, and ON/OFF buttons for GPIO 5
  message += F("<p>GPIO 5 - State ");
  message +=  output5State ;
  message += F("</p>");

  //My Add this time delay placement from kolaha Karma: on arduino forum https://forum.arduino.cc/t/garage-door-opener-with-esp8266-web-server/1154364
  if (output5State == "off") {
    message += F("<p><a href=\"/5/on\" target='i'><button class=\"button\">The Garage Door is Closed</button></a></p>\n");// My Edit For Hoffman Collision Paint Room Lights
  }
  else {
    message += F("<p><a href=\"/5/off\" target='i'><button class=\"button button2\">The Garage Door is Open</button></a></p>\n");// My Edit For Hoffman Collision Paint Room Lights
  }

  message += F("<iframe name='i' style='display:none'></iframe>"); // hack to keep the URI on the main page

  message += F("</body>");
  message += F("</html>");

  server.send(200, "text/html", message);
}

void handle5on() {
  Serial.println(F("handle5on"));
  doorOpen();
  handlePage();
}

void handle5off() {
  Serial.println(F("handle5off"));
  doorClose();
  handlePage();
}

it's still awful code but it should show you how I would make it

  • functions to open/close the door
  • a function to check if the door needs to be closed
  • a page to represent the state
  • two additional resources for your "links" to trigger open/close
    these to resources will send out the same page again.

as mentioned - not a nice code but at least it should be maintainable and more or less functional.

P.S.: if that were your real credentials - use new ones :wink: