@lebphi Je viens de découvrir par hasard que la commande http://192.168.28.67/cm?cmnd=status+8 me donnait les informations que je recherchais. Cela peut dépanner le temps de remettre en route un serveur mqtt ko.
Posts made by lebphi
-
RE: interroger teleinfo tasmota via commandes http ?
-
RE: interroger teleinfo tasmota via commandes http ?
@Nicolas-Bernaerts merci. Je suis absent une dizaine de jours je m'occupe de ca en rentrant et je vous tiens au courant
-
RE: interroger teleinfo tasmota via commandes http ?
@lebphi votre fork est equivalent pour les commandes mqtt initiales ?
-
RE: interroger teleinfo tasmota via commandes http ?
genial
j'ai le Denky D4 ESP32 TIC Teleinfo Reader.
-
RE: interroger teleinfo tasmota via commandes http ?
@lebphi personne n'a d'idee ?
Existe t-il une commande http pour recuperer la derniere trame par exemple ? -
interroger teleinfo tasmota via commandes http ?
bonjour,
peut on interroger l'etat d'un compteur teleinfo sous tasmota via des commandes http ?
j'y arrive par exemple avec la commande http://192.168.28.64/cm?cmnd=status mais je n'obtiens pas les données de téléinfo.
L'idée est de creer une solution de secours automatique lorsque mon serveur mqtt est planté ce qui m'est déjà arrivé.
J'utilise déjà cette alternative avec des modules shelly wifi, avec des compteurs d'eau tasmota (http://192.168.28.62/cm?cmnd=counter1) et j'aimerais faire pareil avec la téléinfo.
merci d'avance -
RE: probleme de trame json
La trame json linky standard triphasée est très longue 1039 caractères quand cela fonctionne.
Quand il y a un problème elle est bloquée a 1041 caractères et il semble manquer des caractères en fin de trame."NJOURF+1"} versus "NJOURF+1":0}}}
N'y aurait il pas un problème de longueur maxi de cette trame ou de buffer interne permettant de générer la trame ?
J'ai noté que le problème arrivait lors d'une grosse dépense d’énergie électrique en triphasée avec donc des puissances plus grandes donc une trame plus longue. -
probleme de trame json
bonjour,
Je possede un tasmota teleinfo relié a jeedom via le plugin JMQTT qui me pose régulièrement des problemes de format de trame json qui n'est plus décodée par le plugin jeedom.
Pour tenter de resoudre ce probleme j'ai demandé la trame via la commande ip/cm?cmnd=status 10 et j'ai remarqué qu'il y avait un probleme avec le dernier element de la trame qui est NJOURF+1 (quand ca ne fonctionne plus) au lieu de NJOURF+1":0 (quand cela fonctionne).
{"StatusSNS":{"Time":"2021-11-20T19:30:49","COUNTER":{"C1":175065,"C2":66210},"ENERGY":{"TotalStartTime":"2021-05-17T18:53:24","Total":7083.670,"Yesterday":22.623,"Today":38.472,"Power":[1701,0,0],"ApparentPower":[1701,1410,1687],"ReactivePower":[0,1410,1687],"Factor":[1.00,0.00,0.00],"Voltage":[243,235,241],"Current":[7.000,6.000,7.000],"Load":38,"ADSC":"042076281597","VTIC":2,"NGTF":"H PLEINE/CREUSE ","LTARF":" HEURE PLEINE ","EAST":7415743,"EASF01":2675292,"EASF02":4740451,"EASF03":0,"EASF04":0,"EASF05":0,"EASF06":0,"EASF07":0,"EASF08":0,"EASF09":0,"EASF10":0,"EASD01":5418374,"EASD02":1997369,"EASD03":0,"EASD04":0,"IRMS1":7,"IRMS2":6,"IRMS3":7,"URMS1":243,"URMS2":235,"URMS3":241,"PREF":18,"PCOUP":18,"SINSTS":4635,"SINSTS1":1696,"SINSTS2":1363,"SINSTS3":1576,"SMAXSN":5950,"SMAXSN1":2677,"SMAXSN2":1685,"SMAXSN3":1896,"SMAXSN-1":5192,"SMAXSN1-1":2749,"SMAXSN2-1":2423,"SMAXSN3-1":3944,"CCASN":4126,"CCASN-1":2698,"UMOY1":242,"UMOY2":235,"UMOY3":241,"STGE":"003A0401","PRM":2147483647,"RELAIS":0,"NTARF":2,"NJOURF":0,"NJOURF+1"}
Ceci explique pourquoi la trame n'est plus décodée mais d'ou peut venir le probleme ?
merci d'avance
-
RE: Tasmota
On dirait que le module passe en veille au bout d'un certain temps. Lorsque je me reconnecte a la console alors qu'il ne n'envoi plus les trames mqtt j'ai noté ce log :
06:40:13.841 MQT: tele/tasmota_7A1D65/STATE = {"Time":"2021-05-09T06:40:13","Uptime":"0T11:40:15","UptimeSec":42015,"Heap":26,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":19,"MqttCount":6,"Wifi":{"AP":1,"SSId":"roxane","BSSId":"70:4F:57:97:78:75","Channel":1,"RSSI":100,"Signal":-50,"LinkCount":2,"Downtime":"0T00:00:12"}}
C'est quoi ce sleep mode dynamic ?
-
RE: Tasmota
rien d'autres dessus. c'est un wemos.
Je ne sais pas si il y a un lien mais ca a fonctionné toute l'apres midi et la je viens de me connecter a la console et ca vient de sauter
13:58:19.022 MQT: tele/tasmota_7A1D65/INFO2 = {"Info2":{"WebServerMode":"Admin","Hostname":"tasmota_7A1D65-7525","IPAddress":"192.168.68.123"}} 13:58:19.024 MQT: tele/tasmota_7A1D65/INFO3 = {"Info3":{"RestartReason":"Software/System restart"}} 13:58:23.644 MQT: tele/tasmota_7A1D65/STATE = {"Time":"2021-05-08T13:58:23","Uptime":"0T00:00:17","UptimeSec":17,"Heap":26,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":19,"MqttCount":1,"Wifi":{"AP":1,"SSId":"roxane","BSSId":"00:31:92:8F:A8:AA","Channel":1,"RSSI":24,"Signal":-88,"LinkCount":1,"Downtime":"0T00:00:10"}} 13:58:23.653 MQT: tele/tasmota_7A1D65/SENSOR = {"Time":"2021-05-08T13:58:23","ENERGY":{"TotalStartTime":"2021-05-07T13:56:20","Total":6621.837,"Yesterday":23941.357,"Today":25630.152,"Period":22309186,"Power":[1830,0,0],"Current":[2.000,3.000,3.000],"Load":6,"ADCO":"050426021895","OPTARIF":"HC..","ISOUSC":30,"HCHC":292497726,"HCHP":22309171,"PTEC":"HP..","IINST1":2,"IINST2":3,"IINST3":3,"IMAX1":42,"IMAX2":31,"IMAX3":33,"PMAX":14720,"PAPP":1830,"HHPHC":"A","MOTDETAT":0,"PPOT":0}} 17:53:23.859 MQT: tele/tasmota_7A1D65/SENSOR = {"Time":"2021-05-08T17:53:23","ENERGY":{"TotalStartTime":"2021-05-07T13:56:20","Total":6625.713,"Yesterday":23941.357,"Today":25634.027,"Period":0,"Power":[220,0,0],"Current":[0.000,0.000,0.000],"Load":0,"ADCO":"050426021895","OPTARIF":"HC..","ISOUSC":30,"HCHC":292497726,"HCHP":22313053,"PTEC":"HP..","IINST1":0,"IINST2":0,"IINST3":0,"IMAX1":42,"IMAX2":31,"IMAX3":33,"PMAX":14720,"PAPP":220,"HHPHC":"A","MOTDETAT":0,"PPOT":0}} 17:58:23.849 MQT: tele/tasmota_7A1D65/STATE = {"Time":"2021-05-08T17:58:23","Uptime":"0T04:00:17","UptimeSec":14417,"Heap":26,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":19,"MqttCount":3,"Wifi":{"AP":1,"SSId":"roxane","BSSId":"70:4F:57:97:78:75","Channel":1,"RSSI":100,"Signal":-48,"LinkCount":3,"Downtime":"0T00:00:22"}} 17:58:23.861 MQT: tele/tasmota_7A1D65/SENSOR = {"Time":"2021-05-08T17:58:23","ENERGY":{"TotalStartTime":"2021-05-07T13:56:20","Total":6625.713,"Yesterday":23941.357,"Today":25634.027,"Period":0,"Power":[220,0,0],"Current":[0.000,0.000,0.000],"Load":0,"ADCO":"050426021895","OPTARIF":"HC..","ISOUSC":30,"HCHC":292497726,"HCHP":22313060,"PTEC":"HP..","IINST1":0,"IINST2":0,"IINST3":0,"IMAX1":42,"IMAX2":31,"IMAX3":33,"PMAX":14720,"PAPP":220,"HHPHC":"A","MOTDETAT":0,"PPOT":0}} 18:03:23.850 MQT: tele/tasmota_7A1D65/STATE = {"Time":"2021-05-08T18:03:23","Uptime":"0T04:05:17","UptimeSec":14717,"Heap":26,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":19,"MqttCount":3,"Wifi":{"AP":1,"SSId":"roxane","BSSId":"70:4F:57:97:78:75","Channel":1,"RSSI":100,"Signal":-47,"LinkCount":3,"Downtime":"0T00:00:22"}} 18:03:23.861 MQT: tele/tasmota_7A1D65/SENSOR = {"Time":"2021-05-08T18:03:23","ENERGY":{"TotalStartTime":"2021-05-07T13:56:20","Total":6625.713,"Yesterday":23941.357,"Today":25634.027,"Period":0,"Power":[220,0,0],"Current":[0.000,0.000,0.000],"Load":0,"ADCO":"050426021895","OPTARIF":"HC..","ISOUSC":30,"HCHC":292497726,"HCHP":22313066,"PTEC":"HP..","IINST1":0,"IINST2":0,"IINST3":0,"IMAX1":42,"IMAX2":31,"IMAX3":33,"PMAX":14720,"PAPP":220,"HHPHC":"A","MOTDETAT":0,"PPOT":0}} 18:08:23.848 MQT: tele/tasmota_7A1D65/STATE = {"Time":"2021-05-08T18:08:23","Uptime":"0T04:10:17","UptimeSec":15017,"Heap":26,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":19,"MqttCount":3,"Wifi":{"AP":1,"SSId":"roxane","BSSId":"70:4F:57:97:78:75","Channel":1,"RSSI":96,"Signal":-52,"LinkCount":3,"Downtime":"0T00:00:22"}} 18:08:23.859 MQT: tele/tasmota_7A1D65/SENSOR = {"Time":"2021-05-08T18:08:23","ENERGY":{"TotalStartTime":"2021-05-07T13:56:20","Total":6625.713,"Yesterday":23941.357,"Today":25634.027,"Period":0,"Power":[210,0,0],"Current":[0.000,0.000,0.000],"Load":0,"ADCO":"050426021895","OPTARIF":"HC..","ISOUSC":30,"HCHC":292497726,"HCHP":22313072,"PTEC":"HP..","IINST1":0,"IINST2":0,"IINST3":0,"IMAX1":42,"IMAX2":31,"IMAX3":33,"PMAX":14720,"PAPP":210,"HHPHC":"A","MOTDETAT":0,"PPOT":0}} 18:13:23.848 MQT: tele/tasmota_7A1D65/STATE = {"Time":"2021-05-08T18:13:23","Uptime":"0T04:15:17","UptimeSec":15317,"Heap":26,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":19,"MqttCount":3,"Wifi":{"AP":1,"SSId":"roxane","BSSId":"70:4F:57:97:78:75","Channel":1,"RSSI":100,"Signal":-50,"LinkCount":3,"Downtime":"0T00:00:22"}} 18:13:23.860 MQT: tele/tasmota_7A1D65/SENSOR = {"Time":"2021-05-08T18:13:23","ENERGY":{"TotalStartTime":"2021-05-07T13:56:20","Total":6625.744,"Yesterday":23941.357,"Today":25634.059,"Period":31,"Power":[210,0,0],"Current":[0.000,0.000,0.000],"Load":0,"ADCO":"050426021895","OPTARIF":"HC..","ISOUSC":30,"HCHC":292497726,"HCHP":22313078,"PTEC":"HP..","IINST1":0,"IINST2":0,"IINST3":0,"IMAX1":42,"IMAX2":31,"IMAX3":33,"PMAX":14720,"PAPP":210,"HHPHC":"A","MOTDETAT":0,"PPOT":0}} 18:17:33.248 MQT: stat/tasmota_7A1D65/STATUS8 = {"StatusSNS":{"Time":"2021-05-08T18:17:33","ENERGY":{"TotalStartTime":"2021-05-07T13:56:20","Total":6625.744,"Yesterday":23941.357,"Today":25634.059,"Power":[210,0,0],"Current":[0.000,0.000,0.000],"Load":0,"ADCO":"050426021895","OPTARIF":"HC..","ISOUSC":30,"HCHC":292497726,"HCHP":22313083,"PTEC":"HP..","IINST1":0,"IINST2":0,"IINST3":0,"IMAX1":42,"IMAX2":31,"IMAX3":33,"PMAX":14720,"PAPP":210,"HHPHC":"A","MOTDETAT":0,"PPOT":0}}} 18:18:23.849 MQT: tele/tasmota_7A1D65/STATE = {"Time":"2021-05-08T18:18:23","Uptime":"0T04:20:17","UptimeSec":15617,"Heap":26,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":19,"MqttCount":3,"Wifi":{"AP":1,"SSId":"roxane","BSSId":"70:4F:57:97:78:75","Channel":1,"RSSI":94,"Signal":-53,"LinkCount":3,"Downtime":"0T00:00:22"}} 18:18:23.860 MQT: tele/tasmota_7A1D65/SENSOR = {"Time":"2021-05-08T18:18:23","ENERGY":{"TotalStartTime":"2021-05-07T13:56:20","Total":6625.744,"Yesterday":23941.357,"Today":25634.059,"Period":0,"Power":[200,0,0],"Current":[0.000,0.000,0.000],"Load":0,"ADCO":"050426021895","OPTARIF":"HC..","ISOUSC":30,"HCHC":292497726,"HCHP":22313084,"PTEC":"HP..","IINST1":0,"IINST2":0,"IINST3":0,"IMAX1":42,"IMAX2":31,"IMAX3":33,"PMAX":14720,"PAPP":200,"HHPHC":"A","MOTDETAT":0,"PPOT":0}} 18:19:10.752 MQT: Attempting connection... 18:19:10.964 MQT: Connect failed to 192.168.68.137:1883, rc -2. Retry in 10 sec 18:19:21.752 MQT: Attempting connection... 18:19:21.964 MQT: Connect failed to 192.168.68.137:1883, rc -2. Retry in 20 sec 18:19:42.752 MQT: Attempting connection... 18:19:42.964 MQT: Connect failed to 192.168.68.137:1883, rc -2. Retry in 30 sec 18:20:13.751 MQT: Attempting connection... 18:20:13.964 MQT: Connect failed to 192.168.68.137:1883, rc -2. Retry in 40 sec 18:20:54.751 MQT: Attempting connection... 18:20:54.963 MQT: Connect failed to 192.168.68.137:1883, rc -2. Retry in 50 sec 18:21:45.751 MQT: Attempting connection... 18:21:45.962 MQT: Connect failed to 192.168.68.137:1883, rc -2. Retry in 60 sec
-
RE: Tasmota
@lebphi Je viens de reactiver MQTT. Tout fonctionne correctement par contre la aussi il y a au bout d'un moment un plantage de tasmoto qui decroche de maqtt et n'arrive plus a se reconnecter. Si je fais un restart tout refonctionne.
D'ou peut venir le probleme ? Ca servirait a quelque chose de refaire une install complete de tasmota ?
-
RE: Tasmota
Merci de vos réponses.
En fait j'avais commencé par MQTT mais j'ai galéré avec les 2 plugins jeedom MQTT qui m'ont fait n'importe quoi notamment en dupliquant x fois des commandes MQTT venant de tasmota. Ca devenait ingérable du coup j'ai essayé autrement.
Vu ce que vous me dites je vais ressayer MQTT mais sans les plugins, en passant par un programme python ou php independant de jeedom. -
RE: Tasmota
bonjour
je viens juste de mettre en œuvre un tasmota teleinfo wemos sur un ancien compteur edf en mode historique pour remonter les infos dans jeedom.
Dans jeedom j'ai créé un scénario qui lit toutes les minutes le module tasmota et qui met à jour les valeurs qui lui sont associées dans jeedom (indices, poqer et etat de la connection avec tasmota).
L'interrogation du module wemos se fait via file_get_contents en php.
Au bout d'un certain temps (une heure environ) le file_get_contents retourne une chaine vide.
Et si je fais la meme requete dans un navigateur la page retournée par tasmota est bonne !{"StatusSNS":{"Time":"2021-05-08T07:52:30","ENERGY":{"TotalStartTime":"2021-05-07T13:56:20","Total":3289.434,"Yesterday":23941.357,"Today":22297.748,"Power":[1140,0,0],"Current":[2.000,2.000,1.000],"Load":6,"ADCO":"050426021895","OPTARIF":"HC..","ISOUSC":30,"HCHC":292497726,"HCHP":22297575,"PTEC":"HP..","IINST1":2,"IINST2":2,"IINST3":1,"IMAX1":42,"IMAX2":31,"IMAX3":33,"PMAX":14720,"PAPP":1140,"HHPHC":"A","MOTDETAT":0,"PPOT":0}}}
Enfin si je reboote le tasmota tout rentre dans l'ordre donc j'aurais tendance à mettre en cause ce dernier mais je n'arrive pas a cerner le problème.
J'ai essayé en remplacant file_get_contents par curl et j'ai le meme problème.
En résumé ca marche toujours avec le navigateur, ca marche avec le file_get_contents un moment puis ca ne marche plus et si je reboote le wemos tout rentre dans l'ordre.
Une idée ?
merci d'avance
Ci-dessous le code complet pour info
// lecture des donnees sur tasmota teleinfo solaire
// ip du wemos http://192.168.68.123/
$api = "http://192.168.68.123/cm?cmnd=status 10";ini_set('default_socket_timeout', 10); // timeout pour commande get
$json = file_get_contents($api, true);
$scenario->setlog( 'json > ' . $json);$enligne=1;
if($json === false) {
$scenario->setlog("probleme ");
$enligne=0;} else {
// Step 2: Decodage du JSON et recuperation des infos souhaitees
$jsonData = json_decode($json,true);// recup power et indices
$power=$jsonData["StatusSNS"]["ENERGY"]["Power"]["0"];
$indhc=$jsonData["StatusSNS"]["ENERGY"]["HCHC"];
$indhp=$jsonData["StatusSNS"]["ENERGY"]["HCHP"];// log des donnees
//$scenario->setlog($power . ' / ' . $indhc . ' / ' . $indhp);// mise a jour du virtuel correspondant
$poweractuel = cmd::byString('#[electricite][teleinfo solaire][power]#')->execCmd();
if ($poweractuel != $power) {
cmd::byString('#[electricite][teleinfo solaire][power]#')->event($power);
$scenario->setlog('power ' . $poweractuel . ' > ' . $power);
}$indhcractuel = cmd::byString('#[electricite][teleinfo solaire][ind hc]#')->execCmd();
if ($indhcractuel != $indhc) {
cmd::byString('#[electricite][teleinfo solaire][ind hc]#')->event($indhc);
$scenario->setlog('ind hc ' . $indhcractuel . ' > ' . $indhc);
}$indhpactuel = cmd::byString('#[electricite][teleinfo solaire][ind hp]#')->execCmd();
if ($indhpactuel != $indhp) {
cmd::byString('#[electricite][teleinfo solaire][ind hp]#')->event($indhp);
$scenario->setlog('ind hp ' . $indhpactuel . ' > ' . $indhp);
}
}// recup etat connection actuelle
$enligneactuel = cmd::byString('#[electricite][teleinfo solaire][enligne]#')->execCmd();
if ($enligneactuel != $enligne) {
$scenario->setlog('en ligne ' . $enligneactuel . ' > ' . $enligne);
log::add("alertes","ALERT", 'Etat teleinfo solaire = ' . $enligne);
cmd::byString('#[electricite][teleinfo solaire][enligne]#')->event($enligne);
}