Releases: marinpopa/AsyncWiFiManagerSimple
v1.1.1
FIX #1 — CRITIC: dnsServer.start() apelat inainte de WiFi.softAP()
Fisier: AsyncWiFiManagerSimple.cpp → startConfigMode()
Cauza: WiFi.softAPIP() returna 0.0.0.0 daca AP nu era pornit inca.
dnsServer.start() era apelat de doua ori (o data cu IP gresit,
o data cu IP corect), ceea ce provoca crash sau comportament
nedefinit pe ESP32-S3.
Fix: Ordine corecta: WiFi.mode() → WiFi.softAP() → delay(100)
→ dnsServer.start() apelat O singura data cu IP valid.
FIX #2 — CRITIC: Conflict namespace Preferences cu codul principal
Fisier: AsyncWiFiManagerSimple.h + .cpp
Cauza: Namespace "wifi-config" putea coliziona cu Preferences
din codul principal, corupand datele NVS.
Fix: Namespace schimbat in "awm-wifi" (prefix unic).
Definit ca PREFS_NAMESPACE in header pentru claritate.
Nota: La primul boot dupa update, retele salvate anterior
(namespace vechi "wifi-config") nu vor fi gasite.
Dispozitivul intra in AP mode, reconfigurati o data.
FIX #3 — MEDIU: delay() blocant in handleri async → risc WDT reset
Fisier: AsyncWiFiManagerSimple.cpp → handleSave(), handleDelete()
Cauza: delay(500) + ESP.restart() in callback FreeRTOS task
blocheaza scheduler-ul, poate declansa Watchdog Timer
reset pe ESP32-S3.
Fix: Inlocuit cu xTaskCreate() non-blocking:
vTaskDelay(600ms) → ESP.restart() intr-un task separat.
FIX #4 — MINOR: networkCount nu era clamped la MAX_NETWORKS
Fisier: AsyncWiFiManagerSimple.cpp → loadSavedNetworks()
Cauza: NVS corupt putea salva count > MAX_NETWORKS, cauzand
buffer overflow la accesarea savedNetworks[].
Fix: Adaugat: if (networkCount > MAX_NETWORKS) networkCount = MAX_NETWORKS;
FIX #5 — MINOR: Variabile static locale in checkWiFiConnection()
Fisier: AsyncWiFiManagerSimple.h + .cpp
Cauza: static unsigned long lastReconnectAttempt si
static bool wasConnected pot persista cu valori gresite
dupa sleep/wake pe ESP32-S3 cu RTC memory.
Fix: Mutate ca membri privati in clasa (initializate la 0/false).
FIX #6 — MINOR: SSID pierdut nu se logha corect
Fisier: AsyncWiFiManagerSimple.h + .cpp
Cauza: WiFi.SSID() returneaza string gol cand conexiunea e pierduta.
Linia era comentata din aceasta cauza.
Fix: Adaugat membru String lastConnectedSSID care se salveaza
la fiecare conectare reusita si se afiseaza la deconectare.
v1.1.0 – Updated AsyncWiFiManagerSimple.cpp
Added Captive Portal — automatically opens web page
AsyncWiFiManagerSimple 1.0.0
Initial public release.
- Asynchronous WiFi captive portal for ESP32
- Dynamic WiFi scanning (RSSI sorted)
- Multi-network storage (NVS)
- No SPIFFS, HTML stored in PROGMEM