D0 Zähler SML auslesen mit Tasmota

  • Probiere es doch erst einmal mit dem internen pullup

    Ich brauche hier nochmal Hilfe. Wie genau schließe ich jetzt den Reedkontakt an?

    Der eine geht an GND der andere an GPIO14?

    Wenn ich einen 10KΩ Widerstand einbaue dann doch zwischen 3,3V und dem Kabel von GPIO14 zum Reed?

    Wenn nicht, dann kein Anschluß an 3,3V?

    Wie funktioniert das mit dem internen pullup, ist der am GPIO14?



    Update:

    Wenn ich teste mit Sensor53 d1 bekomme ich keine Ausgabe in der Konsole. Ich höre aber das der Schalter ausgelöst wird wenn ich mit dem Magneten darüber fahre.

    MQTT überträgt Daten zu iobroker, aber nichts vom Counter, nur infos von Tasmota zum Status des Moduls.

    Es scheint also nicht zu funktionieren. Was kann ich ändern?


    Die Empfindlichkeit des Sensors am Gaszähler, kann man das beeinflussen? Ich kriege ihn kaum so positioniert, dass er auslöst.

    Nur wenn ich ihn milimetergenau positioniere und dann fest anpresse.

    Wenn ich dann mit Tesa festklebe, nicht mehr.

  • pausentee

    Das Schaltbild erklärt doch alles. Die 10k anstatt der 4,7k ist auch völlig in Ordnung.

    Falls du keinen Widerstand nutzen möchtest, dann lässt du ihn weg und aktivierst den Pullup an dem GPIO.

    +2,14,c,1,50,Gas

    Die rote Zahl markiert denn Schalter für Pullup oder bei 0 eben enicht.


    Mit Sensor53 d1 kannst du keine Counter sondern nur SML Meter Debuggen.

    Das Zählen kannst du nur ganz normal in der GUI überprüfen.


    Ja, die Position ist etwas schwierig. Versuche auch den Kontakt umzudrehen. sozusagen jede Position/Seite mal ausprobieren. Dann mit etwas Schaumstoff und gutem Isolierband den Schaumstoff + Reedkontakt festkleben.

  • Gut das hab ich soweit verstanden glaube ich und es klappt jetzt auch einigermaßen. Die Impulse kommen jedoch nicht immer. Die Position habe ich schon gefunden glaube ich. Ich habe alle Seiten und Richtungen mehrfach durchprobiert.

    Es ist wirklich nur eine Position wo überhaupt was kommt. 1mm rechts nichts mehr und 1mm links auch nicht. Und eben nicht zuverlässig.


    Es gibt also keine Möglichkeit der Justage seitens Tasmota?


    Was hat es mit dem Entprellen auf sich. Das soll ja manchmal auch schwierig sein wenn der Zähler genau beim Übergang stehen bleibt.

    Wie oder wo kann ich den Entprellwert festlegen?


    Dann hätte ich noch eine Frage zum Datenormat. Was da im iobroker von MQTT ankommt sieht so aus:

    {"Time":"2021-05-07T21:48:08","Gas":{"Total_In":58.00},"STROM":{"Total_In":49852.3,"Power_curr":1116.0}}

    Also alles in einem String den ich erst mal auseinanderpflücken muss.

    Könnte man die Werte auch separiert erhalten? Wenn ja wie?


    Danke schonmal für die vielen Erklärungen!

  • Das entprellen ist beim Gaszähler weniger das Problem, falls er genau auf dem Impuls stehen bleibt, viel mehr kann die Zuleitung ein Problem sein. Es gibt viele unterschiedliche Faktoren die darin einspielen können, dass es zu Fehlzählungen kommt. Bei mir war es die Kellerbeleuchtung. Ein/Ausschalten der Lampe führte zu Zählungen.

    +2,14,c,1,50,Gas

    Die rote Zahl gibt die Entprellzeit in ms an. Mehr dazu findest du wie immer in Tasmota docs. https://tasmota.github.io/docs…face/#general-description


    In ioBroker solltest du den sonoff Adapter verwenden. Der dröselt dir das automatisch in einzelne Datenpunkte auf.

    Nicht vergessen, in den Adapter Einstellungen des Sonoffadapters die 3 Häkchen zu setzen.


    Hast du evtl. noch einen anderen Reedkontakt? Vielleicht ist der einfach nicht so gut?

  • Ja! So welche hab ich mir auch gekauft. Allerdings sind sie super empfindlich. Die Anschlussdrähte musst du vorsichtig zwei Zangen biegen. Bei dem leichtesten Druck auf den Glaszylinder bricht dieser. Kauf dir am besten 20stk. :D Ich spreche aus Erfahrung.

  • Hallo zusammen


    Ich lese meinen Logarex LK11BE mit einem Phototransistor und einem Wemos D1 mini aus. Auf dem Wemos ist die compilierte Tasmotaversion drauf, die das Modul für das Smart Meter Interface beinhaltet. Alles klappt erstaunlich gut. Der Zähler sendet das erweiterte Protokoll mit allen möglichen Werten: Verbrauch für 24H, 7d, 30d, 365d, Gesamt und den Momentanverbrauch

    Alle Werte werden im eingestellten Intervall per MQTT gesendet (Telemetrieperiode). Einzig der Momentanverbrauch (in Watt) wird ständig per MQTT gesendet, also im Sekundentakt.

    Auf Dauer ist mir das zu häufig, und ich frage mich ob und wo man das einstellen könnte?

    Am liebsten wäre mir eine Regel, dass der Momentanverbrauch nur dann per MQTT gesendet wird, wenn er sich vom letzten Wert um 10 unterscheidet. Das würde die Anzahl der MQTT Nachrichten auf ein vernünftiges Maß begrenzen.

    In der "Originalfirmware" habe ich das mal für eine strommessende, smarte Steckdose per RULE konfiguriert. Wie das in der Firmware mit Scriptfunktion funktionieren könnte....keine Ahnung.

    Kann mir da jemand helfen?


    Gruß

    Thomas

  • Bubbleman

    Schön zu hören, dass es gut funktioniert!


    Normalerweise werden die Werte nur zum Zeitpunkt der Teleperiode gesendet. In der Webconsole kannst du diese überprüfen indem du: "teleperiod" hineinschreibst. (ohne Anführungszeichen)

    Der kleinste Wert für die Teleperiod ist 10 Sekunden. Dementsprechend dürften deine Werte maximal alle 10s gesendet werden. Mit dem Befehl "teleperiod 300" wird jede 300s eine Nachricht versendet.

    Falls du allerdings in deinem Descriptor den letzten Wert (Anzahl Dezimalstellen) jeder Zeile mit 16 addiert hast, wird bei jeder Änderung eine MQTT Nachricht versendet.

    Beispielsweise:

    Sendet zu jeder Teleperiode

    Code
    1,77070100100700ff@1,Ges.Leistung,W,Power_curr,1 

    Sendet bei jeder Werteänderung:

    Code
    1,77070100100700ff@1,Ges.Leistung,W,Power_curr,17


    Vielleicht hilft dir diese Information schon weiter.

    Falls wirklich nur Wertveränderungen >10 gesendet werden sollen, muss etwas mehr gescriptet werden.

  • Hallo zusammen,

    mit den neusten EDL21 - Stromzählern gibt es mittlerweile ein Problem beim Auslesen über IR-Schnittstelle.

    Aus Sicherheits- und Datenschutzgründen wurden die Zähler mittlerweile vom Zählerhersteller so konfiguriert, dass

    die Anzeige des "Aktuellen Verbrauchs in Wh" nach ca. 1-2 Minuten wieder zurück in die normale Zählerstands-Anzeige geht.

    Hierdurch ist eine kontinuierliches Auslesen der aktuell Verbrauchswerte im Moment nicht mehr möglich, da dies aus Datenrechtlichen Gründen von Kunden über den PIN-Code alle 2 Minuten erneut freigeschaltet werden muss.

    Im Zuge der Inbetriebnahme eine PV-Anlage wurden von meinem Energielieferant beiden Stromzähler (Haushalts- und Wärmestromzähler) getauscht. Hatte vorher auch schon die neusten EDL21 - Zähler, bei denen man noch die Anzeige der Verbrauchswerte durch einmalige Eingabe des PIN-Codes dauerhaft freischalten konnte.

    Hab meinen Stromlieferant diesbezüglich eingeschaltet um zu versuchen, wieder irgendwie an meine alten Zähler zu kommen oder auf den Hersteller der Stromzähler einzuwirken.

    Laut meinem Stromlieferant gibt es wohl schon mehrere Kunden, die dies moniert haben.


    Würde mich interessieren, ob jemand von Euch auch schon auf dieses Problem gestoßen ist, bzw, etwas zu diesem Thema sagen kann.


  • Hallo in die Runde,

    evtl. suche ich nach dem Falschen, konnte aber zumindest nicht fündig werden im www


    ich habe einen neuen EMH Zähler wegen PV bekommen

    ehz-kw8e2a5l0eq2p


    Auslesen mittels ESP klappt wie beim Ikra zuvor, mich würde interessieren ob man den aktuellen Einspeisewert (müsste ja 2.0.8) sein ähnlich wie für Gesamt Einspeisung auch anzeigen lassen kann

    konnte wie gesagt nichts dazu finden, auch nicht beim durchstöbern der Tasmota Smart Meter Info im Github



    Skript:


    Code
    >D
    >B
    =>sensor53 r
    >M 1
    +1,3,s,0,9600,
    1,77070100010800ff@1000,Gesamtverbrauch,KWh,Total_in,2
    1,77070100020800ff@1000,Gesamteinspeisung,KWh,Total_out,2
    1,77070100100700ff@1,Verbrauch,W,Power_curr,0
    #


    also die letzte Zeile ist ja 1.0.8

    gibt es die auch für 2.0.8 ??


    die Obis Kennzahlen helfen MIR nicht weiter (blind?) :D



    mfg

    STefan

  • StefanH


    Ja, ist bei unserem genauso.

    Nach der Code Eingabe, lässt sich durch einfaches "Blinken" an der Code - Eingabeschnittstelle das Display durchschalten.

    Ich schalte eine LED über einen Transistor via GPIO vom ESP8266.

    Im Skript habe ich ein Stück code, dass die LED alle 10 Sek. Blinken lässt. So bleibt er in dem "Erweiterten"- Modus und geht nicht wieder in den Datenschutzmodus.


    Kannst ja mal ausprobieren ob das bei dir auch klappt.


  • Hallo Stefan. Dein Skript ist korrekt. Bei mir habe ich auch folgende Zeile:


    1,77070100020800ff@1000,GesEinspeisungTarifL,KWh,Total_out_TL,4

  • Moin,

    Habe jetzt seit etwa zwei Monaten auch nen ESP am Zähler hängen, der über mqtt die Daten an den Raspi schickt. Lief bisher problemlos. Seit einigen Tagen deaktiviert sich aber immer ohne weiteres zutun das Skript. Das merke ich nur daran, dass ich keine Daten mehr empfange.

    Ich kann das Skript dann natürlich wieder aktivieren und alles läuft wieder wie gehabt. Aber nur für einige Stunden. Habt ihr eine Idee, was sein Problem sein könnte und was ich machen kann, dass der nicht so durchdreht? So gehen mir die ganzen Verbrauchswerte immer flöten.

    Danke euch.