@Tostaky said in Denky D4 + Tempo:
payload['IDX_SOUT_HP'] = value['EASF02']
payload['IDX_SOUT_HC'] = value['EASF01']
Evidement, ces lignes sont en trop
@Tostaky said in Denky D4 + Tempo:
payload['IDX_SOUT_HP'] = value['EASF02']
payload['IDX_SOUT_HC'] = value['EASF01']
Evidement, ces lignes sont en trop
Bonjour,
Pour continuer sur ce sujet, j'ai essayé de passer sur le firmware de @Nicolas-Bernaerts. Les différents retours que j'ai pu lire est que cela améliore la comptabilisation de l'énergie entre Enedis, le Denky et EmonCMS.
Aujourd'hui j'utilise un firmware "standard" et un script Berry pour alimenter EmonCMS toutes les 8500ms.
En passant à la version 14.9beta de @Nicolas-Bernaerts, je n'ai plus de données qui remlontent. Le script Berry ne fonctionne plus.
J'ai fait un rollback et tout est rentré dans l'ordre.
Néanmoins, je voudrais tester ce firmware. De manière à préparer le script avant (je n'ai pas accès au Denky avant le WE prochain), est-il possible de valider que le script simplifié suivant
var payload = {}
def rule_tic(value, trigger)
payload['IDX_SOUT'] = value['EAST']
payload['IDX_SOUT_HP'] = value['EASF02']
payload['IDX_SOUT_HC'] = value['EASF01']
payload['IDX_INJ'] = value['EAIT']
payload['PUI_SOUT'] = value['SINSTS']
payload['PUI_INJ'] = value['SINSTI']
end
def start()
# Callback on each frame interception
tasmota.add_rule("TIC",rule_tic)
# fire first post in 5s
tasmota.set_timer(5000, send_emoncms)
end
def send_emoncms()
...
end
devient
var payload = {}
def rule_meter (value, trigger)
payload['PUI_SOUT'] = value['W']
payload['PUI_INJ'] = value['PW']
end
def rule_contract (value, trigger)
payload['IDX_SOUT'] = value['CONSO']
payload['IDX_SOUT_HP'] = value['EASF02']
payload['IDX_SOUT_HC'] = value['EASF01']
payload['IDX_INJ'] = value['PROD']
end
def send_emoncms()
...
end
def start()
# Callback on each frame interception
tasmota.add_rule("METER",rule_meter)
tasmota.add_rule("CONTRACT",rule_contract)
# fire first post in 5s
tasmota.set_timer(5000, send_emoncms)
end
@Charles said in Denky D4 + Tempo:
@Tostaky said in Denky D4 + Tempo:
STGE = xBxxxxx => B = 1011 => aujourd'hui rouge (3), demain blanc (2).
L'interface affiche toujours rouge / rougeje comprends pas j'ai testé le même code et aucun soucis
https://onlinegdb.com/_VnKGhRZ5
#include <stdio.h> #include <stdlib.h> #include <stdint.h> int main() { uint32_t status_register = strtol("9B3AD501", NULL, 16); printf("Status Register is 0x%08X\r\n", status_register); if (status_register >> 24) { char txt[32]; uint8_t sr = status_register >> 24; uint8_t val = sr & 0x03; if (val) { printf("Jour %s\r\n", val==1?"Bleu":val==2?"Blanc":"Rouge"); } val = (sr >> 2) & 0x03; if (val) { printf("Demain %s\r\n", val==1?"Bleu":val==2?"Blanc":"Rouge"); } val = (sr >> 4) & 0x03; if (val) { printf("Préavis pointe mobile %d\r\n", val); } val = (sr >> 6) & 0x03; if (val) { printf("Pointe mobile en cours %d\r\n", val); } } return 0; }
La sortie donne bien ça
Status Register is 0x9B3AD501 Jour Rouge Demain Blanc Préavis Pointe mobile 1 Pointe mobile En cours 2
peut être essayer cette 2eme méthode au cas ou (avec aussi le
strtol
changé enstrtoul
)
https://onlinegdb.com/ADbvc4273#include <stdio.h> #include <stdlib.h> #include <stdint.h> int main() { uint32_t status_register = strtoul("9B3AD501", NULL, 16); printf("Status Register is 0x%08X\r\n", status_register); if (status_register >> 24) { char txt[32]; char coul[4][6] = { "----", "Bleu", "Blanc", "Rouge" }; uint8_t sr = status_register >> 24; uint8_t val = sr & 0x03; if (val) { printf("Jour %s\r\n", coul[val]); } val = (sr >> 2) & 0x03; if (val) { printf("Demain %s\r\n", coul[val]); } val = (sr >> 4) & 0x03; if (val) { printf("Préavis pointe mobile %d\r\n", val); } val = (sr >> 6) & 0x03; if (val) { printf("Pointe mobile en cours %d\r\n", val); } } return 0; return 0; }
qui donne la même chose mais codé différemment, t'as moyen de tester ?
Je n'ai pas modifié de code coté Denky car j'ai pris un firmware déjà compilé.
A la lecture du code, je suis 100% d'accord avec le fonctionnement.
Comme le script Berry accède à la valeur STGE et la décode correctement pour la transmettre à EmonCMS, j'en déduis que c'est quelque part entre la libteleinfo et l'affichage.
C'est plus à titre informatif que je fais remonter car j'utilise peu l'affichage
@Charles said in Denky D4 + Tempo:
C'est pas normal, tu dois avoir une trace de
STEG
comme c'est codé ici et du dois aussi l'avoir dans la trame MQTT si c'est configuré non?
Pas de MQTT pour moi. Néanmoins, j'ai des gros doigts. STGE != STEG.
21:03:25.957 RSL: SENSOR = {"Time":"2023-12-06T21:03:25","ENERGY":{"TotalStartTime":"2023-12-06T09:54:49","Total":14623.401,"Yesterday":14.950,"Today":4.984,"Period":[0,0,0],"Power":[0,227,336],"ApparentPower":[0,227,336],"ReactivePower":[0,0,0],"Factor":[0.00,1.00,1.00],"Voltage":[238,224,241],"Current":[0.000,1.000,1.000],"Load":0},"TIC":{"ADSC":"022076***","VTIC":2,"NGTF":"TEMPO","LTARF":"HP ROUGE","EAST":14623401,"EASF01":6659364,"EASF02":7829254,"EASF03":76043,"EASF04":30388,"EASF05":16803,"EASF06":11549,"EASF07":0,"EASF08":0,"EASF09":0,"EASF10":0,"EASD01":9237921,"EASD02":2600419,"EASD03":1209456,"EASD04":1575605,"EAIT":3127874,"ERQ1":1964972,"ERQ2":362712,"ERQ3":54345,"ERQ4":927425,"IRMS1":0,"IRMS2":1,"IRMS3":1,"URMS1":238,"URMS2":224,"URMS3":241,"PREF":9,"PCOUP":9,"SINSTS":595,"SINSTS1":31,"SINSTS2":227,"SINSTS3":336,"SMAXSN":3380,"SMAXSN1":1090,"SMAXSN2":1030,"SMAXSN3":1300,"SMAXSN-1":6480,"SMAXSN1-1":3090,"SMAXSN2-1":2670,"SMAXSN3-1":1390,"SINSTI":0,"SMAXIN":2710,"SMAXIN-1":260,"CCASN":390,"CCASN-1":426,"CCAIN":0,"CCAIN-1":0,"UMOY1":236,"UMOY2":224,"UMOY3":240,"STGE":"9B3AD501","PRM":****,"RELAIS":0,"NTARF":6,"NJOURF":0,"NJOURF+1":0}}
STGE = xBxxxxx => B = 1011 => aujourd'hui rouge (3), demain blanc (2).
L'interface affiche toujours rouge / rouge
@Nicolas-Bernaerts said in Denky D4 + Tempo:
@Tostaky @localhost61 @Charles Hello,
Pour information, je suis en train d'intégrer la lecture des données Tempo de RTE dans mon fork Tasmota Teleinfo.
Un nouveau topic MQTT sera disponible afin de récupérer les données :
.../sensor/TEMPO {"Time":"2022-10-10T23:51:09", "Tempo":{"J-1":"bleu","J":"blanc","J+1":"rouge"}}
Pour récupérer ces données, il faudra simplement avoir créé un compte sur le site RTE et généré sa clé privée (même compte que pour Ecowatt).
Je pense pouvoir publier cette nouvelle version d'ici 1 ou 2 jours.
Génial.
Je viens de terminer mon alerting mail en m'appuyant sur l'API publique d'EDF. Pas besoin de compte et de clef d'API.
Le code est là : https://github.com/sosandroid/Monitoring_Energie/tree/main/src/tempo
Après 10 minutes de log su service web sur le niveau le plus verbeux, pas de traces de l'étiquette en question STEG.
Pourtant, le script berry qui envoie 0,1,2, ou 3 à EmonCMS détecte bien le changement à 20h
Le code partagé est issu du repo Tasmota de @Charles
J'ai juste dit que j'étais d'accord avec lui sur les bitmasking
Je ne m'explique juste pas pourquoi il y a un décallage entre la mise à jour du registre par Enedis, et la mise à jour de l'interface (par défaut) du denky
Je ne suis pas allé jusque là dans la relecture du code
xnrg_15_teleinfo.ino >
if (status_register >> 24) {
char txt[32];
uint8_t sr = status_register >> 24;
uint8_t val = sr & 0x03;
if (val) {
WSContentSend_P(HTTP_ENERGY_LABEL_VALUE, PSTR("Jour"), val==1?"Bleu":val==2?"Blanc":"Rouge");
}
val = (sr >> 2) & 0x03;
if (val) {
WSContentSend_P(HTTP_ENERGY_LABEL_VALUE, PSTR("Demain"), val==1?"Bleu":val==2?"Blanc":"Rouge");
}
val = (sr >> 4) & 0x03;
if (val) {
sprintf_P(txt, PSTR("Pointe mobile %d"), val);
WSContentSend_P(HTTP_ENERGY_LABEL_VALUE, PSTR("Préavis"), txt);
}
val = (sr >> 6) & 0x03;
if (val) {
sprintf_P(txt, PSTR("En cours %d"), val);
WSContentSend_P(HTTP_ENERGY_LABEL_VALUE, PSTR("Pointe mobile"), txt);
}
}
On utilise pourtant la même info. L'interface web ne se met pas à jour en même temps néanmoins. Le registre a été détecté mis à jour à 19h42 selon EmonCMS (via un scrip Berry). L'interface ne l'a toujours pas vu...
Bonjour,
Comment est calculé la couleur des étiquettes tempo ?
Par exemple, aujourd'hui, c'est affiché, rouge J / Rouge J+1.
Le décodage de l'étiquette STEG donne Rouge J / Blanc J+1
Enedis donne comme l'étiquette STEG.
Qu'en est-il ?
Mise à jour de ma doc sur les étiquettes Standard et Historique. et décodage des étiquettes ADSC et STEG en particulier
https://github.com/sosandroid/Monitoring_Energie/blob/main/doc/tic_standard_histo.md
@Charles Merci.
la version 1.1 est celle du hardware ou du template ?
Coté hardware, je suis en v1.3
@Tostaky said in Denky D4 - démarrage:
21:51:52.994 LibTeleinfo::checkLine Err checksum 0x00 != 0x26 (total errors=20)
Le script Berry tourne. C'est le bonhomme qui ne tourne pas...
Par contre, toujours des erreurs de la lib
Bonsoir,
En voulant optimiser mon script Berry, je n'ai plus de Berry du tout.
Suite à une erreur de syntaxe. Il n'entend plus rien.
Par contre, j'ai des erreurs dans les logs. Le forum pousse vers une erreur hardware, mais je n'ai touché à rien...
00:00:00.002 HDW: ESP32-PICO-V3-02 v3.0 (PSRAM)
00:00:00.060 UFS: FlashFS mounted with 4396 kB free
00:00:00.088 CFG: Loaded from File, Count 61
00:00:00.298 QPC: Count 1
00:00:00.304 I2C: Bus1 using GPIO22(SCL) and GPIO21(SDA)
00:00:00.399 BRY: Berry initialized, RAM used 3932 bytes
00:00:00.484 CFG: Energy loaded from file
00:00:00.484 NRG: Init driver 15
00:00:00.495 Project tasmota - Tasmota Version 13.2.0.2(teleinfo)-2_0_14(2023-11-27T18:31:23)
00:00:00.496 TIC: RX on GPIO8, baudrate 9600
00:00:01.147 WIF: Connecting to AP1 LaPetiteMaisonSurLaColline Channel 1 BSSId 04:D9:F5:ED:8A:D8 in mode 11n as tasmota-F365C0-1472...
00:00:02.811 WIF: Connected
00:00:03.251 HTP: Web server active on tasmota-F365C0-1472 with IP address 192.168.1.131
00:00:06.748 RSL: INFO1 = {"Info1":{"Module":"Denky D4 (v1.1)","Version":"13.2.0.2(teleinfo)","FallbackTopic":"cmnd/DVES_F365C0_fb/","GroupTopic":"cmnd/tasmotas/"}}
00:00:06.762 RSL: INFO2 = {"Info2":{"WebServerMode":"Admin","Hostname":"tasmota-F365C0-1472","IPAddress":"192.168.1.131","IP6Global":"","IP6Local":"fe80::4e75:25ff:fef3:65c0%st1"}}
00:00:06.775 RSL: INFO3 = {"Info3":{"RestartReason":"Software reset CPU","BootCount":22}}
00:00:06.778 RSL: RESULT = {"POWER":"OFF"}
00:00:06.789 RSL: POWER = OFF
00:00:06.806 QPC: Reset
00:00:10.269 LibTeleinfo::checkLine Err checksum 0x00 != 0x23 (total errors=1)
00:00:10.270 LibTeleinfo::checkLine Err checksum 0x00 != 0x26 (total errors=2)
00:00:10.698 RSL: STATE = {"Time":"1970-01-01T00:00:10","Uptime":"0T00:00:12","UptimeSec":12,"Heap":165,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":191,"MqttCount":0,"Berry":{"HeapUsed":3,"Objects":39},"POWER":"OFF","Dimmer":15,"Color":"072606","HSBColor":"118,83,15","Channel":[2,15,2],"Scheme":0,"Width":1,"Fade":"OFF","Speed":1,"LedTable":"ON","Wifi":{"AP":1,"SSId":"wifi","BSSId":"ED:EA:DD:ED:EA:DD","Channel":1,"Mode":"11n","RSSI":100,"Signal":-10,"LinkCount":1,"Downtime":"0T00:00:04"}}
00:00:10.762 RSL: SENSOR = {"Time":"1970-01-01T00:00:10","ENERGY":{"TotalStartTime":"2023-11-27T10:39:09","Total":14461.792,"Yesterday":18.499,"Today":11.937,"Period":[0,0,0],"Power":[0,296,265],"ApparentPower":[0,296,265],"ReactivePower":[0,0,0],"Factor":[0.00,1.00,1.00],"Voltage":[240,230,242],"Current":[0.000,1.000,1.000],"Load":0},"TIC":{"ADSC":"022076181156","VTIC":2,"NGTF":"TEMPO","LTARF":"HP BLANC","EAST":14461792,"EASF01":6639586,"EASF02":7811982,"EASF03":4490,"EASF04":5734,"EASF05":0,"EASF06":0,"EASF07":0,"EASF08":0,"EASF09":0,"EASF10":0,"EASD01":9237921,"EASD02":2600419,"EASD03":1101322,"EASD04":1522130,"EAIT":3092107,"ERQ1":1957715,"ERQ2":362099,"ERQ3":52179,"ERQ4":912319,"IRMS1":0,"IRMS2":1,"IRMS3":1,"URMS1":240,"URMS2":230,"URMS3":242,"PREF":9,"PCOUP":9,"SINSTS":596,"SINSTS1":32,"SINSTS2":296,"SINSTS3":265,"SMAXSN":6000,"SMAXSN1":1080,"SMAXSN2":2890,"SMAXSN3":2100,"SMAXSN-1":3560,"SMAXSN1-1":1110,"SMAXSN2-1":1090,"SMAXSN3-1":1350,"SINSTI":0,"SMAXIN":730,"SMAXIN-1":2810,"CCASN":636,"CCASN-1":384,"CCAIN":0,"CCAIN-1":0,"UMOY1":238,"UMOY2":227,"UMOY3":241,"STGE":"5A3ACD01","PRM":2147483647,"RELAIS":0,"NTARF":4,"NJOURF":0,"NJOURF+1":0}}
21:51:27.486 LibTeleinfo::checkLine Err checksum 0x00 != 0x23 (total errors=3)
21:51:27.487 LibTeleinfo::checkLine Err checksum 0x00 != 0x26 (total errors=4)
21:51:30.780 LibTeleinfo::checkLine Err checksum 0x00 != 0x23 (total errors=5)
21:51:30.782 LibTeleinfo::checkLine Err checksum 0x00 != 0x26 (total errors=6)
21:51:33.975 LibTeleinfo::checkLine Err checksum 0x00 != 0x23 (total errors=7)
21:51:33.976 LibTeleinfo::checkLine Err checksum 0x00 != 0x26 (total errors=8)
21:51:36.998 LibTeleinfo::checkLine Err checksum 0x00 != 0x23 (total errors=9)
21:51:36.000 LibTeleinfo::checkLine Err checksum 0x00 != 0x26 (total errors=10)
21:51:40.247 LibTeleinfo::checkLine Err checksum 0x00 != 0x23 (total errors=11)
21:51:40.249 LibTeleinfo::checkLine Err checksum 0x00 != 0x26 (total errors=12)
21:51:43.491 LibTeleinfo::checkLine Err checksum 0x00 != 0x23 (total errors=13)
21:51:43.492 LibTeleinfo::checkLine Err checksum 0x00 != 0x26 (total errors=14)
21:51:46.497 LibTeleinfo::checkLine Err checksum 0x00 != 0x23 (total errors=15)
21:51:46.498 LibTeleinfo::checkLine Err checksum 0x00 != 0x26 (total errors=16)
21:51:49.746 LibTeleinfo::checkLine Err checksum 0x00 != 0x23 (total errors=17)
21:51:49.747 LibTeleinfo::checkLine Err checksum 0x00 != 0x26 (total errors=18)
21:51:52.993 LibTeleinfo::checkLine Err checksum 0x00 != 0x23 (total errors=19)
21:51:52.994 LibTeleinfo::checkLine Err checksum 0x00 != 0x26 (total errors=20)
[...]
22:20:30.811 LibTeleinfo::checkLine Err checksum 0x00 != 0x23 (total errors=886)
22:20:31.024 LibTeleinfo::checkLine Err checksum 0x00 != 0x26 (total errors=887)
22:20:34.024 LibTeleinfo::checkLine Err checksum 0x00 != 0x23 (total errors=888)
22:20:34.269 LibTeleinfo::checkLine Err checksum 0x00 != 0x26 (total errors=889)
22:20:37.274 LibTeleinfo::checkLine Err checksum 0x00 != 0x23 (total errors=890)
22:20:37.277 LibTeleinfo::checkLine Err checksum 0x00 != 0x26 (total errors=891)
22:20:40.522 LibTeleinfo::checkLine Err checksum 0x00 != 0x23 (total errors=892)
22:20:40.524 LibTeleinfo::checkLine Err checksum 0x00 != 0x26 (total errors=893)
22:20:43.747 LibTeleinfo::checkLine Err checksum 0x00 != 0x23 (total errors=894)
22:20:43.749 LibTeleinfo::checkLine Err checksum 0x00 != 0x26 (total errors=895)
22:20:45.271 RSL: RESULT = {"SerialLog":{"4":{"Active":"4"}}}
22:20:45.352 RSL: RESULT = {"WebLog":2}
22:20:45.370 RSL: RESULT = {"MqttLog":0}
22:20:45.381 RSL: RESULT = {"SysLog":{"0":{"Active":"0"}}}
22:20:45.407 RSL: RESULT = {"LogHost":""}
22:20:45.430 RSL: RESULT = {"LogPort":514}
22:20:45.441 RSL: RESULT = {"TelePeriod":300}
22:20:45.649 RSL: STATE = {"Time":"2023-11-27T22:20:45","Uptime":"0T00:23:49","UptimeSec":1429,"Heap":160,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":37,"MqttCount":0,"Berry":{"HeapUsed":6,"Objects":85},"POWER":"OFF","Dimmer":15,"Color":"072606","HSBColor":"118,83,15","Channel":[2,15,2],"Scheme":0,"Width":1,"Fade":"OFF","Speed":1,"LedTable":"ON","Wifi":{"AP":1,"SSId":"LaPetiteMaisonSurLaColline","BSSId":"04:D9:F5:ED:8A:D8","Channel":1,"Mode":"11n","RSSI":100,"Signal":-9,"LinkCount":1,"Downtime":"0T00:00:05"}}
22:20:45.723 RSL: SENSOR = {"Time":"2023-11-27T22:20:45","ENERGY":{"TotalStartTime":"2023-11-27T10:39:09","Total":14463.206,"Yesterday":18.499,"Today":11.937,"Period":[0,0,0],"Power":[1137,1277,1268],"ApparentPower":[1137,1277,1268],"ReactivePower":[0,0,0],"Factor":[1.00,1.00,1.00],"Voltage":[234,229,241],"Current":[5.000,6.000,5.000],"Load":11},"TIC":{"ADSC":"022076181156","VTIC":2,"NGTF":"TEMPO","LTARF":"HC BLANC","EAST":14463206,"EASF01":6639586,"EASF02":7811982,"EASF03":5854,"EASF04":5784,"EASF05":0,"EASF06":0,"EASF07":0,"EASF08":0,"EASF09":0,"EASF10":0,"EASD01":9237921,"EASD02":2600419,"EASD03":1102687,"EASD04":1522180,"EAIT":3092107,"ERQ1":1957715,"ERQ2":362099,"ERQ3":52179,"ERQ4":912383,"IRMS1":5,"IRMS2":6,"IRMS3":5,"URMS1":234,"URMS2":229,"URMS3":241,"PREF":9,"PCOUP":9,"SINSTS":3682,"SINSTS1":1137,"SINSTS2":1277,"SINSTS3":1268,"SMAXSN":6000,"SMAXSN1":1160,"SMAXSN2":2890,"SMAXSN3":2100,"SMAXSN-1":3560,"SMAXSN1-1":1110,"SMAXSN2-1":1090,"SMAXSN3-1":1350,"SINSTI":0,"SMAXIN":730,"SMAXIN-1":2810,"CCASN":414,"CCASN-1":636,"CCAIN":0,"CCAIN-1":0,"UMOY1":238,"UMOY2":229,"UMOY3":240,"STGE":"5A3A8900","PRM":2147483647,"RELAIS":1,"NTARF":3,"NJOURF":0,"NJOURF+1":0}}
22:20:46.753 LibTeleinfo::checkLine Err checksum 0x00 != 0x23 (total errors=896)
22:20:46.755 LibTeleinfo::checkLine Err checksum 0x00 != 0x26 (total errors=897)
22:20:50.031 LibTeleinfo::checkLine Err checksum 0x00 != 0x23 (total errors=898)
22:20:50.033 LibTeleinfo::checkLine Err checksum 0x00 != 0x26 (total errors=899)
22:20:53.267 LibTeleinfo::checkLine Err checksum 0x00 != 0x23 (total errors=900)
22:20:53.269 LibTeleinfo::checkLine Err checksum 0x00 != 0x26 (total errors=901)
Pensant bien faire, j'ai mis à jour avec la dernière version. cela n'a rien changé.
Le script testé ici est celui de l'origine qui remplissaint les données vers EmonCMS. Plus de fonctionnement ...
Quelles seraient les sources potentielles ?
Merci de votre aide.
D'autres longs ont fini par apparaitre dans la console Berry
BRY: Exception> 'type_error' - 'nil' value is not callable
<unknown source>: in function `page_autoconf_mgr`
<unknown source>: in function `<lambda>`
Après une remise à zéro complète du Denky (bon, l'autoexec.be est resté)
22:31:51.968 BRY: Exception> 'key_error' - EAST
22:31:51.970 stack traceback:
22:31:51.972 <native>: in native function
22:31:51.973 <unknown source>: in function `rule_tic`
22:31:51.976 <unknown source>: in function `try_rule`
22:31:51.988 <unknown source>: in function `exec_rules`
22:31:51.990 <unknown source>: in function `event`
22:31:54.370 BRY: Exception> 'key_error' - EAST
22:31:54.372 stack traceback:
22:31:54.374 <native>: in native function
22:31:54.375 <unknown source>: in function `rule_tic`
22:31:54.378 <unknown source>: in function `try_rule`
22:31:54.390 <unknown source>: in function `exec_rules`
22:31:54.392 <unknown source>: in function `event`
22:31:56.771 BRY: Exception> 'key_error' - EAST
22:31:56.773 stack traceback:
22:31:56.775 <native>: in native function
22:31:56.776 <unknown source>: in function `rule_tic`
22:31:56.779 <unknown source>: in function `try_rule`
22:31:56.791 <unknown source>: in function `exec_rules`
22:31:56.793 <unknown source>: in function `event`
22:31:59.171 BRY: Exception> 'key_error' - EAST
22:31:59.173 stack traceback:
22:31:59.175 <native>: in native function
22:31:59.176 <unknown source>: in function `rule_tic`
22:31:59.179 <unknown source>: in function `try_rule`
22:31:59.191 <unknown source>: in function `exec_rules`
22:31:59.193 <unknown source>: in function `event`
22:32:01.586 BRY: Exception> 'key_error' - EAST
22:32:01.588 stack traceback:
22:32:01.590 <native>: in native function
22:32:01.592 <unknown source>: in function `rule_tic`
22:32:01.594 <unknown source>: in function `try_rule`
22:32:01.607 <unknown source>: in function `exec_rules`
22:32:01.609 <unknown source>: in function `event`
22:32:03.974 BRY: Exception> 'key_error' - EAST
22:32:03.976 stack traceback:
22:32:03.978 <native>: in native function
22:32:03.979 <unknown source>: in function `rule_tic`
22:32:03.982 <unknown source>: in function `try_rule`
22:32:03.994 <unknown source>: in function `exec_rules`
22:32:03.996 <unknown source>: in function `event`
22:32:06.375 BRY: Exception> 'key_error' - EAST
22:32:06.377 stack traceback:
22:32:06.379 <native>: in native function
22:32:06.380 <unknown source>: in function `rule_tic`
22:32:06.383 <unknown source>: in function `try_rule`
22:32:06.395 <unknown source>: in function `exec_rules`
22:32:06.397 <unknown source>: in function `event`
22:32:07.922 CMD: energyconfig standard
22:32:07.926 TIC: 'standard' mode
22:32:07.927 TIC: RX on GPIO8, baudrate 9600
22:32:07.932 RSL: RESULT = {"EnergyConfig":"Done"}
22:32:08.965 BRY: Exception> 'key_error' - EAST
22:32:08.968 stack traceback:
22:32:08.969 <native>: in native function
22:32:08.971 <unknown source>: in function `rule_tic`
22:32:08.973 <unknown source>: in function `try_rule`
22:32:08.985 <unknown source>: in function `exec_rules`
22:32:08.987 <unknown source>: in function `event`
22:32:11.365 BRY: Exception> 'key_error' - EAST
22:32:11.367 stack traceback:
22:32:11.368 <native>: in native function
22:32:11.370 <unknown source>: in function `rule_tic`
22:32:11.372 <unknown source>: in function `try_rule`
22:32:11.385 <unknown source>: in function `exec_rules`
22:32:11.387 <unknown source>: in function `event`
22:32:13.768 BRY: Exception> 'key_error' - EAIT
22:32:13.770 stack traceback:
22:32:13.772 <native>: in native function
22:32:13.774 <unknown source>: in function `rule_tic`
22:32:13.776 <unknown source>: in function `try_rule`
22:32:13.788 <unknown source>: in function `exec_rules`
22:32:13.790 <unknown source>: in function `event`
edit: orthographe / politesse / more logs
Bonjour,
Juste pour partager la mise à jour du script Berry et le rendre compatible avec l'offre Tempo (en mode standard).
C'est disponible sur le github ci-dessus
A toute fin utile, voici mon aide mémoire quant à l'usage du Denky avec EmonCMS et un onduleur Huawei.
https://github.com/sosandroid/Monitoring_Energie
Merci @Charles pour toute la partie Denky / Teleinfo / Tasmota
@Charles Merci. Je n'avais pas encore trouvé cela
Cela fonctionne tout de suite mieux
Bonjour à tous,
Depuis que j'ai des panneaux solaires, je souhaite monitorer l'énergie entrante et sortante via le Linky. Le but est d'envoyer les infos vers une instance EmonCMS et générer les graphes SolarPV
J'ai donc acheté un Denky D4. Une mauvaise config plus tard, il ne répondait plus, plus visible sur le réseau. j'ai reflashé en suivant les instructions et les "unofficial-builds".
Depuis je fais tourner une version 13.1.0.2(teleinfo). Template Denky v1.1 appliqué.
Par contre aucune info ne remonte. Les données ne semblent pas présentes.
Dans la console, rien n'indique que le décodage des trames se fasse :
00:00:00.003 HDW: ESP32-PICO-V3-02 (PSRAM)
00:00:00.041 UFS: FlashFS mounted with 4396 kB free
00:00:00.062 CFG: Loaded from File, Count 38
00:00:00.071 QPC: Count 1
00:00:00.078 I2C: Bus1 using GPIO22(SCL) and GPIO21(SDA)
00:00:00.152 BRY: Berry initialized, RAM used=3932 bytes
00:00:00.215 CFG: Energy loaded from file
00:00:00.216 NRG: Init driver 15
00:00:00.226 Project tasmota - Tasmota Version 13.1.0.2(teleinfo)-2_0_12(2023-09-10T12:07:40)
00:00:00.227 TIC: RX on GPIO8, baudrate 1200
00:00:00.898 WIF: Connecting to AP1 LaPetiteMaisonSurLaColline Channel 10 BSSId 04:D9:F5:ED:8A:D8 in mode 11n as tasmota-F365C0-1472...
00:00:03.666 WIF: Connected
00:00:03.922 HTP: Web server active on tasmota-F365C0-1472 with IP address 192.168.1.131
00:00:06.986 QPC: Reset
00:00:08.141 RSL: INFO1 = {"Info1":{"Module":"Denky D4 (v1.1)","Version":"13.1.0.2(teleinfo)","FallbackTopic":"cmnd/DVES_F365C0_fb/","GroupTopic":"cmnd/tasmotas/"}}
00:00:08.158 RSL: INFO2 = {"Info2":{"WebServerMode":"Admin","Hostname":"tasmota-F365C0-1472","IPAddress":"192.168.1.131","IP6Global":"","IP6Local":"fe80::4e75:25ff:fef3:65c0"}}
00:00:08.171 RSL: INFO3 = {"Info3":{"RestartReason":"Software reset CPU","BootCount":5}}
00:00:08.173 RSL: RESULT = {"POWER":"OFF"}
00:00:08.185 RSL: POWER = OFF
00:00:11.919 RSL: STATE = {"Time":"1970-01-01T00:00:11","Uptime":"0T00:00:13","UptimeSec":13,"Heap":171,"SleepMode":"Dynamic","Sleep":50,"LoadAvg":70,"MqttCount":0,"Berry":{"HeapUsed":3,"Objects":39},"POWER":"OFF","Dimmer":15,"Color":"082706","HSBColor":"118,83,15","Channel":[3,15,2],"Scheme":0,"Width":1,"Fade":"OFF","Speed":1,"LedTable":"ON","Wifi":{"AP":1,"SSId":"LaPetiteMaisonSurLaColline","BSSId":"04:D9:F5:ED:8A:D8","Channel":10,"Mode":"11n","RSSI":100,"Signal":-11,"LinkCount":1,"Downtime":"0T00:00:04"}}
00:00:11.969 RSL: SENSOR = {"Time":"1970-01-01T00:00:11","ENERGY":{"TotalStartTime":"2023-09-10T21:43:27","Total":0.000,"Yesterday":0.000,"Today":0.000,"Period":0,"Power":0,"Current":0.000},"TIC":{}}
Mes questions :
D'un point de vue technique :
Merci