Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
Reboot des ESP32
#1
Bonjour André,

Je possède 3 routeurs ESP32 : 1 en UXI en source de mesures au Disjoncteur d'entré de la maison et 2 en ESP Externe (Ballon et Sèche Seviettes).
Depuis que je suis passé en V9.03, je n'arrive plus à me connecter (ou alors 1 fois sur 10) sur l'ESP UXI ! Mais le problème est qu'il me fait un reboot sur les 2 autres ESP avec perte des données au moment ou je tente de me connecter Huh ...
Je n'ai aucun soucis d'accès au 2 autres ESP32.
J'utilise MQTT pour la remontée des infos vers Jeedom qui fonctionne bien sur les 3 ESP. 
Le reboot/reset se fait uniquement lorsque j'essaye d'accéder à l'ESP UXI qui fonctionne bien malgré tout car j'ai bien les infos sur les 2 autres et Jeedom le reste du temps !!!
J'ai réinstallé la version 9.0.3 pour être sur mais le problème persiste ...
As tu une idée du problème  Huh .

A part ce petit soucis et malgré la pluie l'ensemble est au TOP Wink .
Merci André
3 ESP32 :  
1 ESP UxI en mode mesure au disjoncteur de la maison,
1 ESP Externe avec Triac pour le CE, 
1 Externe avec SSR pour allumer un sèche serviette
Domotique Jeedom et MQTT
1 Shelly 3EM en mode mesure (Test)
Ajout Hyper2000 + AB2000 de Zendure
Répondre
#2
Essayez de re-installer la version 9.03 mais avant vous allez sur : Outils --> Erase all flash before sketch upload-->Enabled

Cordialement, André.
Répondre
#3
(17-06-2024, 07:42 AM)F1ATB a écrit : Essayez de re-installer la version 9.03 mais avant vous allez sur : Outils --> Erase all flash before sketch upload-->Enabled

Cordialement, André.

Bonjour André,

je viens de faire la manip : Outils --> Erase all flash before sketch upload-->Enabled et modifié la CLE_Rom_Init pour être sur de repartir a 0 !
Malheureusement le problème persiste Huh .
Pourtant le ping est bon avant de me reconnecter sur l'ESP UxI !
J'ai l'impression que la connexion provoque une "surcharge" de l'ESP,  mais ce qui me surprend c'est le reboot des autres ESP au même moment.
ça ne gène aucunement le fonctionnement global des 3 ESP tant que je ne me connecte pas sur l'ESP UxI.

A suivre, on dirait que je suis le seul à avoir ce soucis, les mystères de l'informatique ...
Peut être que la prochaine version réglera le problème.

Bien cordialement
3 ESP32 :  
1 ESP UxI en mode mesure au disjoncteur de la maison,
1 ESP Externe avec Triac pour le CE, 
1 Externe avec SSR pour allumer un sèche serviette
Domotique Jeedom et MQTT
1 Shelly 3EM en mode mesure (Test)
Ajout Hyper2000 + AB2000 de Zendure
Répondre
#4
Non, j'ai aussi un problème similaire d'instabilité en V_9.02 que je n'avais pas avec V_9.01 et l'ancienne bibliothèque. d'autres que nous également, mais Pas André chez lui de ce que je comprends. Ce qui rend l'analyse bougrement compliquée.

Parfois mon serveur UxIx3 re-boote, parfois les clients re-bootent tous, et je n'ai pas réussi à isoler le problème. en V_9.01, tout marche parfaitement.
On dirait qu'il y a un problème lorsqu'on se connecte en page HTML depuis l'ordi. Parfois sur le serveur, parfois sur les clients (ou les deux ?). Le genre de bug difficile à tracker et identifier. Et si on laisse tourner sans intervenir, apparemment ça tourne.
Je suis repassé en V_9.01 sur tous mes ESP32 pour le moment. Et tout marche merveilleusement bien.
V12.03 modifiée. 1 serveur UxIx3, 1 Linky, 1 client Triac CE tampon + 1 client SSR CE tampon + 1 client SSR sur CE tri + 2 SSR sur radiateurs bain d'huile d'appoint. Variateurs de fréquence Piscine.
8 panneaux (4 SO 2 S, 2 SE ) 425Wc sur 4 HM800 produisent 13kWh par jour ensoleillé à fin Novembre.
Répondre
#5
Bonjour,

  une piste : le timing watchdog réglé par André sur 180s  avec 
