(01-10-2025, 12:22 AM)Serge19 a écrit : Bonsoir André et Alain_H,Bonjour Serge19,
Juste un détail concernant la sauvegarde en EEPROM après l’utilisation du WPS : j'ai testé et j'obtiens le même résultat en déplaçant la fonction EcritureEnROM() comme ci-dessous.
Un autre point de détail : l’emplacement proposé par Alain_H pour la sauvegarde en EEPROM entraîne deux écritures successives. Or, le nombre de cycles d’écriture en EEPROM est forcément limité — même si je n’ai pas vérifié la limite dans le datasheet de l’ESP32.
case ARDUINO_EVENT_WIFI_STA_GOT_IP: //SR19
TelnetPrintln("WiFi : " + String(WiFi.SSID()) + " connecté via WPS!"); //SR19
ssid = (WiFi.SSID()); //Récup ssid //SR19
TelnetPrintln("Récupération IP de " + hostname + " -> " + (WiFi.localIP().toString())); //SR19
TelnetPrintln("Récupération password -> " + String(WiFi.psk())); //SR19
password = (WiFi.psk()); //Récup password //SR19
isGOT_IP = true; /*IP reçue*/ //SR19
EcritureEnROM(); // sauvegarde dans l’EEPROM
break;
J'ai regardé la durée de vie d'une EEPROM entre 10000 et 100000 cycles
si on fait un changement de SSID et PASSWORD de sa box tous les jours cela correspondrais à:
Endurance typique de la flash (l’“EEPROM” de l’ESP32 est en fait de la flash)
- Typique : ~10 000 cycles (souvent plus, selon la puce).
- 10 000 cycles ⇒ 10 000 jours ≈ 27 ans
- 100 000 cycles ⇒ 100 000 jours ≈ 274 ans
Merci et très bonne remarque je m'en suis vraiment soucié.
Si cela cause vraiment un gros problème alors peut être regardé sur EEPROM la concordance entre le mot de passe en EEPROM et le SSID et PASS reçu, le seul défaut dans cette approche c'est que le password reçu est en PSK et donc une suite Hexadécimale et que si le passe est écris en dur (le vrai mot de passe de la box) automatiquement il en conclura que l'on peut l'écrire en EEPROM. Après il est vrai que en déplaçant l'écriture en case GOT_IP on as récupéré l'adresse IP, c'est surement mieux j'avais password.trim(); pour nettoyer le mot de passe de caractères parasite car j'ai eu le soucis et pas tout le temps.
Dans ta mdification cela n'écris qu'une ligne de code et c'est super, mais j'ajouterai password.trim() pour la sécurité. Tu peut voir avec André pour ta modification, car il m'a dis qu'il mettrais ça en version 15.10.
Merci à toi.