Teleinfo WIFI

Forum pour tous les autres objets : sondes météo, capteurs, actionneurs ...
Vous avez un besoin mais vous ne savez pas quel matériel choisir ? C'est ici.
dokho
Messages : 685
Inscription : 28 déc. 2014, 19:32

Re: Teleinfo WIFI

Message par dokho »

Bonjour,

Je ne rencontre pas ce pb.

Lorsque je me connecte sur l'ip du wemos la page "teleinfo" n'affiche aucune valeur.
Il me suffit de passer sur une page et de revenir pour qu'elle affiche les infos.

La transmission d'info vers emoncms elle ne fonctionne plus au bout de quelques heures.

Envoyé de mon SM-N9005 en utilisant Tapatalk
Doume
Messages : 550
Inscription : 28 déc. 2014, 10:27
Localisation : Nord (59)
Contact :

Re: Teleinfo WIFI

Message par Doume »

Mais je pense que c'est le même type de problème...

Au bout d'un moment, la liste est flinguée

Plus tu fais de choses ( emoncms, httprequest, client connecté au module, etc... ) plus cela arrive vite
En corollaire, moins tu en demandes, plus il reste stable

Chez moi, cela arrive relativement vite ( 10 à 15 heures) parce que j'ai un compteur triphasé, qui engendre 17 lignes de Teleinfo !
Doume
Messages : 550
Inscription : 28 déc. 2014, 10:27
Localisation : Nord (59)
Contact :

Re: Teleinfo WIFI

Message par Doume »

A propos de la page 'Teleinformation' qui n'affiche rien au 1er appel, j'ai cherché à comprendre :
Côté 'serveur' (module Wifinfo) , si aucune donnée n'est prête, j'attends 3 secondes de plus avant d'essayer de construire la réponse...
Ca n'a rien changé ! Au 1er appel, rien dans la page !

J'ai ensuite modifié la page index.htm envoyée au browser client.
Dans la version originale, c'est l'onglet 1 qui est déclaré 'actif' au départ ( Téléinformation )
J'ai essayé de déclarer l'onglet 2 actif au départ ( Système) : Et du coup, c'est lui qui n'affiche rien ! (pourtant, il n'est en rien dépendant de données dispos ou non côté serveur !). Bien entendu, au 1er clic sur l'onglet Téléinformation, les datas sont là !

Donc le problème viendrait de la page 'index.htm', qui n'enverrait pas de requête au serveur lors de son démarrage !
Mais mes connaissances en HTML sont plutôt légères pour régler cela !

Côté 'blocages après un certain temps', j'ai aussi avancé :

J'ai d'abord forcé le serveur à limiter la page Téléinformation à 17 lignes ( ce n'est valable que dans mon cas, compteur triphasé Heures Pleines / Heures Creuses ! )
En effet, les infos 'polluées' étaient toujours après cette 17è ligne...
Ceci a fonctionné sans blocages > 24 heures !

Ensuite, j'ai mis un filtre sur les noms de variables de la liste
Si le nom est valide => OK je le mets dans la liste
Si le nom est farfelu (pollué par rapport à ma liste ) , je l'ignore, et je force le sketch à réinitialiser la Téléinformation (RAZ table, création d'une liste nouvelle)
J'ai alors constaté qu'en moins de 1 heure, la Téléinformation s'est réinitialisée 3 fois, mais aucun blocage !

Il y a donc un vrai problème entre :
- l'acquision des données entre le compteur et le module ( parasites sur le port série 1200 Bauds ? ) Mais dans ce cas on devrait détecter des erreurs sur les contrôles de checksum, car c'est fait pour ça, et ces infos abîmées ne devraient pas être insérées dans la liste !
- La gestion des listes chaînées de valeurs dans la LibTeleinfo

Je penche vraiment pour la 2è hypothèse !
Doume
Messages : 550
Inscription : 28 déc. 2014, 10:27
Localisation : Nord (59)
Contact :

Re: Teleinfo WIFI

Message par Doume »

dokho a écrit :
Lorsque je me connecte sur l'ip du wemos la page "teleinfo" n'affiche aucune valeur.
Il me suffit de passer sur une page et de revenir pour qu'elle affiche les infos.
Bon, je pense avoir résolu ce petit inconvénient....
Lors du chargement de la page initiale par le browser client, le 1er onglet est pré-sélectionné. Mais le Timer n'est pas activé, donc aucune requête n'est envoyée à Wifinfo pour garnir la page avec les variables de Téléinformation.

J'ai modifié la page index.htm.gz , à mettre dans le répertoire 'examples/Wifinfo/data'
Il faut alors compiler le SPIFFS et le flasher : Le problème devrait être résolu
Pièces jointes
index.htm.gz
(8.25 Kio) Téléchargé 241 fois
dokho
Messages : 685
Inscription : 28 déc. 2014, 19:32

Re: Teleinfo WIFI

Message par dokho »

Bonsoir,

J'essaye ça dès que j'ai 5 minutes.

En tout cas un grand merci pour ton travail Doume :)

