Réaliser un WifInfo

wifinfo

1 « J'aime »

Prends la beta du plugin teleinfo pour régler cette erreur 500 (je n’utilise plus ce plugin, bascule sur MQTT donc mon aide risque de se limiter à mes souvenirs)

la beta est dispo ou?

faut aller sur son profil jeedom (site web) et activer les betas :

1 « J'aime »

Super, merci, je n’est plus d’erreur avec la Beta, par contre, tous reste a zéro pour le moment sur le compteur créer

Salut,
Comme dit plus haut, je te conseille de passer sous tasmota teleinfo, j’ai partagé le template du plugin jMQTT :

1 « J'aime »

est-ce que les infos evolues sur ton wifinfo ?
faudrait que tu partage des screenshots de tes paramétrages maintenant

Je suis d’accord, et je l’ai fait il y a quelques temps, mais le cout d’entrée est un peu élevé quand même (nouveau protocole à installer/parametrer et maitriser : MQTT)

Oui, j’ai vu mais à la base j’ai acheter le wifinfo tout fait pour ne pas m’embêter.
La pour passer en tasmona, il faut tout re-démonter, trouver un câble pour le flash du micro (que je n’ai pas) etc…
Ce n’était pas le délire prévu au départ.

1 « J'aime »

Citation

est-ce que les infos evolues sur ton wifinfo ?
faudrait que tu partage des screenshots de tes paramétrages maintenant

oui, les infos évolues

et tes configs wifinfo et equipement teleinfo ?


tu peux renseigner le numero ADCO dans le champ identifiant compteur ?
Pas d’espace dans la clé API (en fin de clé) ?
mets ton plugin teleinfo en mode debug pour regarder ce qu’il se passe ?

C’est bon, j’ai des data, j’ai renseigné le numéro ADCO, puis activé le débug et j’ai vu que j’avais des infos qui remontaient dans le debug.
J’avais pourtant renseigner le numéro ADCO lors d’un autre essais et c’était nok, mais il y avais surement une autre info mal renseignée à ce moment la.

Merci à tous :wink:

1 « J'aime »

Bonjour à tous,

Je voudrais mettre mon wifinfo à jour pour une prise en charge du mode « standard » du Linky et au passage voir si on peut avoir un firmware qui prend en charge les clé API 64 bits
NB : J’ai pas du tout envie de passer par du MQTT perso je vois pas l’intérêt de ce protocole pour mon installation.
J’ai téléchargé la dernière version (1.1.5) de la librairie arduino « LibTéléinfo » de Charles Hallard qui contient en exemple le code source du Wifinfo GitHub - hallard/LibTeleinfo: Librairie Universelle Teleinformation (TIC)

Contre toute attente, avec la dernière version de l’IDE Arduino (2.0.4) et toutes les librairies mise à jour, ça compile directement sans la moindre erreur.
J’ai essayé de modifier le fichier config.h pour passer la valeur de #define CFG_JDOM_APIKEY_SIZE (ligne 40) de 48 d’origine à 64 et idem, ça compile directement ainsi sans erreur.
Mais j’ai pas encore testé de télécharger le firmware pour voir ce que ça donnait réellement.

La question c’est : est-ce que quelqu’un à déjà fait cette mise à jour ?

@tibo.percin la version modifiée que tu as mis à dispo sur ton drive google (post de janvier 2022) est basée sur quelle source ? quelle version de librairie ? (parce que si tu as déjà fait le boulot, je vais pas me fatiguer à réinventer la roue)

EDIT : Pardon, j’aurais du reprendre la discussion du début. Ma source du wifinfo n’est pas la bonne… Faut que je recommence la manip avec la version de TheGressier

J’ai essayé de complier la version déjà modifiée avec clé 64 bits par tibo.percin qui a proposé en janvier 2022 mais impossible d’aller jusqu’au bout.
Aussi bien avec l’IDE Arduino qu’avec VScode + platformio j’ai plusieurs fois la même erreur sur un pointeur de structure, du genre :

src\webserver.cpp:735:17: error: ‹ ValueList › {aka ‹ struct _ValueList ›} has no member named ‹ free ›

