Page 10 sur 37

Re: Teleinfo WIFI

Publié : 28 juin 2017, 17:00
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

Re: Teleinfo WIFI

Publié : 28 juin 2017, 19:17
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 !

Re: Teleinfo WIFI

Publié : 29 juin 2017, 18:04
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 !

Re: Teleinfo WIFI

Publié : 30 juin 2017, 19:46
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

Re: Teleinfo WIFI

Publié : 30 juin 2017, 21:04
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

Re: Teleinfo WIFI

Publié : 23 juil. 2017, 16:00
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

Re: Teleinfo WIFI

Publié : 05 sept. 2017, 23:22
par ericd
Bonsoir Doume

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

@+

Eric

Re: Teleinfo WIFI

Publié : 07 sept. 2017, 10:56
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

Re: Teleinfo WIFI

Publié : 07 sept. 2017, 10:58
par dokho
Et elle fonctionne très bien ta version :)

Merci encore.

Envoyé de mon SM-N9005 en utilisant Tapatalk

Re: Teleinfo WIFI

Publié : 07 sept. 2017, 11:46
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