Tasmota Teleinfo Total incohérent lors d'une injection solaire
-
Bonjour @Charles
j'utilise Tasmota 13.1.0 compilé avec l'option Téléinfo.
Je suis en tarif de BASE monophasé 12KW sur compteur blanc et tout allait bien avec MQTT et HA.
Depuis que j'ai ajouté un kit solaire Plug&Play, je note des incohérences dans le champs "ENERGY Total" quand ma production solaire dépasse ma consommation.
J'ai regardé les logs Tasmota et je confirme le problème.
"Total" est incohérent et pourtant "BASE" est correct. Le champs "Today" semble aussi correct.
Pourquoi ne pas prendre Total=BASE/1000.0 ?
Voici les logs où Total passe de 77207.328 à 6517.575 sans explication :13:23:30.457 MQT: tele/tasmota_C4DACB/SENSOR = {"Time":"2024-04-10T13:23:30","ENERGY":{"TotalStartTime":"2023-09-22T11:00:40","Total":77207.328,"Yesterday":13.539,"Today":9.992,"Period":0,"Power":430,"Current":2.000,"Load":3},"TIC":{"ADCO":"04XXXXXXXXX1","OPTARIF":"BASE","ISOUSC":60,"BASE":77207328,"PTEC":"TH..","IINST":2,"IMAX":51,"PAPP":430,"MOTDETAT":0}} 13:25:30.447 MQT: tele/tasmota_C4DACB/STATE = {"Time":"2024-04-10T13:25:30","Uptime":"164T15:10:05","UptimeSec":14224205,"Heap":22,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":19,"MqttCount":45,"Wifi":{"AP":1,"SSId":"UBNT","BSSId":"78:8A:20:D1:50:6F","Channel":6,"Mode":"11n","RSSI":78,"Signal":-61,"LinkCount":17,"Downtime":"0T00:04:08"}} 13:25:30.458 MQT: tele/tasmota_C4DACB/SENSOR = {"Time":"2024-04-10T13:25:30","ENERGY":{"TotalStartTime":"2023-09-22T11:00:40","Total":77207.328,"Yesterday":13.539,"Today":9.992,"Period":0,"Power":410,"Current":2.000,"Load":3},"TIC":{"ADCO":"04XXXXXXXXX1","OPTARIF":"BASE","ISOUSC":60,"BASE":77207328,"PTEC":"TH..","IINST":2,"IMAX":51,"PAPP":410,"MOTDETAT":0}} 13:27:30.447 MQT: tele/tasmota_C4DACB/STATE = {"Time":"2024-04-10T13:27:30","Uptime":"164T15:12:05","UptimeSec":14224325,"Heap":22,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":19,"MqttCount":45,"Wifi":{"AP":1,"SSId":"UBNT","BSSId":"78:8A:20:D1:50:6F","Channel":6,"Mode":"11n","RSSI":76,"Signal":-62,"LinkCount":17,"Downtime":"0T00:04:08"}} 13:27:30.458 MQT: tele/tasmota_C4DACB/SENSOR = {"Time":"2024-04-10T13:27:30","ENERGY":{"TotalStartTime":"2023-09-22T11:00:40","Total":77207.328,"Yesterday":13.539,"Today":9.992,"Period":0,"Power":390,"Current":2.000,"Load":3},"TIC":{"ADCO":"04XXXXXXXXX1","OPTARIF":"BASE","ISOUSC":60,"BASE":77207328,"PTEC":"TH..","IINST":2,"IMAX":51,"PAPP":390,"MOTDETAT":0}} 13:29:30.447 MQT: tele/tasmota_C4DACB/STATE = {"Time":"2024-04-10T13:29:30","Uptime":"164T15:14:05","UptimeSec":14224445,"Heap":22,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":19,"MqttCount":45,"Wifi":{"AP":1,"SSId":"UBNT","BSSId":"78:8A:20:D1:50:6F","Channel":6,"Mode":"11n","RSSI":76,"Signal":-62,"LinkCount":17,"Downtime":"0T00:04:08"}} 13:29:30.457 MQT: tele/tasmota_C4DACB/SENSOR = {"Time":"2024-04-10T13:29:30","ENERGY":{"TotalStartTime":"2023-09-22T11:00:40","Total":77207.328,"Yesterday":13.539,"Today":9.992,"Period":0,"Power":370,"Current":2.000,"Load":3},"TIC":{"ADCO":"04XXXXXXXXX1","OPTARIF":"BASE","ISOUSC":60,"BASE":77207328,"PTEC":"TH..","IINST":2,"IMAX":51,"PAPP":370,"MOTDETAT":0}} 13:31:30.447 MQT: tele/tasmota_C4DACB/STATE = {"Time":"2024-04-10T13:31:30","Uptime":"164T15:16:05","UptimeSec":14224565,"Heap":22,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":19,"MqttCount":45,"Wifi":{"AP":1,"SSId":"UBNT","BSSId":"78:8A:20:D1:50:6F","Channel":6,"Mode":"11n","RSSI":76,"Signal":-62,"LinkCount":17,"Downtime":"0T00:04:08"}} 13:31:30.457 MQT: tele/tasmota_C4DACB/SENSOR = {"Time":"2024-04-10T13:31:30","ENERGY":{"TotalStartTime":"2023-09-22T11:00:40","Total":6517.575,"Yesterday":13.539,"Today":10.008,"Period":16,"Power":480,"Current":2.000,"Load":3},"TIC":{"ADCO":"04XXXXXXXXX1","OPTARIF":"BASE","ISOUSC":60,"BASE":77207328,"PTEC":"TH..","IINST":2,"IMAX":51,"PAPP":480,"MOTDETAT":0}} 13:33:30.448 MQT: tele/tasmota_C4DACB/STATE = {"Time":"2024-04-10T13:33:30","Uptime":"164T15:18:05","UptimeSec":14224685,"Heap":22,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":19,"MqttCount":45,"Wifi":{"AP":1,"SSId":"UBNT","BSSId":"78:8A:20:D1:50:6F","Channel":6,"Mode":"11n","RSSI":76,"Signal":-62,"LinkCount":17,"Downtime":"0T00:04:08"}} 13:33:30.458 MQT: tele/tasmota_C4DACB/SENSOR = {"Time":"2024-04-10T13:33:30","ENERGY":{"TotalStartTime":"2023-09-22T11:00:40","Total":6517.575,"Yesterday":13.539,"Today":10.008,"Period":0,"Power":410,"Current":2.000,"Load":3},"TIC":{"ADCO":"04XXXXXXXXX1","OPTARIF":"BASE","ISOUSC":60,"BASE":77207328,"PTEC":"TH..","IINST":2,"IMAX":51,"PAPP":410,"MOTDETAT":0}} 13:35:30.448 MQT: tele/tasmota_C4DACB/STATE = {"Time":"2024-04-10T13:35:30","Uptime":"164T15:20:05","UptimeSec":14224805,"Heap":21,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":19,"MqttCount":45,"Wifi":{"AP":1,"SSId":"UBNT","BSSId":"78:8A:20:D1:50:6F","Channel":6,"Mode":"11n","RSSI":76,"Signal":-62,"LinkCount":17,"Downtime":"0T00:04:08"}} 13:35:30.457 MQT: tele/tasmota_C4DACB/SENSOR = {"Time":"2024-04-10T13:35:30","ENERGY":{"TotalStartTime":"2023-09-22T11:00:40","Total":6517.575,"Yesterday":13.539,"Today":10.008,"Period":0,"Power":460,"Current":2.000,"Load":3},"TIC":{"ADCO":"04XXXXXXXXX1","OPTARIF":"BASE","ISOUSC":60,"BASE":77207328,"PTEC":"TH..","IINST":2,"IMAX":51,"PAPP":460,"MOTDETAT":0}}
Cordialement,
Sébastien -
@sj29fr le soucis c'est que le calcul fait par tasmota est fait en interne par le module energy et c'est calculé en fonction de différents paramètres et je pense qu'avec un kit plug and play (donc sans 2eme compteur) perturbe un peu ses calculs. C'est vrai que j'aimerai bien que le module energy ne calcule rien et prenne les données de la teléinfo (ou fasse ses calculs uniquement avec ses données la) mais visiblement ce n'est pas le cas. Je ne sais pas si la version de @Nicolas-Bernaerts gère ça mais ça ne coute rien d'essayer.
-
@Charles Hello,
J'ai déjà été confronté au problème avec une installation utilisant un routeur solaire qui injecte la production directement sur le réseau en bypassant le linky. Cette injection directe crée des incohérences y compris côté linky. Pour régler le problème j'ai ajusté l'algo de calcul de cosphi afin d'anticiper les chutes brutales de conso ou de prod afin de conserver une puissance active (W) réelle.
De plus, je publie des compteurs globaux indépendants de l'algo ENERGY de tasmota.
Donc en résumé ... cela vaut le coup de tester -
Bonjour,
merci @Charles @Nicolas-Bernaerts pour vos conseils.
C'est bien cette version celle de Nicolas : https://github.com/NicolasBernaerts/tasmota ?
Je vais quand même regarder plus en détail de mon coté le code source pour que le total soit celui du compteur et non un calcul. -
@sj29fr normalement il y a une option pour dire au module energy qu'il doit prendre les données du smart meter et non ses calculs ici, je pensais l'avoir mise en route mais ça ne semble pas fonctionner et comme c'est pas super documenté c'est au petit bonheur la chance.
tu peux toujours tenter un
setoption72 1
depuis la console pour voir parce que c'est pourtant bien fait dans l'init du driver teleinfo avec leSettings->flag3.hardware_energy_total = true
void TInfoDrvInit(void) { // If one TInfo RX pin declared use it if (PinUsed(GPIO_TELEINFO_RX)) { tic_rx_pin = Pin(GPIO_TELEINFO_RX); TasmotaGlobal.energy_driver = XNRG_15; Energy->voltage_available = false; Energy->phase_count = 1; // init hardware energy counters total_wh = 0; Settings->flag3.hardware_energy_total = true; } }
En tout cas merci @Nicolas-Bernaerts pour ton expertise avisée.
-
@Charles : merci pour tes conseils.
J'ai modifié l'option et activé les log en debug vers mon serveur syslog.
Ce n'est pas gagné aujourd'hui pour voir le bug, je n'ai pas assez de soleil pour en "donner" à EDF
Je plafonne à ~250W au lieu de 500W. -
@Charles
Malheureusement ce n'est pas mieux avec setoption72 1
Il faut vraiment que je trouve comment forcer l'utilisation de TotalCounter et pas d'un calcul.Exemple de bug avec 2kW/h d'erreur :
16/04/2024 10:38:19 Avis 192.168.1.55 user tasmota-C4DACB-6859 ESP-MQT: stat/tasmota_C4DACB/RESULT = {"SetOption72":"ON"} 16/04/2024 11:13:21 Avis 192.168.1.55 user tasmota-C4DACB-6859 ESP-TIC: Total counter updated to 77268365 Wh 16/04/2024 11:13:21 Avis 192.168.1.55 user tasmota-C4DACB-6859 ESP-TIC: Base:77268365 16/04/2024 11:13:21 Avis 192.168.1.55 user tasmota-C4DACB-6859 ESP-TIC: [1]* BASE=077268365 16/04/2024 11:13:21 Avis 192.168.1.55 user tasmota-C4DACB-6859 ESP-MQT: tele/tasmota_C4DACB/SENSOR = {"Time":"2024-04-16T10:13:19","ENERGY":{"TotalStartTime":"2024-04-12T15:12:09","Total":77266.828,"Yesterday":7.828,"Today":10.492,"Period":641,"Power":810,"Current":3.000,"Load":5},"TIC":{"ADCO":"04XXXXXXXXX1","OPTARIF":"BASE","ISOUSC":60,"BASE":77268364,"PTEC":"TH..","IINST":3,"IMAX":51,"PAPP":810,"MOTDETAT":0}} 16/04/2024 11:13:21 Avis 192.168.1.55 user tasmota-C4DACB-6859 ESP-MQT: tele/tasmota_C4DACB/STATE = {"Time":"2024-04-16T10:13:19","Uptime":"5T14:01:51","UptimeSec":482511,"Heap":22,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":19,"MqttCount":9,"Wifi":{"AP":1,"SSId":"UBNT","BSSId":"78:8A:20:D1:50:6F","Channel":1,"Mode":"11n","RSSI":72,"Signal":-64,"LinkCount":2,"Downtime":"0T00:00:29"}} 16/04/2024 11:13:20 Avis 192.168.1.55 user tasmota-C4DACB-6859 ESP-TIC: Power PAPP=00810, now 810 16/04/2024 11:13:20 Avis 192.168.1.55 user tasmota-C4DACB-6859 ESP-TIC: Current IINST=003, now 3 16/04/2024 11:13:19 Avis 192.168.1.55 user tasmota-C4DACB-6859 ESP-TIC: Power PAPP=00820, now 820 16/04/2024 11:13:19 Avis 192.168.1.55 user tasmota-C4DACB-6859 ESP-TIC: Current IINST=004, now 4 16/04/2024 11:13:18 Avis 192.168.1.55 user tasmota-C4DACB-6859 ESP-TIC: Power PAPP=00820, now 820 16/04/2024 11:13:17 Avis 192.168.1.55 user tasmota-C4DACB-6859 ESP-TIC: Total counter updated to 77268364 Wh
Voici le log :
-
@sj29fr C'est bien là, sous teleinfo.
La dernière version publiée intègre une refonte de l'algo de calcul du cosphi faite pour les besoins du winky. Suite a des retours, elle nécessite de réintégrer l'adaptation pour le cas d'une injection solaire avec conso linky à 0. Je devrais publier la mise a jour ce soir ou demain. -
@Nicolas-Bernaerts ah cool la je pourrais tester mon pote est exactement dans la même situation avec son auto-consommation
Perso je préconise la mise d'un compteur sur la production (avec le déploiement des linky les anciens compteurs se trouvent sur ebay a 20€) plus un module téléinfo et c'est parti.
Sinon un petit compteur tasmota rail din ça se trouve sur amazon à 40€
faut vraiment que je vois comment faire une board avec 2 entrées téléinfo, avec le déploiement du solaire je pense que ça intéresserait pas mal de monde
-
Bonsoir @Nicolas-Bernaerts
Je viens de flasher ton dernier firmware.
Je vais maintenant éviter ces drôles d'erreurs de Tasmota.
Je suis passé au Linky hier et il m'a fait n'importe quoi.
Le compteur est parti de 0kW/h mais quand le solaire a injecté, j'ai eu +77000kW/h. Il doit mémoriser quelque part les index.
Bref, j'avais une question concernant les écrans I2C.
Est-ce que ton firmware supporte le SSD1306 ?
Merci d'avance.
-
@sj29fr J'ai logiquement activé les options I2C et display donc cela devrait être jouable.
Mais je n'ai jamais essayé d'écran.
Si vous avez un bout de code d'exemple je pourrais essayer.