Note de ce sujet :
  • Moyenne : 5 (2 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
Version 12 disponible
(24-10-2024, 06:47 PM)F1ATB a écrit : Bonjour.

Oui, ce problème de Watch Dogs m'a été signalé hier soir. J'ai pu le constater de mon côté. Je travaille dessus depuis ce matin. C'est un comportement au niveau de la mémoire, un peu étrange. Quand on enlève des bouts de code, ça refonctionne, bien que le compilateur ne nous dise jamais 'Débordements de mémoire'. Actuellement, j'essaie une version 12.06 dans laquelle j'ai réorganisé la partition mémoire et cela semble fonctionner. Je la publierai quand j'aurai fini mes tests.
Cordialement, André

Bonjour André,
  si ça commence à manquer de RAM, on peut facilement gagner plusieurs ko en utilisant des entiers adaptés à l'étendue des données stocker,
  pris un par un c'est négligeable mais ici, on utilise des gros tableaux (jusque 6000 éléments), ça vaut le coup de se pencher sur le sujet

Code :
int tabPw_Maison_5mn[600];  //Puissance Active:Soutiré-Injecté toutes les 5mn
int tabPw_Triac_5mn[600];
int tabTemperature_5mn[4][600];
int tabPw_Maison_2s[300];  //Puissance Active: toutes les 2s
int tabPw_Triac_2s[300];    //Puissance Triac: toutes les 2s
int tabPva_Maison_2s[300];  //Puissance Active: toutes les 2s
int tabPva_Triac_2s[300];
int tabPulseSinusOn[101];
int tabPulseSinusTotal[101];
int tab_histo_ouverture[LesActionsLength][600];
int IdxStock2s = 0;
int IdxStockPW = 0;
ce 'paquet' pèse pas loin de 44ko de RAM

Code :
int16_t tabPw_Maison_5mn[600];      // Puissance Active:Soutiré-Injecté toutes les 5mn de -32000 a +32000
int16_t tabPw_Triac_5mn[600];
int16_t tabTemperature_5mn[4][600]; // en dixieme de degrés -1270 +1280
int16_t tabPw_Maison_2s[300];       // Puissance Active: toutes les 2s
int16_t tabPw_Triac_2s[300];        // Puissance Triac: toutes les 2s
int16_t tabPva_Maison_2s[300];      // Puissance Active: toutes les 2s
int16_t tabPva_Triac_2s[300];
int8_t tabPulseSinusOn[101];        // 0 a 100
int8_t tabPulseSinusTotal[101];     // 0 a 100
int8_t tab_histo_ouverture[LesActionsLength][600];  // 0 a 100
int16_t IdxStock2s = 0;             // % 300
int16_t IdxStockPW = 0;             // % 600

En ajustant les types de variable, on tombe en dessous de 15ko

c'est un peu plus de 28k de gagner pour faire autre chose (dont soigner le chien malade ... )

de mes essais, cette adaptation n'impacte pas le reste du programme
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
C'est la mémoire FLASH qui manque. Actuellement pas de souci avec la RAM. Mais je suis d'accord qu'il faudrait optimiser un jour.
Cdlt
André
Répondre
Bonsoir,

Encore un énorme merci pour la qualité du routeur, de votre travail , de votre engagement et de votre efficacité...
Ce petit message pour signaler peut être un léger bug ?
J'ai fait la mise à jour en V12.05 , triphasé, shelly 3 EM , 2 sonde Température
Depuis cela , je n'ai plus l'affichage de la Puissance Apparente, la ligne bleue s'affiche qqs 10eme de seconde puis disparait.
Cela n'est pas dérangeant car ce n'est pas la valeur de référence de la consommation, mais je trouve cela étonnant.
Merci
Répondre
(24-10-2024, 05:58 PM)Stargate a écrit : Bonjour à tous et encore merci André

Configuration :
UxIx2 avec triac mode découpe sinus.
Après passage en version 12 :
Il semblerait que le chien de garde se déclenche et que le reboot ne se fasse pas.
Message console :
------------------------------------------
"ESP32 ON depuis : 0.04 heures
Niveau Signal WIFI:-72
IP address_: 192.168.1.136
WIFIbug : #0
Puissance reçue : Non
Charge Lecture RMS (coeur 0) en ms - Min : 1 Moy : 1  Max : 2
Charge Boucle générale (coeur 1) en ms - Min : 2 Moy : 2  Max : 2
Mémoire RAM libre actuellement: 90232 byte
Mémoire RAM libre minimum: 83700 byte
ESP32 ON depuis : 0.05 heures
E (192405) task_wdt: Task watchdog got triggered. The following tasks/users did not reset the watchdog in time:
E (192405) task_wdt:  - loopTask (CPU 1)
E (192406) task_wdt: Tasks currently running:
E (192406) task_wdt: CPU 0: IDLE0
E (192406) task_wdt: CPU 1: IDLE1
E (192408) task_wdt: Aborting.
E (192420) task_wdt: Print CPU 1 (current core) backtrace

Backtrace: 0x4008c743:0x3ffdaa40 0x40105ca1:0x3ffdaa60 0x4008fc63:0x3ffdaa80 0x4008eff2:0x3ffdaaa0

ELF file SHA256: 0ee389983"
------------------------------------------------------
daa80 0x40
-Raccordement au Port série sans les périphériques sur table ou en wifi en boitier montage complet., même problème
-Tensions alim bonnes (5V2A,3,3V).
-Comme indiqué par André comme j'ai effectué de nombreux chargements, changement du mot de passe Wi FI et retour à l'ancien, même problème,
-Passage en uxi sans le montage externe ou tous les autres capteurs de puissance, plus de blocage 
-Retour en V11 19 : - Avec UxIx2 pas de blocage mais reboot toutes les 0,02 h (chien de garde ?)
-Reste à tester avec d'autres esp32 en attente de réception.

Je suis preneur d'avis éclairés
Merci
Bernard


ELF file SHA256: 0ee389983
Bonjour.
La version 12 . 06 est à présent en ligne, elle corrige ce problème de Watchdog En fait le programme en mémoire Flash semble débordé. Et quand on enlève un peu de code, tout redevient de l'ordre. J'ai donc changé la partition mémoire dans la mémoire Flash en faisant une partition adaptée à ce programme qui est décrite dans un fichier qui s'appelle partitions. CSV. Ceci uniquement pour les personnes qui voudraient compiler avec l'IDE Arduino. Pour les versions pré compilées que vous trouvez sur le site, vous n'avez rien à faire, uniquement   les télécharger pour faire les mises à jour.
Cordialement, André.
Répondre
Bonjour André et merci pour cette dernière version.

Comme je  compile avec l'IDE Arduino, que dois-je faire dans ce fichier  partitions. CSV et ou le trouver ?

Merci encore.
Ma config: 6 x ESP32, Routeurs V11.17,  1 routeur Linky1, 1 Chauffe E, 1 Piscine, 3 Radiateurs ,  (4 avec Triac), +1 afficheur LLGO. [Pour essai: 1 routeur v11.17Linky2 (branché en parallèle sur le Linky1) + 1 routeur Chargeur].  
Pc sous w11,  8 Panneaux S = 3KWc.      Amicalement  Régis.
Répondre
Il est dans le dossier avec les autres fichiers. Il faut mettre "Partition Scheme: Custom" dans l'IDE Arduino.
André
Répondre
Merci pour votre retour "instantané!"

Je vais tester dans la journée pour vérifier si les messages de timeout réapparaissent comme en V12.05.

Avec la version 11.17 que je teste  depuis hier, plus de problème, seuls les messages "Réception de l'heure" apparaissent sur les 2 ESP toutes les 3 heures et sur l'ESP Externe en plus on a un message ">>>client ESP_RMS Timeout!" toutes les 9 heures.
Plus de problème de remonté MQTT.

Cordialement.

Régis
Ma config: 6 x ESP32, Routeurs V11.17,  1 routeur Linky1, 1 Chauffe E, 1 Piscine, 3 Radiateurs ,  (4 avec Triac), +1 afficheur LLGO. [Pour essai: 1 routeur v11.17Linky2 (branché en parallèle sur le Linky1) + 1 routeur Chargeur].  
Pc sous w11,  8 Panneaux S = 3KWc.      Amicalement  Régis.
Répondre
Bonsoir André,

Je viens d'effectuer des essais de mes 2 ESP en version 12.06.
Tout avais l'air de bien fonctionner après un chargement assez difficile du programme car impossible en OTA en en USB, il m'a fallu faire le reset de la mémoire Flash (Erase All Flash sur enabled).

Les données MQTT arrivaient bien sur HA et pas de message anormal sur les microcontrôleurs.
J'ai été très surpris de voir que le croquis n'occupait plus que 8% de l'espace de stockage de programme.

Toutefois lorsque j'ai voulu reprogrammer des actionneurs (relais ON/OFF) la commande "sauvegarder" ne se terminait pas (le tourniquet ne s'arrête plus de tourner) et les fenêtres ne répondent plus correctement.

Je repasse donc en version 11.07 pour le moment, en attendant de pouvoir tester votre prochaine mouture.

Merci et bon courage.
Ma config: 6 x ESP32, Routeurs V11.17,  1 routeur Linky1, 1 Chauffe E, 1 Piscine, 3 Radiateurs ,  (4 avec Triac), +1 afficheur LLGO. [Pour essai: 1 routeur v11.17Linky2 (branché en parallèle sur le Linky1) + 1 routeur Chargeur].  
Pc sous w11,  8 Panneaux S = 3KWc.      Amicalement  Régis.
Répondre
Le calcul des pourcentages de rom est faux. Il part sur une mémoire Flash de 16M, hors on utilise une 4M. Il faut déja multiplier par 4. Ensuite sur les 4M, seul 1.9M sont alloués au programme. Ce qui nous fait 8*4*4/1.9 = 67%

Cdlt
André
Répondre
Bonjour André et merci pour ces précisions, cela me parait plus cohérant .
Ma config: 6 x ESP32, Routeurs V11.17,  1 routeur Linky1, 1 Chauffe E, 1 Piscine, 3 Radiateurs ,  (4 avec Triac), +1 afficheur LLGO. [Pour essai: 1 routeur v11.17Linky2 (branché en parallèle sur le Linky1) + 1 routeur Chargeur].  
Pc sous w11,  8 Panneaux S = 3KWc.      Amicalement  Régis.
Répondre


Atteindre :


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