User Tools

Site Tools


nodemcuwifi

This is an old revision of the document!


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.1732090898.txt.gz · Last modified: (external edit)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki