nodemcuwifi
Create nodemcuwifi.h and include it in main source code, also add these defined entry before the “include” in the main source code:
#define WIFI_SSID "ssid" #define WIFI_PASSWORD "password" #include "nodemcuwifi.h"
#include <ESP8266WiFi.h>
#include <Ticker.h>
bool nodemcuwificonnected = false;
unsigned long startAttemptTime;
WiFiEventHandler wifiConnectHandler;
WiFiEventHandler wifiDisconnectHandler;
Ticker wifiReconnectTimer;
void onWifiConnect(const WiFiEventStationModeGotIP& event);
void onWifiDisconnect(const WiFiEventStationModeDisconnected& event);
void initializenodemcuwifi() {
wifiConnectHandler = WiFi.onStationModeGotIP(onWifiConnect);
wifiDisconnectHandler = WiFi.onStationModeDisconnected(onWifiDisconnect);
WiFi.disconnect();
Serial.println("Connecting to Wi-Fi...");
WiFi.begin(WIFI_SSID, WIFI_PASSWORD);
startAttemptTime = millis();
nodemcuwificonnected = false;
while (WiFi.status() != WL_CONNECTED && millis() - startAttemptTime < 10000) delay(500); // Small delay to avoid spamming
}
void onWifiConnect(const WiFiEventStationModeGotIP& event) {
Serial.println("Connected to Wi-Fi.");
Serial.println("");
Serial.println("WiFi connected");
Serial.print("IP address: ");
Serial.println(WiFi.localIP());
nodemcuwificonnected = true;
}
void onWifiDisconnect(const WiFiEventStationModeDisconnected& event) {
Serial.println("Disconnected from Wi-Fi.");
wifiReconnectTimer.once(2, initializenodemcuwifi);
Serial.println("");
Serial.println("NO WIFI");
nodemcuwificonnected = false;
}
nodemcuwifi.txt · Last modified: by 127.0.0.1
