F1ATB forum
Affichage Linky en temps réel - Version imprimable

+- F1ATB forum (https://f1atb.fr/forum_f1atb)
+-- Forum : Forum de F1ATB (https://f1atb.fr/forum_f1atb/forum-3.html)
+--- Forum : Routeur Photovoltaïque (https://f1atb.fr/forum_f1atb/forum-4.html)
+--- Sujet : Affichage Linky en temps réel (/thread-309.html)



Affichage Linky en temps réel - lolo_Drome - 12-08-2024

Bonsoir,
je n'arrive pas à compiler version 1_10 de Affichage Linky en temps réel
alors que la compil du routeur v11_16 passe avec la même ligne (N° 111)

C:\B\Dropbox\Doc_bernard\Arduino\_Solaire\Lecture_Linky_Historique_v1_10\Lecture_Linky_Historique_v1_10\Lecture_Linky_Historique_v1_10.ino:105:21: error: invalid conversion from 'int' to 'const esp_task_wdt_config_t*' [-fpermissive]
  105 | #define WDT_TIMEOUT 120
      |                    ^~~
      |                    |
      |                    int
C:\B\Dropbox\Doc_bernard\Arduino\_Solaire\Lecture_Linky_Historique_v1_10\Lecture_Linky_Historique_v1_10\Lecture_Linky_Historique_v1_10.ino:116:21: note: in expansion of macro 'WDT_TIMEOUT'
  116 |  esp_task_wdt_init(WDT_TIMEOUT, true);  //enable panic so ESP32 restarts
      |                    ^~~~~~~~~~~
C:\B\Dropbox\Doc_bernard\Arduino\_Solaire\Lecture_Linky_Historique_v1_10\Lecture_Linky_Historique_v1_10\Lecture_Linky_Historique_v1_10.ino:116:20: error: too many arguments to function 'esp_err_t esp_task_wdt_init(const esp_task_wdt_config_t*)'
  116 |  esp_task_wdt_init(WDT_TIMEOUT, true);  //enable panic so ESP32 restarts
      |  ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
In file included from C:\B\Dropbox\Doc_bernard\Arduino\_Solaire\Lecture_Linky_Historique_v1_10\Lecture_Linky_Historique_v1_10\Lecture_Linky_Historique_v1_10.ino:24:
C:\Users\berna\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_v5.1-dc859c1e67\esp32/include/esp_system/include/esp_task_wdt.h:47:11: note: declared here
  47 | esp_err_t esp_task_wdt_init(const esp_task_wdt_config_t *config);
      |          ^~~~~~~~~~~~~~~~~


RE: Affichage Linky en temps réel - michy - 15-08-2024

(12-08-2024, 06:18 PM)lolo_Drome a écrit : Bonsoir,
je n'arrive pas à compiler version 1_10 de Affichage Linky en temps réel
alors que la compil du routeur v11_16 passe avec la même ligne (N° 111)

C:\B\Dropbox\Doc_bernard\Arduino\_Solaire\Lecture_Linky_Historique_v1_10\Lecture_Linky_Historique_v1_10\Lecture_Linky_Historique_v1_10.ino:105:21: error: invalid conversion from 'int' to 'const esp_task_wdt_config_t*' [-fpermissive]
  105 | #define WDT_TIMEOUT 120
      |                    ^~~
      |                    |
      |                    int
C:\B\Dropbox\Doc_bernard\Arduino\_Solaire\Lecture_Linky_Historique_v1_10\Lecture_Linky_Historique_v1_10\Lecture_Linky_Historique_v1_10.ino:116:21: note: in expansion of macro 'WDT_TIMEOUT'
  116 |  esp_task_wdt_init(WDT_TIMEOUT, true);  //enable panic so ESP32 restarts
      |                    ^~~~~~~~~~~
C:\B\Dropbox\Doc_bernard\Arduino\_Solaire\Lecture_Linky_Historique_v1_10\Lecture_Linky_Historique_v1_10\Lecture_Linky_Historique_v1_10.ino:116:20: error: too many arguments to function 'esp_err_t esp_task_wdt_init(const esp_task_wdt_config_t*)'
  116 |  esp_task_wdt_init(WDT_TIMEOUT, true);  //enable panic so ESP32 restarts
      |  ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
In file included from C:\B\Dropbox\Doc_bernard\Arduino\_Solaire\Lecture_Linky_Historique_v1_10\Lecture_Linky_Historique_v1_10\Lecture_Linky_Historique_v1_10.ino:24:
C:\Users\berna\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_v5.1-dc859c1e67\esp32/include/esp_system/include/esp_task_wdt.h:47:11: note: declared here
  47 | esp_err_t esp_task_wdt_init(const esp_task_wdt_config_t *config);
      |          ^~~~~~~~~~~~~~~~~

Bonjour,

  On est bien d'accord que ce programme permet l'affichage de la téléinfo en mode Historique (pas compatible avec le mode Standard utilisé pour le routeur basé sur Linky)

  quelques modifications mineurs a faire pour passer en ESP32 V3.0.x (si la V11.16 compile c'est ça)

Modification ligne 304 du fichier d'origine / ajout d'un delai de 1 milliseconde :
Code :
        esp_task_wdt_reset();
        previousWatchdogMillis = millis();

a remplacer par 
Code :
        esp_task_wdt_reset();
        delay(1);                                 //VERY VERY IMPORTANT for Watchdog Reset
        previousWatchdogMillis = millis();

-----------------

Modification ligne 130 dans le fichier origine / ajout d'un delai de 1 milliseconde :
 
Code :
esp_task_wdt_reset();
  WiFi.begin(ssid, password);

a remplacer par 
Code :
  esp_task_wdt_reset();
  delay(1);                                       //VERY VERY IMPORTANT for Watchdog Reset
  WiFi.begin(ssid, password);

-----------------

  Modification lignes  116 et + dans le fichier d'origine :
Code :
  //Watchdog initialisation
  esp_task_wdt_init(WDT_TIMEOUT, true);  //enable panic so ESP32 restarts
  esp_task_wdt_add(NULL);                //add current thread to WDT watch
  //Ports Série

a remplacer par :
 
Code :
//Watchdog initialisation
  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,
    .idle_core_mask = (1 << portNUM_PROCESSORS) - 1,
    .trigger_panic = true
  };
  esp_task_wdt_init(&wdt_config);       //config watchdog
  esp_task_wdt_add(NULL);               //add current thread to WDT watch
  esp_task_wdt_reset();
  delay(1);                                       //VERY VERY IMPORTANT for Watchdog Reset
  //Ports Série
  

Il restera quelques (beaucoup) de warning 
* du fichier "PageWeb.cpp", pas critique, le compilateur corrige
* RemoteDebug qui utilise les fonctions Wifi déprécié mais encore utilisable


RE: Affichage Linky en temps réel - F1ATB - 16-08-2024

Il faudrait installer temporairement l'ancienne bibliothèque de l'Esp32 Version 2.xx et non la 3.xx Ainsi vous n'aurez pas de problème de compilation.
André


RE: Affichage Linky en temps réel - lolo_Drome - 16-08-2024

(16-08-2024, 07:40 AM)F1ATB a écrit : Il faudrait installer temporairement l'ancienne bibliothèque de l'Esp32 Version 2.xx et non la 3.xx Ainsi vous n'aurez pas de problème de compilation.
André

MERCI   ça passe

(15-08-2024, 11:37 PM)michy a écrit :
(12-08-2024, 06:18 PM)lolo_Drome a écrit : Bonsoir,
je n'arrive pas à compiler version 1_10 de Affichage Linky en temps réel
alors que la compil du routeur v11_16 passe avec la même ligne (N° 111)

C:\B\Dropbox\Doc_bernard\Arduino\_Solaire\Lecture_Linky_Historique_v1_10\Lecture_Linky_Historique_v1_10\Lecture_Linky_Historique_v1_10.ino:105:21: error: invalid conversion from 'int' to 'const esp_task_wdt_config_t*' [-fpermissive]
  105 | #define WDT_TIMEOUT 120
      |                    ^~~
      |                    |
      |                    int
C:\B\Dropbox\Doc_bernard\Arduino\_Solaire\Lecture_Linky_Historique_v1_10\Lecture_Linky_Historique_v1_10\Lecture_Linky_Historique_v1_10.ino:116:21: note: in expansion of macro 'WDT_TIMEOUT'
  116 |  esp_task_wdt_init(WDT_TIMEOUT, true);  //enable panic so ESP32 restarts
      |                    ^~~~~~~~~~~
C:\B\Dropbox\Doc_bernard\Arduino\_Solaire\Lecture_Linky_Historique_v1_10\Lecture_Linky_Historique_v1_10\Lecture_Linky_Historique_v1_10.ino:116:20: error: too many arguments to function 'esp_err_t esp_task_wdt_init(const esp_task_wdt_config_t*)'
  116 |  esp_task_wdt_init(WDT_TIMEOUT, true);  //enable panic so ESP32 restarts
      |  ~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~
In file included from C:\B\Dropbox\Doc_bernard\Arduino\_Solaire\Lecture_Linky_Historique_v1_10\Lecture_Linky_Historique_v1_10\Lecture_Linky_Historique_v1_10.ino:24:
C:\Users\berna\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_v5.1-dc859c1e67\esp32/include/esp_system/include/esp_task_wdt.h:47:11: note: declared here
  47 | esp_err_t esp_task_wdt_init(const esp_task_wdt_config_t *config);
      |          ^~~~~~~~~~~~~~~~~

Bonjour,

  On est bien d'accord que ce programme permet l'affichage de la téléinfo en mode Historique (pas compatible avec le mode Standard utilisé pour le routeur basé sur Linky)

  quelques modifications mineurs a faire pour passer en ESP32 V3.0.x (si la V11.16 compile c'est ça)

Modification ligne 304 du fichier d'origine / ajout d'un delai de 1 milliseconde :
Code :
        esp_task_wdt_reset();
        previousWatchdogMillis = millis();

a remplacer par 
Code :
        esp_task_wdt_reset();
        delay(1);                                 //VERY VERY IMPORTANT for Watchdog Reset
        previousWatchdogMillis = millis();

-----------------

Modification ligne 130 dans le fichier origine / ajout d'un delai de 1 milliseconde :
 
Code :
  esp_task_wdt_reset();
  WiFi.begin(ssid, password);

a remplacer par 
Code :
  esp_task_wdt_reset();
  delay(1);                                       //VERY VERY IMPORTANT for Watchdog Reset
  WiFi.begin(ssid, password);

-----------------

  Modification lignes  116 et + dans le fichier d'origine :
Code :
  //Watchdog initialisation
  esp_task_wdt_init(WDT_TIMEOUT, true);  //enable panic so ESP32 restarts
  esp_task_wdt_add(NULL);                //add current thread to WDT watch
  //Ports Série

a remplacer par :
 
Code :
//Watchdog initialisation
  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,
    .idle_core_mask = (1 << portNUM_PROCESSORS) - 1,
    .trigger_panic = true
  };
  esp_task_wdt_init(&wdt_config);       //config watchdog
  esp_task_wdt_add(NULL);               //add current thread to WDT watch
  esp_task_wdt_reset();
  delay(1);                                       //VERY VERY IMPORTANT for Watchdog Reset
  //Ports Série
  

Il restera quelques (beaucoup) de warning 
* du fichier "PageWeb.cpp", pas critique, le compilateur corrige
* RemoteDebug qui utilise les fonctions Wifi déprécié mais encore utilisable
MERCI J'ai choisi la réponse d'André qui est plus simple