Envoyé de mon SM-N9005 en utilisant Tapatalk
Doume
Messages : 550
Inscription : 28 déc. 2014, 10:27
Localisation : Nord (59)
Contact :

Re: Teleinfo WIFI

Message par Doume »

Eventuellement, s'il y a des gens intéressés, une version 'LibTeleinfo statique' est disponible ici :
https://github.com/Doume/LibTeleinfo.git
Utiliser la branche 'static' du Github (branche par défaut)

Pour info, elle tourne depuis 9 jours chez moi, avec 0 altération détectées, sur un Wemos D1.
La version standard, elle, générait environ 50 altérations de datas en 48 heures....

Liste des modifications apportées :

- Mise à disposition d'un requête http://ip_wifinfo/emoncms.json
Retourne une liste au format json des variables, qu'un client http tiers pourra soumettre à un serveur emoncms
Ceci permet de ne pas mettre en oeuvre l'option emoncms du module Wifinfo, et donc de charger le processeur du module
exemple : un Raspberry Pi interroge wifinfo http://ip_wifinfo/emoncms.json
il reçoit en retour ce qu'il faut pour alimenter le serveur emoncms

- Il est possible de compiler un binaire 'simulation' de Wifinfo en activant l'option
#define SIMU
dans Wifinfo.h
En flashant un tel sketch dans un module non connecté au compteur EDF, vous pourrez tester le soft
Au démarrage, il simule la création de 2 variables
Toutes les 1 seconde, il incrémente la valeur de la 2ème variable créée

- La librairie LibTeleinfo est maintenant 'statique' : Elle n'utilise plus les malloc / free de la mémoire
Au démarrage, il alloue statiquement un tableau de 50 variables
Pour utiliser cette version de la librairie :
- Faire un backup préalable de ~/Arduino/libraries/LibTeleinfo-master/src/*
- Copier la nouvelle version des sources : src/LibTeleinfo.cpp et src/LibTeleinfo.h dans
l'environnement Arduino (generalement ~/Arduino/libraries/LibTeleinfo-master/src )
avant de compiler le sketch Wifinfo.ino

Bon amusement
ericd
Messages : 157
Inscription : 24 janv. 2017, 11:04
Localisation : Toulouse

Re: Teleinfo WIFI

Message par ericd »

Bonsoir Doume

Est-il possible de faire un plugin de ton travail dans ESPEASY ?

@+

Eric
Doume
Messages : 550
Inscription : 28 déc. 2014, 10:27
Localisation : Nord (59)
Contact :

Re: Teleinfo WIFI

Message par Doume »

Je ne comprends pas bien ta requête :
- ESPEASY n'utilise pas d'allocation dynamique de mémoire comme le fait Wifinfo
- Quel type de plugin envisages-tu dans ESPEASY ?

Quoi qu'il en soit, ma version modifiée de Wifinfo est disponible sur Github:
https://github.com/Doume/LibTeleinfo.git
dokho
Messages : 685
Inscription : 28 déc. 2014, 19:32

Re: Teleinfo WIFI

Message par dokho »

Et elle fonctionne très bien ta version :)

Merci encore.

Envoyé de mon SM-N9005 en utilisant Tapatalk
ericd
Messages : 157
Inscription : 24 janv. 2017, 11:04
Localisation : Toulouse

Re: Teleinfo WIFI

Message par ericd »

Doume a écrit :Je ne comprends pas bien ta requête :
- ESPEASY n'utilise pas d'allocation dynamique de mémoire comme le fait Wifinfo
- Quel type de plugin envisages-tu dans ESPEASY ?

Quoi qu'il en soit, ma version modifiée de Wifinfo est disponible sur Github:
https://github.com/Doume/LibTeleinfo.git

Bonjour Doume

ESPEASY "ajoute" les nouveaux composants comme si c'était des plugins (si j'ai bien compris), par exemple le composant "x" possède le fichier source "x.ino", ce qui permet d'avoir une possibilité supplémentaire pour la gestion des composants.
La question est : est-il possible d'ajouter la lib "Teleinfo" comme si c'était un nouveau composant dans espeasy ?

Eric
Répondre