Closed jsapede closed 6 months ago
Je progresse,
en mettant setoption19 à 1, ça a changé les choses. toutefois la modification de semble pas persistente.
en rebootant le Denky, on voit a nouveau apparaitre l'integraton tasmota dans les flux mqtt (setoption19 0) mais il semblerait que cette fois les TIC soeint bien transmis, mais il semblerait que les maj de valeurs se fassent sur le canal MQTT et pas de la meme façon sur la canal dédié tasmota
Cette fois l'integration tasmota fait bien remonter les TIC mais ne remonte pas les METER, et les puissances, conso, ... ne sont pas mises à jour
De ma fenetre de novice on dirait que la gestion de setoption19 n'est pas implementée dans le binaire et que ça fait une sorte de conflit entre la sortie tasmota qui a l'air d'etre un topic dédié et la sortie mqtt classique. Une option HA a mettre à la compilation ?
ça ne change par cotnre rien aux erreurs dans la console
Bonjour, Vous êtes la première personne à utiliser mon build avec un contrat tempo historique. Le code a été fait suivant les specs ENEDIS mais jamais testé sur votre type de contrat. Merci pour ce retour très interessant. Pour les erreurs, elles sont "normales" ... en fait l'ESP a du mal à gérer la réception série et servir les pages Web en même temps. Si vous fermez toutes les fenetres navigateurs qui pointent sur l'ESP vous devriez n'avoir quasiment plus aucune erreur. Elles réapparaitront lorsque vous vous connecterez sur l'ESP. Ces erreurs ne sont pas génantes car le calcul de checksum sur chaque ligne evite la prise en compte de données erronées. Concernant les sections : ENERGY : section standard de Tasmota dès qu'il y a de la gestion d'énergie TIC : section reprenant toutes les étiquettes Teleinfo reçues sans erreur METER & PROD : section spécifique à mon build qui reprend les données énergie (plus compacte et gestion triphasée différente) ALERT : section spécifique signalant un problème en cours RELAY : section signalant l'état des 8 relais virtuels gérés par le compteur TEMPO : section spécifique à la réception RTE TEMPO Vous pouvez décider quelle section est publiée à travers les commandes console ou le page "Configure Teleinfo". Je vais publier un build 13.3.4 qui donne plus de liberté sur les sections publiées ou non coté MQTT.
Si vous pouviez enregistrer un flux téléinfo de quelques minutes (voir la page Github pour le mode opératoire) et me l'envoyer je suis intéressé. Cela me permettra de le rejouer pour vérifier la non regression lors des évolutions.
Bonjour,
je peux essayer de vous enregistrer des données mais mon compteur va passer en mode standard ce jour. par contre j'ai affiné la problématique.
Mon soucis de remontée des infos dans homeassistant vient plutot, j'ai l'impression, du topic mqtt "tasmota/discovery"qui est utilisé par homeassistant pour découvrir et intégrer automatiquement les équipements de type tasmota.
https://www.home-assistant.io/integrations/tasmota/
De ce que j'en comprend il faut que la diffusion mqtt respecte un certain formalisme pour que homeassistant reconnaisse les équipements sous tasmota comme il faut.
Il semblerait, pour ce faire, que dans le firmware Tasmota on ait une option "setoption19" qui est directement dédiée à la communication mqtt sous format "integratrion tasmota" et qui est activée par defaut dans votre build (Setoption19 0).
Mais que les trames mqtt qui sont envoyées sous ce topic ne sont pas completes (abscence de tempo, relay, ...) et que certaines sont envoyées en doublon dans un autre topic (celui defini dans l'interface web). On se retrouve alors aleatoirement avec un equipement qui est reconnu en tant que tasmota avec les METER, les TIC, ou les CALENDAR, suivant ce qui se diffuse à la premiere connexion sous ce topic tasmota/discovery.
Si on desactive l'option tasmota (setoption19 1) on perd le topic "tasmota" mais on ne garde que le topic mqtt pur (quand on reboot l'option repasse toute seule a zero). A la limite on pourrait s'en servir pour définir un équipement dans homeassistant mais ça demande pas mal de lignes de code alors que l'integration tasmota est par principe faite pour ça.
Il semble donc que c'est la diffusion mqtt et son actualisation qui ne se fait pas correctement au format tasmota meme si l'option semble bien activée par defaut ( cf ce que je vous ai mis sur le forum ch2i). On a deux topic mqtt qui ne contiennent pas la meme chose, et celui intitulé "tasmota", qui sert a la reconnaissance automatique de l'équipement ne contient que peu d'informations, et pas controlable avec les flags Energyconfig.
Je ne sais pas si je suis clair
Bonsoir, Effectivement j'avais désactivé l'option de compilation auto-discovery car je ne l'utilise pas. De plus, je n'utilise pas HomeAssistant mais Openhab. J'ai modifié les publications teleperiod afin de publier en groupé les données METER, PROD, COUNTER et ALERT. Je vais publier une version de test Denky.
Super je peux faire un essai demain je pense
je vois que vous avez fait les mises a jour, j'essaie ce soir si je peux sinon demain
Bonjour, Je découvre ce fil et j'aurai quelques questions (@jsapede) :
Merci
PS : Je suis en HPHC avec un Linky en mode Historique et tout semble fonctionner correctement pour l'instant.
EDIT : j'ai des erreurs "TIC" qui se glissent entre les trames MQT dans la console :
17:06:53.653 MQT: tele/tasmota_EB1F5C/SENSOR = {"Time":"2024-01-26T17:06:53","ENERGY":{"TotalStartTime":"2023-03-12T01:30:15","Total":1188.897,"Yesterday":12.825,"Today":9.421,"Period":103,"Power":240,"ApparentPower":370,"ReactivePower":0,"Factor":0.65,"Voltage":230,"Current":1.6},"ALERT":{"Load":0,"Volt":0,"Preavis":{"Level":0,"Label":""}},"TIC":{"ADCO":"061234567890","OPTARIF":"HC..","ISOUSC":"45","HCHC":"018059039","HCHP":"000404639","PTEC":"HP..","IINST":"002","IMAX":"090","PAPP":"00370","HHPHC":"A","MOTDETAT":"000000"}} 17:06:57.593 TIC: Error [PTEC HP059039 )] 17:06:58.590 MQT: tele/tasmota_EB1F5C/SENSOR = {"Time":"2024-01-26T17:06:58","METER":{"PH":1,"ISUB":45,"PSUB":9000,"PMAX":9000,"U1":230,"P1":370,"W1":240,"I1":1.608,"C1":0.65,"P":370,"W":240,"I":1.608}} 17:11:57.592 MQT: tele/tasmota_EB1F5C/STATE = {"Time":"2024-01-26T17:11:57","Uptime":"0T01:38:22","UptimeSec":5902,"Heap":143,"SleepMode":"Dynamic","Sleep":10,"LoadAvg":99,"MqttCount":1,"Berry":{"HeapUsed":3,"Objects":30},"POWER":"ON","Dimmer":45,"Color":"2C7318","HSBColor":"107,79,45","Channel":[17,45,9],"Scheme":0,"Width":1,"Fade":"OFF","Speed":1,"LedTable":"ON","Wifi":{""}} 17:12:01.523 MQT: tele/tasmota_EB1F5C/SENSOR = {"Time":"2024-01-26T17:12:01","ENERGY":{"TotalStartTime":"2023-03-12T01:30:15","Total":1188.925,"Yesterday":12.825,"Today":9.449,"Period":28,"Power":245,"ApparentPower":350,"ReactivePower":0,"Factor":0.70,"Voltage":230,"Current":1.5},"ALERT":{"Load":0,"Volt":0,"Preavis":{"Level":0,"Label":""}},"TIC":{"ADCO":"061234567890","OPTARIF":"HC..","ISOUSC":"45","HCHC":"018059039","HCHP":"000404670","PTEC":"HP..","IINST":"001","IMAX":"090","PAPP":"00350","HHPHC":"A","MOTDETAT":"000000"}} 17:12:05.464 TIC: Error [T 001 X] 17:12:06.461 MQT: tele/tasmota_EB1F5C/SENSOR = {"Time":"2024-01-26T17:12:06","METER":{"PH":1,"ISUB":45,"PSUB":9000,"PMAX":9000,"U1":230,"P1":350,"W1":245,"I1":1.000,"C1":0.70,"P":350,"W":245,"I":1.000}} 17:12:07.500 TIC: Error [HCHC 01805] 17:17:05.468 MQT: tele/tasmota_EB1F5C/STATE = {"Time":"2024-01-26T17:17:05","Uptime":"0T01:43:30","UptimeSec":6210,"Heap":140,"SleepMode":"Dynamic","Sleep":10,"LoadAvg":99,"MqttCount":1,"Berry":{"HeapUsed":3,"Objects":30},"POWER":"ON","Dimmer":45,"Color":"2C7318","HSBColor":"107,79,45","Channel":[17,45,9],"Scheme":0,"Width":1,"Fade":"OFF","Speed":1,"LedTable":"ON","Wifi":{""}} 17:17:09.399 MQT: tele/tasmota_EB1F5C/SENSOR = {"Time":"2024-01-26T17:17:09","ENERGY":{"TotalStartTime":"2023-03-12T01:30:15","Total":1188.950,"Yesterday":12.825,"Today":9.473,"Period":24,"Power":322,"ApparentPower":460,"ReactivePower":0,"Factor":0.70,"Voltage":230,"Current":2.0},"ALERT":{"Load":0,"Volt":0,"Preavis":{"Level":0,"Label":""}},"TIC":{"ADCO":"061234567890","OPTARIF":"HC..","ISOUSC":"45","HCHC":"018059039","HCHP":"000404701","PTEC":"HP..","IINST":"002","IMAX":"090","PAPP":"00460","HHPHC":"A","MOTDETAT":"000000"}}
pareil ici, je ne vois rien de plus dans l'integration tasmota, il y a toujours 2 topics qui cohabitent dont que les infos energy sur le topic tasmota, pas de TEMPO, pas de TIC ou autres
On dirait que le topic "tasmota" est intrinsèque au firmware mais ne diffuse que les infos de base (énergie) sur un sous topic calé sur l'adresse MAC de la carte (je suppose que c'est de cette façon que l'intégration autodecouverte tasmota identifie les divers équipements) et que le teleinfo lui ne se diffuse que dans un topic dédié qui du coup n'est pas reconnu comme un tasmota en découverte automatique et donc les infos diffusé dans ce canal ne sont pas intégrées a l'équipement tasmota sous ha
Est ce qu'il ne manquerait pas des informations dans le topic tasmota/discovery ? Il me semble comprendre que c'est ce topic qui définit le contenu de ce qui s'affiche en autodecouverte et qu'il ne contient que les données de base energy
https://github.com/adamoutler/Addons setoption19 c'est dans la console du tasmota
Est-ce que vous savez si l'auto-discovery Home assistant se base sur une émission de topic type teleperiod ? Pourriez-vous afficher le topic publié au moment de l'auto-discovery ? Je vais essayer de trouver coté Tasmota où cette publication est gérée.
Si vous me donnez les instructions pour vous obtenir ce qu'il vous faut je prendrai le temps de le faire
Le teleperiod intervient dans la mise a jour des valeurs de l'intégration tasmota, quand on change le timer dans les réglages ça change la fréquence de mise a jour
Je vais voir pour vous sortir le contenu du topic discovery tasmota.
Les données peuvent être récupérées directement en mode console.
Remarque importante : dans mon build, le teleperiod publie soit les données TIC (très verbeuses, dépendant du compteur et du contrat) soit les données METER, PROD, COUNTER, CAL, ALERT, ... qui sont normalisées et indépendantes du contrat. Les deux sont possibles, mais logiquement vous n'avez pas besoin des 2 en même temps. Donc logiquement vous ne devriez pas avoir besoin de publier TIC. Dans le cadre de vos tests, je vous invite à décocher cette option.
Je vais regarder Sachent que les infos tic m'intéresse pour la gestion du tempo et des délestages qui vont avec
Je vais regarder Sachent que les infos tic m'intéresse pour la gestion du tempo et des délestages qui vont avec
Pareil pour moi. J'aimerai récupérer l'information de passage HC / HP pour gérer certains éléments via Home Assistant. Et cette information se trouve dans la "variable" TIC.
La section CAL est là pour cela. lv donne la periode actuelle (1 bleu, 2 blanc, 3 rouge) hp donne le type d'heure (0 creuse, 1 pleine)
Ces données sont alimentées par les infos STGE du compteur et par RTE Tempo si elle est activée.
La section RELAY donne également l'état des 8 relais virtuels gérés par le compteur (le relai 1 est celui de l'eau chaude sanitaire). Je vais développer très prochainement une version tasmota permettant de récupérer ce signal et de gérer le ou les relais de l'ESP en conséquence. Cela permettra d'exploiter ces signaux même loin du compteur.
topic tasmota/discovery/MAC/config
{"ip":"192.168.0.131","dn":"Teleinfo","fn":["Teleinfo",null,null,null,null,null,null,null],"hn":"teleinfo-7820","mac":"4C7525F5BE8C","md":"Denky D4 (v1.1)","ty":0,"if":0,"ofln":"Offline","onln":"Online","state":["OFF","ON","TOGGLE","HOLD"],"sw":"13.2.0","t":"teleinfo","ft":"%topic%/%prefix%/","tp":["cmnd","stat","tele"],"rl":[2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],"swc":[-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1],"swn":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"btn":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],"so":{"4":0,"11":0,"13":0,"17":0,"20":0,"30":0,"68":0,"73":0,"82":0,"114":0,"117":0},"lk":1,"lt_st":3,"bat":0,"dslp":0,"sho":[],"sht":[],"ver":1}
topic tasmota/discovery/MAC/sensors
{"sn":{"Time":"2024-01-27T12:20:18","ENERGY":{"TotalStartTime":"2024-01-26T17:46:57","Total":11.103,"Yesterday":7.002,"Today":4.100,"Power":0,"ApparentPower":0,"ReactivePower":0,"Factor":0.00,"Voltage":230,"Current":0.0}},"ver":1}
La section CAL est là pour cela. lv donne la periode actuelle (1 bleu, 2 blanc, 3 rouge) hp donne le type d'heure (0 creuse, 1 pleine)
Je vais activer cette option, merci. Je pensai passer par la valeur de "OPTARIF" disponible dans le message du "TIC".
Enjoy !
Bonjour,
J'ai bien activé l'option "CAL" et désactivé le "TIC" sur mon Denky-D4. J'ai conservé les données "METER & PROD" qui me sont utiles. Je n'ai rien de plus dans mon Tasmota que ce qui était déjà disponible avant.
Je remarque qu'effectivement, il y a 2 messages successifs qui sont envoyés via MQTT (merci @jsapede pour le lien) à quelques secondes d'intervalles : {"Time":"2024-01-29T11:45:20","CAL":{"lv":1,"hp":1,"day":{"lv0":0,"hp0":1,... {"Time":"2024-01-29T11:45:15","ENERGY":{"TotalStartTime":"2023-03-12T01:30:15",... {"Time":"2024-01-29T11:40:04","CAL":{"lv":1,"hp":1,"day":{"lv0":0,"hp0":1,... {"Time":"2024-01-29T11:40:00","ENERGY":{"TotalStartTime":"2023-03-12T01:30:15",...
Je remarque aussi que le message "CAL" est interprété différemment dans MQTT Explorer. Le JSON n'est pas mis en forme :
Alors que c'est bien le cas dans la section STATE : Peut-être parce que les champs sont différents (limitation de MQTT Explorer ?).
Et au redémarrage du Denky-D4, le champs "tele" de MQTT est davantage peuplé, avec notamment un champ SENSOR et un autre "STATE" : qui disparaissent après quelque temps :
Bonne journée
En analysant la publication Home Assistant, nous sommes sur une trame spécifique. Je ne suis pas sur qu'en ajoutant une donnée elle sera prise en compte par Home Assistant. Mais c'est possible. Est ce que quelqu'un sait comment Home Assistant interprétarait de nouvelles données dans la trame mqtt ?
Je ne suis poas du tout familier de mqtt ni de tasmota mais je vais essayer de vous retranscrire ce que j'en comprends.
Mais pour repondre a votre question oui HA sera capable d'auto integrer de nouvelles données si elles apparaissent
De ce que j'en comprends, pour etre autodecouvrable soit en tant que mqtt pur (setoption19 1) il faut que le topic respecte un certain formalisme ici decrit :
https://www.home-assistant.io/integrations/mqtt/#mqtt-discovery
A priori pour rendre les equipements autedecouvrables en tant que tasmota (setoption19 0), c'est une variante dans le formalisme mqtt avec des topics qui respectent un autre formalisme :
https://tasmota.github.io/docs/Home-Assistant/
Je pense que dans vos recherches / modificaitons vous avez deja touché à ça. Je m'explique. Les premieres versions de votre firmware que j'ai essayé (1 semaine en arriere), integraient de façon "aleatoire" des infos complémentaire dans la section tasmota. L'autodecouverte qui etait faite integrait alors les parametre generiques "energy" mais aussi parfois TIC ou parfois CALENDAR.
Depuis, les modifications que vous avez faites, ont fait disparaitre tout ça. On ne recupere plus que les données "energy" dans l'integration tasmota. Donc je pense que vous avez du modifier la façon dont ces infos se diffusaient avant et qui parfois etaient correctment capturées par l'integration tasmota.
L'autre point que je vois c'est que dans la trame tasmota que je vous ai transmis, on voit qu'on a tout un tas de paramètres qui sont a "null" ou "0" ou "-1". Est-ce que ce ne sont pas des diffusions "tasmota compatibles" automatiques (setoption19 0) qui ne sont aujourd'hui pas utilisées dans votre firmware ?
Hello, N'ayant pas Home Assistant, le débuggage est difficile. Je vais publier une nouvelle version 13.3.6 qui intègre un certain nombre de données de base dans les trames appelées "Teleperiod" qui sont émises périodiquement et sont sensées contenir toutes les données de type Sensor. J'espère que ce sont ces trames qui sont interprétées par Home Assistant. Vous pourrez activer toutes les données sauf TIC et regarder si elles apparaissent coté Home Assistant. Si ce n'est pas le cas, il faudra analyser plus en détail le code de l'auto-discovery ...
On fera les beta testeurs 👍
Hello, J'ai installé la version 13.3.6 (taggée 13.3.7 ici) et voici mes remarques. Dans la configuration Teleinfo du Denky-D4, tout est coché sauf TIC et RELAY.
Dans la console, je vois ça (mis en forme par mes soins donc pas forcément aux normes) :
17:18:14.909 MQT: tele/tasmota_EB1F5C/SENSOR = {"Time":"2024-02-01T17:18:14",
"METER":{"PH":1,"ISUB":45,"PSUB":9000,"PMAX":9000,"U1":230,"P1":350,"W1":203,"I1":1.521,"C1":0.58,"P":350,"W":203,"I":1.521}
}
17:23:09.916 MQT: tele/tasmota_EB1F5C/STATE = {"Time":"2024-02-01T17:23:09",
"Uptime":"0T03:38:34","UptimeSec":13114,"Heap":146,"SleepMode":"Dynamic","Sleep":10,"LoadAvg":99,"MqttCount":1,
"Berry":{"HeapUsed":4,"Objects":52},
"POWER":"ON","Dimmer":45,"Color":"417073","HSBColor":"184,43,45","Channel":[25,44,45],"Scheme":0,"Width":1,"Fade":"OFF","Speed":1,"LedTable":"ON",
"Wifi":{"AP":1,"SSId":"XXXXXXx","BSSId":"XXXXXXXXXXX","Channel":2,"Mode":"11n","RSSI":54,"Signal":-73,"LinkCount":1,"Downtime":"0T00:00:02"}
}
17:23:13.849 MQT: tele/tasmota_EB1F5C/SENSOR = {"Time":"2024-02-01T17:23:13",
"ENERGY":{"TotalStartTime":"2023-03-12T01:30:15","Total":1290.817,"Yesterday":22.949,"Today":11.107,"Period":22,"Power":288,"ApparentPower":390,"ReactivePower":0,"Factor":0.74,"Voltage":230,"Current":1.7},
"ALERT":{"Load":0,"Volt":0,"Preavis":0,"Label":""},
"METER":{"PH":1,"ISUB":45,"PSUB":9000,"PMAX":9000,"U1":230,"P1":390,"W1":288,"I1":1.695,"C1":0.74,"P":390,"W":288,"I":1.695},
"COUNTER":{"HC..":18115522,"HP..":475058},
"CAL":{"lv":1,"hp":1}
}
17:23:17.907 TIC: Error [OPTARIF HB]
17:23:18.931 MQT: tele/tasmota_EB1F5C/SENSOR = {"Time":"2024-02-01T17:23:18",
"CAL":{"lv":1,"hp":1,
"day":{"lv0":0,"hp0":1,"lv1":0,"hp1":1,"lv2":0,"hp2":1,"lv3":0,"hp3":1,"lv4":0,"hp4":1,"lv5":0,"hp5":1,"lv6":0,"hp6":1,"lv7":0,"hp7":1,"lv8":0,"hp8":1,"lv9":0,"hp9":1,"lv10":0,"hp10":1,"lv11":0,"hp11":1,"lv12":0,"hp12":1,"lv13":0,"hp13":1,"lv14":0,"hp14":1,"lv15":0,"hp15":1,"lv16":0,"hp16":1,"lv17":0,"hp17":1,"lv18":0,"hp18":1,"lv19":0,"hp19":1,"lv20":0,"hp20":1,"lv21":0,"hp21":1,"lv22":0,"hp22":1,"lv23":0,"hp23":1},"next":{"lv0":0,"hp0":1,"lv1":0,"hp1":1,"lv2":0,"hp2":1,"lv3":0,"hp3":1,"lv4":0,"hp4":1,"lv5":0,"hp5":1,"lv6":0,"hp6":1,"lv7":0,"hp7":1,"lv8":0,"hp8":1,"lv9":0,"hp9":1,"lv10":0,"hp10":1,"lv11":0,"hp11":1,"lv12":0,"hp12":1,"lv13":0,"hp13":1,"lv14":0,"hp14":1,"lv15":0,"hp15":1,"lv16":0,"hp16":1,"lv17":0,"hp17":1,"lv18":0,"hp18":1,"lv19":0,"hp19":1,"lv20":0,"hp20":1,"lv21":0,"hp21":1,"lv22":0,"hp22":1,"lv23":0,"hp23":1}
}
}
17:23:25.839 TIC: Error [HCHP 00047]
17:23:26.831 MQT: tele/tasmota_EB1F5C/SENSOR = {"Time":"2024-02-01T17:23:26",
"COUNTER":{"HC..":18115522,"HP..":475059}
}
Avec la coloration c'est plus parlant :
On remarque qu'il y a des doublons de SENSOR : la trame de 17:23:13 contient les infos METER, CAL et COUNTER qui sont publiées seules dans d'autres trames.
Je pense que c'est la partie ENERGY qui est interprétée par Home Assistant (désolé, je n'ai pas lu le lien sur Tasmota de @jsapede ) car dans l'interface, on retrouve bien ces éléments : avec les dénominations correspondantes aux champs du JSON "ENERGY + nom du champs + valeur"
Il suffirait peut-être d'intégrer les champs COUNTER et CAL (METER est un doublon de champs présents dans ENERGY dans mon cas) directement dans le champs ENERGY, et nom pas dans des champs séparés pour qu'ils soient vus par Home Assistant.
En gros, d'arriver à quelque chose comme ça :
17:23:13.849 MQT: tele/tasmota_EB1F5C/SENSOR = {"Time":"2024-02-01T17:23:13",
"ENERGY":{"TotalStartTime":"2023-03-12T01:30:15","Total":1290.817,"Yesterday":22.949,"Today":11.107,"Period":22,"Power":288,"ApparentPower":390,"ReactivePower":0,"Factor":0.74,"Voltage":230,"Current":1.7,
"HC..":18115522,"HP..":475058,
"lv":1,"hp":1},
}
En couleurs :
En espérant avoir aidé.
Merci pour cette analyse très pertinente ! Je viens de publier une version 13.3.8 qui met en oeuvre une section ENERGY complétée avec les nouvelles données. Les hooks de Tasmota ne sont clairement pas fait pour cela, mais cela devrait être ok. En complément, toutes les sections sont toujours publiées en propre sous tele/SENSOR . Indiquez moi si l'auto-détection Home Assistant fonctionne maintenant.
dsl pas eu le temps ce weekend de me repencher la dessus. je regarde demain
Bonjour, je suis passé en 1.3.3.8 ce matin et j'ai activé totu sauf les RELAY et TIC entre temps je suis passé en mode standard.
Je ne vois pas de difference sur l'affichage HA :
dans la console on voit bien qu'il y a bcp de choses qu isont transmises au MQTT
Mais avec toujours le meme problème de doublon de topic MQTT :
on a le topic MQTT du teleinfo qu'on peut voir sur la capture d'ecran : teleinfo/tele/SENSOR, teleinfo/tele/STATE qui est bien reçu par le HA puisque on le retrouve dans MQTT explorer :
le contenu semble OK :
{"Time":"2024-02-06T10:29:50","COUNTER":{"HC BLEU":17960872,"HP BLEU":18454345,"HC BLANC":235879,"HP BLANC":198778,"HC ROUGE":112288,"HP ROUGE":77521}}
mais le topic tasmota (tasmota/discovery/adresse_MAC_du_DENKY/) lui reste désespéréménet vide, (hormis la partie ENERGY, et c'est je pense ce qui empeche l'autodécouverte des complements d'information :
si on regarde le contenu de tasmota/discovery/adresse_MAC_du_DENKY/sensors, on retrovue bien la section ENERGY et les infos génériques energie de tasmota qui sont lues et intégrées par HA :
{"sn":{"Time":"2024-02-06T10:19:47","ENERGY":{"TotalStartTime":"2024-01-26T17:46:57","Total":162.343,"Yesterday":17.272,"Today":5.059,"Power":387,"ApparentPower":387,"ReactivePower":0,"Factor":1.00,"Voltage":239,"Current":1.6}},"ver":1}
On voit bien que les sensors qui sont sous le topic dédié tasmota n'incluent pas les autres données de type TEMPO ou TIC alors qu'on les retrouve sur le topic teleinfo
Les autres sous-sections (ici tasmota/discovery/adresse_MAC_du_DENKY/config) restente vides :
{"ip":"192.168.0.183","dn":"Teleinfo","fn":["Teleinfo",null,null,null,null,null,null,null],"hn":"teleinfo-7820","mac":"4C7525F5BE8C","md":"Denky D4 (v1.1)","ty":0,"if":0,"ofln":"Offline","onln":"Online","state":["OFF","ON","TOGGLE","HOLD"],"sw":"13.2.0","t":"teleinfo","ft":"%topic%/%prefix%/","tp":["cmnd","stat","tele"],"rl":[2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],"swc":[-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1],"swn":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"btn":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0],"so":{"4":0,"11":0,"13":0,"17":0,"20":0,"30":0,"68":0,"73":0,"82":0,"114":0,"117":0},"lk":1,"lt_st":3,"bat":0,"dslp":0,"sho":[],"sht":[],"ver":1}
en soi j'ai l'impression que la diffusion des infos par MQTT se fait sans pb mais que les valeurs sont simplement adressées dans des topics qui ne sont pas exploitables en integration / autodecouverte.
Donc l'ajout des étiquettes dans ENERGY ne suffit pas à déclencher l'autodiscovery. Si vous faites un ajout manuel, les nouvelles étiquettes présentes dans ENERGY sont utilisables ?
pour moi les ajouts n'aterissent pas dans le bon topic mqtt pour etre autodecouvrables. Ce n'est pas un probleme d'etiquette, c'est sans nul doute un probleme de topic de publication.
le topic mqtt qui est definit dans l'interface web (chez moi ça devient teleinfo/tele) et dans lequel arrivent les infos que vous avez rajouté, n'est pas integrable en autodecouverte.
Pour que ça marche il faudrait que ça soit publié dans un topic conforme "autodecouverte tasmota" soit , de ce que j'en comprends, de la forme : tasmota/discovery/adresse_mac_du_denky. C'est à mon avis la seule difference qui fait que l'appareil est considéré comme un tasmota et qu'il est decouvert plutot qu'un simple message mqtt.
je suppose que comme çà atterit dans un topic mqtt, meme non autodecouvrable, ça doit pouvoir s'integrer manuellement. Je pourrais essayer de faire un essai en manuel des que je trouve 5 minutes
A la limite si ça vous facilite la vie et que vous voulez vous lancer là dedans, je pourrais vous faire une instance en machine virtuelle de homeassistant accessible depuis l'exterieur
Si je mets ça dans ma config homeassistant, par exemple, ça marche :
mqtt: sensor:
- name: "Puissance Apparente" unique_id: "sensor.denky_puissance_apparente" unit_of_measurement: "VA" state_class: "measurement" device_class: "apparent_power" state_topic: "teleinfo/tele/SENSOR" value_template: "{{ value_json.ENERGY.ApparentPower }}"
Je lis bien la valeur qui est dans le JSON, dans le topic teleinfo, dans la rubrique ENERGY, au bon item.
sur le principe pas de pb, si ce n'est que je ne maitrise pas les extractions json avec des espaces mais je vais trouver !
mais bon c'est dommage de ne pas pouvoir beneficier de l'integration tasmota qui devrait permettre de découvrir automatiquement toutes les valeurs.
si le retour a une integration manuelle est la seule solution alors il est inutile de vous embeter de reformater la rubrique ENERGY pour y integrer les éléments de TIC ou de TEMPO, on peut aller les recuperer dans les topics dédiés du mqtt. A ce moment là il est sans doute meme plus efficace de scinder au maximum les données pour n'avoir a diffuser que celles qui sont nécessaire.
Effectivement, si l'auto discovery ne fonctionne pas, le plus simple est de revenir sur des étiquettes de base simples à interpréter.
La partie energy de base fonctionne bien en autodiscovery. Suffit d'aller récupérer les autres données dans le flux mqtt. J'ai pas besoin de tout, surtout les totalisateurs par couleur et les basculements de couleur pour éviter de dépendre de l'API de RTE
Vous sera-t-il possible de remettre les données triées par sections détaillées (comme dans la version .6 il me semble) ? J'adapterai mon sensor mqtt en conséquence
Si ça peut aider quelqu'un voici comment j'ai fait pour integrer certaines données manquantes a mon integration tasmota (les items ENERGY sont autodecouverts) :
mqtt: sensor:
- name: "Denky TEMPO code Couleur" unique_id: "sensor.denky_tempo_couleur" object_id: "Denky TEMPO Code Couleur" device: connections: [["mac", "4c:75:25:f5:be:8c"]] model: "Denky D4 (v1.1)" manufacturer: "Tasmota" name: "Linky" sw_version: "13.2.0" unit_of_measurement: null state_class: measurement suggested_display_precision: 0 state_topic: "teleinfo/tele/SENSOR" value_template: "{{ value_json.TEMPO.lv }}"
en l'etat, avec les infos dans "devices" qui recoupent celles du tasmota, la lecture directe des flux mqtt permet de completer les éléments autodecouverts.
Dans la listre des équipements mqtt on voit bien notre tasmota qui est apparu et qui est donc bien lié :
et si on va dans le détail du device tasmota on voit bien que la valeur complmentaire que j'ai ajouté (ici le code tempo) s'est bien intégrée :
Si jamais vous corrigez le parsing des diffrentes sections de données, ça pourrait être interessant de le mettre dans doc pour qu'on puisse piocher ce qui interesse dans le flux MQTT
Seul point que j'ai pas encore resolu c'est l'extraction des JSON avec des espaces dans les noms genre "HC BLEU"
Je vais publier une nouvelle version avec des étiquettes séparées pour les différents types de données (tel que précédemment). Concernant les espaces dans les étiquettes JSON, je vais les remplacer par des "-". Cela devrait régler les problèmes de parsing.
Seul point que j'ai pas encore resolu c'est l'extraction des JSON avec des espaces dans les noms genre "HC BLEU"
Tu as essayé avec un niveau supplémentaire de brakets: ["HC BLEU"] ?
Il me semble que oui mais j'ai peut être pas tout essayé
Je commente ici car je fais fasse au même soucis :) TIC en Historique. Denky relié sur HA mais une partie des informations ne remontent pas. Uniquement les données "ENERGIE" sont recopiées dans le HA. Tout le reste CAL/TIC ne sont pas présents. Je peux effectivement tout voir côté MQTT donc ce n'est pas un soucis d'envoi des données/broker! Petite subtilité par rapport aux commentaires précédents cependant. Cela a marché pour moi, tout seul sans avoir besoin de rien faire, pendant quelques jours. J'avais les infos du TIC (pas du CAL cependant), ce qui m'a permis de commencer a bosser sur des automatisation. Mais après un reboot du denky, pouf plus rien! plusieurs reboot n'ont pas aidés. Je suis donc dans l'attente de la MAJ :) @jsapede, comment tu as accéder au yaml de config correspondant au tasmota ? Je galère à trouver tout ces fichiers de config...
@tutruie63 pour avoir les infos en detail du tasmota il faut ouvrir les flux mqtt, j'utilise mqtt explorer : https://forum.hacf.fr/t/mqtt-explorer-et-home-assistant/21090
une fois que c'est connecté au mqtt tu peux voir tout le détail des message suivant les topics :
on voit ici le mac, le md (model), etc ... faut regarder dans le doc mqtt de ha a quoi correspondent les abreviations, puis y'a plus qu'a reprendre ces éléments dans le descriptif du "device" de ton sensot mqtt. J'ai tatonné un peu mais ça a marché assez vite.
pour en revenir au debut de ton message, j'ai eu ça aussi dans les premieres versions que j'ai testé, ça devait etre la 1.3.3.4 ou 1.3.3.5, avant qu'on commence a essayer de debuger. Effectivement certains TIC ou COUNTER remontaient parfois à la decouverte du tasmota (et donc devaient bien tre diffusés soous le bon topic) mais c'etait aléatoire, parfois j'avais les TIC et parfois les CAL.
merci, en effet j'avais deja fait cette étape et je vois bien que tout est publié mais pas forcement remonté dans la console. C'est quand meme assez étrange que cela remonte par intermittence. Surtout que cela a fonctionné pendant 3j chez moi sans soucis avant de disparaitre a nouveau. en espérant que la future version soit la bonne. Je fonctionne pour le moment encore avec mon homebridge legacy dans l'attente des 9j rouges restants :) mais hate de le déconnecter !
En effet les topics tasmota ne remontent pas dans la console c'est assez deconcertant. et bizarrement que ça ait marché par intermittence au debut ca l'est encore plus
@NicolasBernaerts ne vous embetez pas a changer les etiquettes ça marche comme ça : value_template: "{{ value_json.COUNTER['HC BLEU'] }}" il suffira juste de tout repositionner correctement dans les bonnes sections d'origine et je me ferai mon template pour recuperer ce qui m'interesse merci pour votre aide !
Je viens de publier une version 13.3.9 qui remet en place les différentes sections autonomes. Le compteur gère désormais les sections METER, TOTAL, CAL, RELAY et ALERT. En complément, les calendriers RTE suivants sont gérés : ECOWATT, POINTE et TEMPO. Toutes les sections sont publiées avec un décalage d'une seconde pour éviter les erreurs de réception TIC.
Merci J'essaie d'implémenter ça demain Je publierai le code ca aidera peut être quelqu'un
hello @jsapede :) je suis preneur. Pour info le code donné: mqtt: sensor:
-> ne fonctionne pas chez moi. Impossible de faire valider le template par HAOS.
@tutruie63 Vous êtes sur que le topic mqtt est bon dans votre cas? Il est calé sur le mien la, et est directement dépendant du nom que vous avez mis dans les réglages du tasmota Vos indentation sont bonnes ?
@jsapede Oui je confirme (voir ci-dessous une capture), j'ai bien la même hiérarchie que vous. Je souhaite remonter today, tomorrow et hp cependant. Mais je ne vois pas la différence que cela pourrait faire par rapport à vous, dans le sens que c'est des informations qui sont présentes au même endroit dans le JSON. HAOS me signifie que la plateforme est manquante dans le YAML
Il manque une virgule après l'étiquette "I=4.956" Vous devez utiliser une ancienne version de mon firmware, car le problème a été corrigé depuis. De plus avec la version 13.3.9, toutes les sections sont publiées séparément. Une mise à jour s'impose ...
Je suis sous la 13.3.9...
la capture MQTT est live, donc je ne comprends pas trop...
Bonjour, J'ai installé hier votre firmware sur un Denky D4 mais j'ai quelques problèmes queje n'arrive pas à a résoudre
je suis sous contrat TEMPO J'essaie d'integrer a homeassistant via l'integration TASMOTA
Je suis sur la derniere version du firmware
Mon compteur linky est en mode historique, et il me semble que le energyconfig est correctmenet paramétré
J'ai rajouté RTE Tempo et visiblement j'ai acces dans l'interface a toutes les données possibles
je fais toutefois face a un certain nombre de problèmes / interrogations
Dans la console je vois systematiquement des erreurs TIC remonter alors que ça semble OK dans les "messages" et dans les rendus sur l'affichage principal
et ces infos ne remontent pas en MQTT ni sur le tasmota. Si j'acrtive enegeryconfig tic=1 ça ne change rien du tout Les infos TEMPO ne remontent pas non plus alors que pourtant on les voit bien passer dans la console
On voit bien ici que j'ai des données de suivi ENERGY, équivalentes à ce qui s'affiche sur la page web du denky + des données METER, mais impossible d'avoir les infos TIC ou ALERT (TEMPO ?)
C'est coherent avec ce qu'on voit sur le MQTT
je me pose la questio nde l'utilité du doublon ENERGY / METER et de la possibilité de supprimer un des deux (je n'ai pas trouvé)
si je relance energyconfig tic=1 ça ne change rien aux infos qui remontent
Autre sujet, qui semble lié, dans la console on voit bien la maj des infos tempo
Mais qui semble etre dans une section "TEMPO" et pas "ALERT"
Rien ne remonte dans MQTT/TASMOTA
Je suis débutant dans le TASMOTA mais j'ai creusé toute la journée hier et je coince !