D0 Zähler SML auslesen mit Tasmota

  • gemu2015


    Danke das du hier reinschaust. Ich bin wirklich am verzweifeln


    Hier der Schaltplan (derjenige bei dem ich es gekauft habe sagte "Der Schaltplan ist genau wie auf Volkszähler . Ausser das die 2 Schmitt Trigger in einem Gehäuse sind."
    Ich verstehe davon leider nichts.


    Ich habe schon mit sunburstc wie folgts getestet 3 > 12 und 1 > 14 stecken.

    Leider kam da gar kein signal an.


    Mein Zähler (Landis + gyr E350) muss vorher angesprochen werden bevor er daten rausrückt.

    Ich bin gerne bereit mir einen neuen Lese/schreibkopf zu kaufen.Bräuchte nur einen tipp welchen.

  • raffnix


    Der Schaltplan ist OK, sollte eigentlich funktionieren. Du brauchst damit natürlich keinen Pullup.


    Es sollte aber unbedingt auch an 12 und 14 gehen. in post #1468 kommen doch Daten an. Da sieht es so aus als ob der Kopf nicht genau positioniert ist. Kann auch sein dass dein Zähler nur eine ganz schwache Leuchtdiode hat, Eventuell ist der Lesekopf auch nicht ganz in Ordnung. Wie gesagt probiers doch einfach mal mit einem simplen Fototransistor und einem Pullup. Gibt von meierchen006 und sunburstc Tutorien mit Vorschlägen dafür.

  • gemu2015


    habe es vorhin nochmal probiert aber da kommt nichts an. Könntest du nochmal über den code schauen?



    Das mit der Positionierung kann ausschliessen. Ich habe die platine aus dem gehäuse genommen und direkt auf den Zähler geklebt. Auch sitzt der kasten im keller wo alles absolut dunkel ist


    meierchen006 / sunburstc

    Im Wiki habe ich eure Anleitungen nicht gefunden. Könntet ihr mir helfen damit ich die richtigen sachen bestellen kann? Ich würde es auch fertig abkaufen, meine Lötkünste sind nicht die besten und meine Augen machen auch nicht mehr so mit :(

  • gemu2015

    Ja meine Vermutung war auch bereits, dass die Diode des Zählers schwach sein könnte, daher die bessere Positionierung.

    Allerdings scheint das nicht zu helfen.

    Könntest du etwas dazu sagen, ob der Baudratenwechsel auch mit der Softserial funktioniert? Weil die hat er ja nötig wenn er GPIO12&14 nutzt.

    Sein Skript bzw. Zähler verwendet ja den Baudratenwechsel über SML CMD.



    raffnix

    wie Gemu schon sagte, verwenden die meisten Leute einen einfachen Fototransistor ohne Schmitttrigger. Allerdings ist normalerweise eine Lösung mit Trigger die bessere, Diese gibt definiertere Zustände weiter.

    Du kannst dir das in etwa so vorstellen:

    Der Trigger hat einen bestimmten Schwellwert. Wird dieser Über/Unterschritten gibt der Trigger am Ausgang ein definiertes HIGH oder LOW an.

    Es wird sozusagen aus einer "Sinuswelle am Eingang" ein Rechteck am Ausgang erzeugt.

    Wenn also der Trigger an seinem Eingang von dem Fototransistor nur 2,3V bekommt statt ein klares HIGH (3,3V) gibt der Trigger dennoch ein HIGH am Ausgang raus.


    Mein eigener Lesekopf basiert auf dem des Volkszählers. Der Unterschied ist lediglich dass ich eine Osram Diode und Fototransistor verwende. Dies ist allerdings der Tatsache geschuldet, dass es die originalen Dioden nicht mehr gab. Abgesehen davon verwende ich eine rechteckige Bauform.

    Allerdings habe ich vorher Ewigkeiten mit einem ganz normalen Fototransistor + Pullup Widerstand gearbeitet.

    In deinem Fall würdest du auch noch eine IR Diode benötigen.


    Ich bin kein Fan davon dir hier zu sagen, dass du nun einen neuen/anderen Lesekopf kaufen sollst. Ich glaube, dass dies die letzte Option sein sollte.


    Meines Erachtens nach liegt es an der Verbindung via Gpio3 und 1 und dem Pullup der dort existiert. Dennoch sollte das eigentlich aufgrund des Schmitttriggers kein Problem sein. Aber man weiß nie.

    Es gab bereits vor gut 30-50 Seiten eine lange Diskussion bzgl. dieses Problems. Es gibt unterschiedliche Versionen vom Wemos d1 mini. Günstige China Importe die als Version 2.1 deklariert sind und das original von Wemos Lolin v3.

    Der Unterschied ist daran zu erkennen, dass die "China" Versionen einfach ein ESP12F / E Modul auf einer blauen Platine gelötet haben. Das Anschlussschema welches du gepostet hast, stellt so ein Model dar. Das originale sieht so aus : https://www.wemos.cc/en/latest/d1/d1_mini.html

    Wenn ich mich richtig erinnere, funktionierte die China - Version, in diesem Falle besser :D! Allerdings haben diese öfter Probleme mit der Stromversorgung. Viele verwenden einen LDO der zu wenig Strom erzeugt. Das äußert sich meistens durch neustarts.

    Bzgl. Stromversorgung. Bezweifle das es daran liegt, aber du könntest noch einmal ein anderes USB Netzteil probieren.


    Bzgl. Tutorial:

    Meins

    Allerdings ist meins nicht in allen Kategorien aktuell. meierchen006 's findest du in der Linksammlung des HowTos. Allerdings weiß ich nicht wie aktuell seins ist.


    Ich muss meins tatsächlich mal wieder auf den neusten Stand bringen.


    Also:

    Erstmal nun abwarten was GeMu bzgl. Softserial sagt.

    Evtl. schon mal mit einem anderen Netzteil oder falls ein weiterer Wemos vorhanden ist, dann damit testen.


    Ansonsten kann ich nur sagen, was ich auch in meinem Howto geschrieben hab. Es gibt keine 0 8 15 Lösung. Bei den meisten ist es viel rum probieren.

  • Hallo,

    Raffnix hat den Lesekopf von mir.

    Da ich auch an der Lösung interessiert bin, klinke ich mich einfach mal mit hier ein. hoffe das ist ok.


    Die selbe Platine haben mehrere Leute von mir die auch diesen Landis Zähler haben.

    Bis jetzt hat es wohl immer funktioniert.


    Um einen defekt auszuschliessen hat er heute von mir noch 2 bestückte Platinen bekommen.

    Mit unterschiedlichen Fototransistoren zum testen drauf.

    Das hat aber wohl auch keinen Erfolg gebracht.


    unten seht ihr éin Bild von der Platine. Den Schmitt trigger zum testen zu überbrücken wäre möglich.

    Wobei ich nicht unbedingt denke das es daran liegt.


    Ich würde vorschlagen erstmal mit hterm und ftdi oder Arduino als ftdi weiter zu testen um zu sehen ob man dem Zähler etwas raus locken kann.

    Dann wäre es natürlich auch mit 5v möglich.


    Ich werde ihm auch nochmal einen USB Lesekopf zuschicken für weitere experimente.





  • Hichi Hallo! =)


    Ja, wir gingen im Allgemeinen auch nicht von dem Lesekopf aus. Das hatte ich auch bereits in Privatnachrichten mit raffnix kommuniziert. Zum aktuellen Zeitpunkt wollen wir überprüfen, ob es evtl. durch zu wenig Strom zu diesen Fehlern kommt. Es ist sehr seltsam, dass meist die ersten Zeichen fehlerhaft sind der Rest der Nachricht meist aber in Ordnung ist.

  • Hi,


    Schön dich hier zu sehen :)

    Wie mit euch beiden schon privat besprochen. Morgen kommen neue wemos d1 minis an.


    1. versuch einfach mit dem model von einem anderen hersteller normal flashen und sehen was passiert.


    2. Wie von sunburstc vorgeschlagen das problem von der stromversorgung ausschliessen. Dazu wird tx/rx an den wemos mit tasmota angeschlossen. Und 3,3v und gnd an einen „leeren“ wemos angeschlossen. Beide gnd müssen in diesem szenario zusammen miteinander verbunden sein.

  • Hallo sunburstc  Hichi

    wie ein Zufall habe auch vor ein paar Tagen einen Lesekopf bei Hichi bestellt.


    Ist auch schon lange angekommen aber noch nicht getestet, liegt noch auf meinem Schreibtisch.


    Ich werde versuchen am Wochenende, wenn nicht WE dann nächste Woche, mal ein Kabel anlöten und dann an meinem Testzähler esp anhängen und sehen was passiert, berichte dann.


    raffnix auch mein Tutorial dürfte veraltet sein, aber die Grundsätzlichen angaben darin sollten noch stimmen.

    Mal sehen ob ich Zeit finde um es zu erneuern, was jetzt aber kein versprechen sein soll.


    Gruß

    meierchen006

  • So ich habe die tests gemacht leider haben sie keinen Unterschied gebracht.


    sunburstc  Hichi


    Test 1:

    "wemos" von einem anderen hersteller getestet. Kommen die Daten identisch an.


    Test 2:

    Rx/Tx über den Wemos laufen lassen. Stromversorgung 3,3v kam von einem Raspberry pi 4. Beide hatten natürlich den gleichen GND...wollen ja nichts kaputt machen.

    Selbe Daten erhalten kein unterschied zu vorher.


    Wenn ich euch etwas einfällt was man testen kann dann gerne...hättest niemlas gedacht das es so schwer wird.


    meierchen006

    Veraltet mag sein, aber beide tutorials geben doch schon einiges an basics mit ;)

  • Es kommen aber nur Daten an nachdem du Initialisierungs Sequenz geschickt hast?


    Oder kommen ständig irgendwelche Daten an?


    Benutze Mal einen ftdi oder einen leeren wemos als ftdi. Dann sendest du einfach ein "hallo" gegen einen Spiegel und schaust ob es wieder ankommt. So wie in dem Video das ich dir geschickt habe. Mit hterm zb.


    Teste doch Mal kurz mit 5v. Der wemos geht davon nicht direkt kaputt.


    LG

    Hichi

  • Hichi


    Es kommen aber nur Daten an nachdem du Initialisierungs Sequenz geschickt hast? -> Ja


    ich habe leider keinen ftdi. Soweit mir bekannt kann der wemos nicht als ftdi verwendet werden denn sobald der mit dem USB am PC hängt schaltet er die Hardware Tx/Rx ab.

    sunburstc  meierchen006 Stimmt das mit dem Rx/Tx?



    Ich habe das ganze eben auch an 5v getestet und erhalte das gleiche ergebnis.

  • ich habe leider keinen ftdi. Soweit mir bekannt kann der wemos nicht als ftdi verwendet werden denn sobald der mit dem USB am PC hängt schaltet er die Hardware Tx/Rx ab.

    Du kannst GND mit RST also Reset verbinden. Dauerhaft. Damit schaltest du quasi den Wemos so lange aus. Wenn du dann rxtx mit dem Lesekopf verbindest, hast du eine direkte Verbindung zwischen Lesekopf und PC via USB.

    Dann kannst du also mit einem Terminal Programm. z.b. Coolterm (mac) oder arduino oder Putty (Win) direkt auf den Lesekopf zugreifen.

    Hier kannst du dann dementsprechende Befehle eingeben.

    In der Arduino Console musst du vermutlich noch aus dem DropDown Menü (neben dem Knopf rechts unten in dem Fenster) LF&CR auswählen. Nicht vergessen die korrekte Baudrate vorher zu wählen.


    Ein sehr seltsamer Fehler. Bin auf die Ergebnisse gespannt.

  • sunburstc  gemu2015  meierchen006  Hichi


    DING, DING, DING, DING, DING, DING, DING


    habe das ganze mit der neuen Datei kompiliert und siehe da es sieht alles sauber (zumindest für mich) Vielleicht könnte das jemand von euch noch mal bestätigen.




  • sunburstc

    Das war wenigstens eine Herausforderung und nicht so so 0815 :D


    Falls es mal wieder irgendjemand brauchen sollte. Hier ein Skript für den Landis + Gyr E350.


  • Hallo zusammen,


    ich bin durch Zufall über das Thema gestolpert nachdem ich letztes Jahr angefangen habe mit dem Volkszähler und aktuell über openHAB2 unseren EasyMeter Q3M mit einem Weidmann USB IR-Lesekopf auszulesen. Dafür hängt aktuell noch recht kompliziert der Raspberry Pi dran, soll aber von einem Wemos D1 Mini und Tasmota abgelöst werden.


    Hier einmal mein Problem vor meiner Beschreibung des Aufbaus:

    Ich bekomme keine Daten im Tasmota angezeigt, in der Konsole kann ich aber sehen dass Daten im ASCII Format von der Linse empfangen werden.


    Aufbau:

    Ich habe mich die letzten Tage durch den Thread und die Anleitungen gelesen, bin auch schon recht weit gekommen:

    • Tasmota erfolgreich via Gitpod kompiliert auf den Wemos D1 Mini geflashed (vor ca. 2 Wochen, musste bis jetzt auf den Lesekopf TEKT5400S warten)
    • Skript erstellt; da kam mir das Know-How von unserem Zähler durch das Volkszähler und openHAB Projekt entgegen
    • Lesekopf TEKT5400S verbunden und am Stromzähler (die vordere „Info“ Linse die jede 1 oder 2 Sekunden ohne Aufforderung sendet)

    Hier einmal in Bildern:


    Tasmota Hauptmenü:


    Mein OBIS Skript, aktuell mit d1 Paramter zum debuggen in der Konsole:


    Daten im ASCII Format werden in 1-2 Sekundenabständen empfangen


    Aufbau ohne Pull-up oder Widerstände:


    Edit: Hier einmal das Skript in Textform:


    Könnt ihr mir bei der Fehlersuche helfen? Übersehe ich etwas? Einen Hardware-Defekt kann ich ja vorerst ausschließen da ja grundsätzlich Daten empfangen werden.


    Danke euch für eure Unterstützung viele Grüße

    Markus


    PS: #1500 Beitrag in dem Thread :)