et c’est toujours pour ce genre de code :
if( ! me->free ) {
Je suppose que « free » est une instruction de class du même genre que « next » qu à été supprimée depuis l’écriture de ce code.
Si des pro du C++ pouvaient m’en dire plus, et éventuellement par quoi remplacer cette instruction ?
merci d’avance.

Salut Forhorse,
Pour ma part j’ai utilisé la dernière version (1.0.7)
J’ai modifié légèrement le programme pour pouvoir passer la sécurité des 64 octets.
Malheureusement c’est assez instable, reboot automatique du wemos au bout de 5min.
Je n’ai pas cherché plus loin puisque @Phpvarious a proposé un petit scénario permettant de générer une clé 32 octets et franchement c’est beaucoup mieux !
La différence par rapport à MQTT, c’est sur la partie connexion wifi.
De ce que j’ai remarqué, en cas de coupure de courant, à la remise sous tension l’ESP démarre immédiatement et essaie de se connecter au wifi. Par contre le routeur est beaucoup plus lent, ce qui fait que l’ESP ne se connecte.
Solution, une fois que la box est démarrée, faire un reboot de l’ESP.
En espérant avoir pu t’apporter des éléments de réponse :slight_smile:

Merci pour ta réponse.
Cependant ça ne m’aide pas tellement…

Je voudrais essayer de « bricoler » une version de wifinfo qui corrige les problèmes actuelles… (clé 64 bits et gestion du wifi)
J’ai laissé tombé ma tentative de la modification de la version 1.0.7, je suis trop mauvais en C++ pour trouver une solution cette histoire de « me->free »… ça devait être dans une ancienne version de la librairie téléinfo que je n’ai pas retrouvé.

Actuellement je suis parti de la version 1.6.1 de « rene-d » (GitHub - rene-d/wifinfo: Module Wi-Fi de téléinformation) qui je l’espère est plus stable et a une meilleur gestion du wifi.
Le problème de cette version c’est quelle n’a jamais fonctionné avec Jeedom, mais je pense avoir trouvé le problème : les données sont passé à l’API « Téléinfo » en GET sauf que maintenant les données doivent être envoyée en « POST » donc j’espère être capable de faire la modification pour corriger ça.

Pour l’instant j’ai simplement réussit à compiler en local, ce qui m’a déjà fait perdre quelques cheveux parce que l’auteur utilisait un système de fichier « custom » (ERFS) mais ça ne voulais pas compiler pour une histoire de fonction déclarée 2 fois… bref, je suis passé, non sans mal, sur du LittleFS et ça compile et tourne a priori correctement sur l’ESP.

Il me reste donc encore toute la modif du code pour la partie Jeedom…
A suivre ?

J’ai réussit à modifier le firmware wifinfo 1.6.1 pour qu’il fonctionne avec Jeedom en v4, et j’ai aussi réussit a le faire fonctionner avec une clé API de 64 caractères.
Accessoirement j’ai aussi compris comment on fait pour choisir sur quel GPIO le signal TIC doit arriver et j’ai donc modifier ce firmware pour qu’il utilise la même broche que la version 1.0.7
Par contre cette version ne gère pas mieux le wifi, si le wifinfo démarre avant le point d’accès wifi sur lequel il est censé se connecter, il reste en mode AP et il faut donc le redémarrer pour qu’il « accroche » le réseau wifi.

Bon clairement je suis pas développeur pro, donc tout ça reste du « bricolage », mais pour l’instant ça fonctionne, configuré pour remonter les trames téléinfo toutes les 15 s, pour l’instant ça reste stable.
En gros, et de mémoire (je suis dessus depuis ce matin) en plus de ce que j’avais déjà évoqué jusqu’ici (principalement changement du système de fichier) voici les points que j’ai modifié :

  • Modification de l’interface web pour qu’elle accepte 64 caractères dans la configuration clé API Jeedom
  • Modification de « config.h » pour passer la taille de la clé jeedom à 64 bytes
  • Modification de « config.h » pour modifier le struct JeedomConfig afin que la somme de la longueur de toutes les variables qu’il contient reste à 256 bytes
  • Modification de « main.cpp » pour ajouter Serial.swap() à la suite de Serial.begin() afin que l’UART utilise les broches D7 et D8 à la place de TX et RX afin que le hardware soit identique à celui utilisé avec le firmware 1.0.7
  • Modification de « tic.cpp » fonction Jeedom_notif() correction de l’URL qui contenait « api » à la place de « apikey » et qui du coup faisait que Jeedom retournait une erreur 403, modification de la méthode du passage des donnés en POST au format JSON suivant méthode copiée du firmware 1.0.7 légèrement adaptée en conséquence (suppression de la partie qui vérifie la validité des étiquettes TIC, j’ai simplement adapté pour que l’etiquette ADCO ne soit pas incluse et que ce soit celle indiquée dans la config qui soit utilisée [idem firmware 1.0.7])

Si ça interesse qq1, je peux passer le code source modifié et/ou les fichiers compilés. Par contre je n’ai aucune maitrise de VScode+Plateformio donc pas dit que ce soit utilisable…

J’ai refait une version ce matin en repartant du code source de la 1.6.1 GitHub - rene-d/wifinfo: Module Wi-Fi de téléinformation et en ne modifiant que ce qui est nécessaire afin d’en faire une version au propre et la plus proche de l’origine possible. Je l’ai modestement nommé version 1.6.2
le firmware à télécharger dans vos ESP est ici :
https://www.cjoint.com/c/MDci0f15Exc

La procédure n’a pas changée (voir tuto de @tibo.percin en début de thread)
Ce firmware n’est compatible qu’avec le ESP8266 en version 4mega
Il corrige donc le problème de la clé API à 64 caractères.
Il est normalement compatible avec le hardware qui fonctionnait avec la version 1.0.7 pour ce qui est de la réception des trames TIC
Pour la led par contre c’est sur D6 (GPIO12) parce que ça correspond à mon hardware mais sur demande je peux compiler avec une autre configuration (ou fournir le code source bien entendu).

Le problème du wifi n’est toujours pas corrigé dans cette version. Je vais essayer de regarder mais c’est étrange que ça ne fonctionne pas, car de ce que j’ai vu il devrait être capable de se reconnecter tout seul… faut que je creuse un peu.

Si certains d’entre vous pouvaient essayer et me faire un retour, ça serait sympa.