Code :
#define WDT_TIMEOUT 180
 ne semble pas considéré, il faut ajouter une ligne (au début du setup) pour annuler le réglage par défaut (qui n'est que de quelques secondes)
=> esp_task_wdt_deinit();
si l'appel d'une page html prend un peu de temps et empêche de nourrir le chien avec un esp_task_wdt_reset(); alors ça reboot (idem pour les autres ESP qui attendent désespérément un signal de l'ESP qui génère les infos puissance
Code :
  // Watchdog initialisation    (https://esp32.com/viewtopic.php?t=40261)
  esp_task_wdt_deinit();                 // ensure a watchdog is not already configured
  esp_task_wdt_config_t wdt_config = {   // Initialisation de la structure de configuration pour la WDT
      .timeout_ms = WDT_TIMEOUT * 1000,  // Convertir le temps en millisecondes       
      .idle_core_mask = (1 << portNUM_PROCESSORS) - 1,    // Bitmask of all cores
      .trigger_panic = true // Enable panic to restart ESP32
  };
Merci André Smile ,
Routeur V12.06 (since V2.01) / 1xESP32 (IP fixe) / Source UxI / 5 actions
Panneaux 1680Wc
1 Triac : ECS 2000W
1 SSR (multi) : ECS 1800W
1 SSR (On-Off) : Circulateur plancher chauffant eau 50W
1 SSR (multi) : circuit d'eau 1500W
1 SSR (multi) : Ultime 2000W
Répondre
#6
(17-06-2024, 08:27 PM)michy a écrit : Bonjour,

  une piste : le timing watchdog réglé par André sur 180s  avec 
Code :
#define WDT_TIMEOUT 180
 ne semble pas considéré, il faut ajouter une ligne (au début du setup) pour annuler le réglage par défaut (qui n'est que de quelques secondes)
=> esp_task_wdt_deinit();
si l'appel d'une page html prend un peu de temps et empêche de nourrir le chien avec un esp_task_wdt_reset(); alors ça reboot (idem pour les autres ESP qui attendent désespérément un signal de l'ESP qui génère les infos puissance
Code :
  // Watchdog initialisation    (https://esp32.com/viewtopic.php?t=40261)
  esp_task_wdt_deinit();                 // ensure a watchdog is not already configured
  esp_task_wdt_config_t wdt_config = {   // Initialisation de la structure de configuration pour la WDT
      .timeout_ms = WDT_TIMEOUT * 1000,  // Convertir le temps en millisecondes       
      .idle_core_mask = (1 << portNUM_PROCESSORS) - 1,    // Bitmask of all cores
      .trigger_panic = true // Enable panic to restart ESP32
  };

Voilà une bonne piste. Merci !

Mais cela n'explique pas pourquoi ça marche chez André en l'état, sauf si son PC est une bête de course.
V12.03 modifiée. 1 serveur UxIx3, 1 Linky, 1 client Triac CE tampon + 1 client SSR CE tampon + 1 client SSR sur CE tri + 2 SSR sur radiateurs bain d'huile d'appoint. Variateurs de fréquence Piscine.
8 panneaux (4 SO 2 S, 2 SE ) 425Wc sur 4 HM800 produisent 13kWh par jour ensoleillé à fin Novembre.
Répondre
#7
Dans le programme du Routeur il y a 2 tests qui font rebooter si nécessaire, l'ESP 32.

- Le test du Watch-Dog est utilisé pour uniquement contrôler l'arrivée des données de puissance, toutes les 500 millisecondes à 2 secondes suivant le capteur de puissance. Si au bout de 180s , on n'a pas de mesure de puissance. Le système reboot. Ce test du Watchdog se passe uniquement sur le coeur 0.

- 2eme source de reboot, c'est le l'observation du Wifi . Toutes les 30s on teste la connection Wifi. Si pendant 3*30 secondes, on n'a pas de Wifi. Le système reboot On voit cela avec la variable Wifibug qui si elle est différente de 0 est affichée dans les messages en bas de page des données brute. Ce test concerne le coeur 1.

Cordialement, André.
Répondre
#8
Merci André,
oui, c'est ce que j'ai vu dans le code.

Mais en V9.02 (je n'ai pas testé V9.03), le reboot est très rapide, et bien plus rapide que 180s dès qu'on perturbe avec des lectures via page web.
Tout ce passe comme si on n'attendait pas 180s mais quelques secondes tout au plus. Il doit bien y avoir une raison qui explique ce reboot qui ne se produit pas en V9.01.
Cdlt,
Ph.
V12.03 modifiée. 1 serveur UxIx3, 1 Linky, 1 client Triac CE tampon + 1 client SSR CE tampon + 1 client SSR sur CE tri + 2 SSR sur radiateurs bain d'huile d'appoint. Variateurs de fréquence Piscine.
8 panneaux (4 SO 2 S, 2 SE ) 425Wc sur 4 HM800 produisent 13kWh par jour ensoleillé à fin Novembre.
Répondre
#9
Cela doit être le wifi qui plante
Répondre
#10
Je confirme, le reboot est instantané dès la connexion html sur l'ESP UxI et déclenche le reboot sur les 2 autres ESP32.

La piste du Watchdog est intéressante ...
3 ESP32 :  
1 ESP UxI en mode mesure au disjoncteur de la maison,
1 ESP Externe avec Triac pour le CE, 
1 Externe avec SSR pour allumer un sèche serviette
Domotique Jeedom et MQTT
1 Shelly 3EM en mode mesure (Test)
Ajout Hyper2000 + AB2000 de Zendure
Répondre


Atteindre :


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