Note de ce sujet :
  • Moyenne : 0 (0 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
Affichage Linky en temps réel
#1
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);
      |          ^~~~~~~~~~~~~~~~~
Petite installation 2 x 260 Watts (un est ,un ouest) installé depuis 2018 (3,7 Mw produit dont 0.7 donnés)
Modif de la résistance CE 400W au lieu de 1600
Raspberry pi 4 B 2Go qui récupère la production sur impulsion compteur MCI et données routeur en MQTT 
Routeur en V_11.6 sur UxI 

Répondre
#2
(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 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
#3
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é
Répondre
#4
(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
Petite installation 2 x 260 Watts (un est ,un ouest) installé depuis 2018 (3,7 Mw produit dont 0.7 donnés)
Modif de la résistance CE 400W au lieu de 1600
Raspberry pi 4 B 2Go qui récupère la production sur impulsion compteur MCI et données routeur en MQTT 
Routeur en V_11.6 sur UxI 

Répondre


Atteindre :


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