Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
Bug du routeur qui ne fonctionne plus apres une coupure EDF
#1
Bonjour à tous,
J'ai vu plusieurs sujets qui parlaient de routeurs qui ne fonctionnaient plus suite à une coupure EDF et qui devaient être redémarrés manuellement (coupure alimentation) pour pouvoir fonctionner à nouveau.
Jusqu’à présent je n'avais pas vraiment d'avis sur la question mais j'ai été confronté récemment à ce problème et je pense avoir compris l'origine du problème.
Dans mon cas après la coupure EDF, le routeur s'est retrouvé en mode AP et est resté en mode AP pendant plus de 48h jusqu’à ce que je sois de retour et que le redémarre via une coupure de son alimentation.
Mon problème s'est produit en V13 mais je pense qu'il se produit également en V14 et plus généralement avec toutes les versions qui n'utilisent plus le watchdog.

Dans le cas d'une coupure EDF, la box et le routeur vont redémarrer en même temps dès que le courant sera rétabli sauf que si le routeur n'arrive pas à se connecter au wifi au bout de 20 secondes il passe en mode AP (lignes 711 et 723 de Solar_Router_V14_00.ino). C'est ce qui s'est passé dans mon cas car ma box met plus de 20 secondes à redémarrer.
Une fois en mode AP, si on ne fait rien, le routeur reste en mode AP ad vitam aeternam d'ou l'obligation de le redémarrer manuellement via la coupure de son alimentation pour qu'il puisse se reconnecter au wifi et fonctionner à nouveau normalement.

En regardant le code je vois que si le routeur est en mode station et que l'on a pas de wifi pendant 24h alors il redémarre (ligne 1041 de Solar_Router_V14_00.ino) mais ce mécanisme de secours n'est pas présent si on est en mode AP.
Je pense qu'il faudrait donc faire quelque chose de similaire pour le mode AP, par exemple dans le else de la ligne 1055 de Solar_Router_V14_00.ino le code suivant pourrait peut-être faire l'affaire :
Code :
if (ModeWifi < 2) {
    WIFIbug++;
    if (WIFIbug > 120) {  // 1h en mode AP Reset
        ESP.restart();
    }
}

Je pense que faire le reset au bout d'une heure en mode AP est acceptable mais cette valeur peut être augmentée si vous pensez que c'est trop juste.
Répondre
#2
En regardant à nouveau le code ce matin il y a quelque chose que je ne comprends pas.
J'utilise un Shelly comme source de mesure et donc dans le cas ou ce problème s'est produit, la variable PuissanceRecue etait à false et la variable PuissanceValide à 5 donc au bout de 3 minutes ESP.restart() a du être appelé (ligne 1075 de Solar_Router_V14_00.ino).
Malgré cela l'ESP ne s'est pas remis à fonctionner par conséquent je pense que l'appel à ESP.restart() n'est pas suffisant pour redémarrer l'ESP de manière équivalente à une coupure de son alimentation.
Répondre
#3
Le routeur n'a probablement jamais démarré correctement après la coupure. Néanmoins je mets dans le source votre suggestion d'amélioration du code. Il faut mettre 24h car certains coupent le WIFI la nuit et le système passe en AP.

André
Répondre
#4
Rectificatif après réflexion, on peut mettre 1h car le routeur ne passe en AP qu'après 24h
André
Répondre


Atteindre :


Utilisateur(s) parcourant ce sujet : 9 visiteur(s)