Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. [gelöst]Tasmota auf WEMOS Mini mit Reedkontakt - Probleme?

    NEWS

    • [erledigt] 15. 05. Wartungsarbeiten am ioBroker Forum

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    [gelöst]Tasmota auf WEMOS Mini mit Reedkontakt - Probleme?

    This topic has been deleted. Only users with topic management privileges can see it.
    • oberfragger
      oberfragger @Lenny.CB last edited by

      @lenny-cb said in [gelöst]Tasmota auf WEMOS Mini mit Reedkontakt - Probleme?:

      @Sandmanyz @quorle Den Pullup, so wie @chaot geschrieben hat, sollte/musst dran.
      Debounce ist m.E., grad bei so Geschichten wo Prellen eine Rolle spielt, schon wichtig.

      Mein Gas-Zähler-Projekt hatte auch so angefangen. Ich hatte, damit auch über Tage hinweg die Nachkommastellen stimmten, folgendes in der Konsole eingestellt.

      CounterDebounce 1000
      CounterDebounceLow 500
      CounterDebounceHigh 500
      

      Wobei CounterDebounceHigh/CounterDebounceLow von der Hardware-Beschaltung abhängig ist. Beides einzutragen ist nicht kontraproduktiv.

      Ich teste grad einen anderen Ansatz, bei dem man die Sachen die man so sehen will, schon auf den Wemos berechnen kann.
      Schaut grad aktuell so aus:
      a8bfdbab-4966-4450-b860-1021f166fa88-image.png
      Die Impluse kommen in der Testphase noch von einem Taster. (Also nicht denken "man hat der nen Gasverbrauch!" 😁

      @Lenny-CB : Könntest du uns/ mir bitte dein Script zur Verfügung stellen. Das wäre wirklich sehr nett.

      Lenny.CB Ralf Schrade 2 Replies Last reply Reply Quote 0
      • Lenny.CB
        Lenny.CB Most Active @oberfragger last edited by

        @oberfragger ich hatte da zwischenzeitlich wieder dran "rumgebastelt" Die Kostenberechnung ist erst einmal wieder raus, dafür kam der zweite Gas-Zähler dazu. Das Script ist auch in der Länge begrenzt wenn man die Standard-Konfigurationen nutzt.

        Hier mein Script:

        >D
        p:m1=0
        p:m2=0
        s1=0
        s2=0
        g1=0
        g2=0
        h1=0
        h2=0
        hkw1=0
        hkw2=0
        gkw1=0
        gkw2=0
        skw1=0
        skw2=0
        
        hr=0
        mi=0
        zu=0.9617
        br=11.233
        farbe1="#008000"
        farbe2="#f00000"
        farbe3="#00fdfd"
        
        >B
        ->sensor53 r
        tper=10
        
        >S
        h1=s1-m1
        h2=s2-m2
        hkw1=h1*br*zu
        hkw2=h2*br*zu
        gkw1=g1*br*zu
        gkw2=g2*br*zu
        skw1=s1*br*zu
        skw2=s2*br*zu
        
        hr=hours
        if chg[hr]>0
         and hr==0
          then
           m1=s1
           m2=s2
           g1=h1
           g2=h2
           svars
        endif
        
        if upsecs%tper==0{
        =>Publish tele/%topic%/SENSOR {"Haus1":{"Verbrauch heute m³":%2h1%}}
        =>Publish tele/%topic%/SENSOR {"Haus1":{"Verbrauch gestern m³":%2g1%}}
        =>Publish tele/%topic%/SENSOR {"Haus1":{"Verbrauch heute kWh":%2hkw1%}}
        =>Publish tele/%topic%/SENSOR {"Haus1":{"Verbrauch gestern kWh":%2gkw1%}}
        =>Publish tele/%topic%/SENSOR {"Haus1":{"Verbrauch gesamt kWh":%2skw1%}}
        
        =>Publish tele/%topic%/SENSOR {"Haus2":{"Verbrauch heute m³":%2h2%}}
        =>Publish tele/%topic%/SENSOR {"Haus2":{"Verbrauch gestern m³":%2g2%}}
        =>Publish tele/%topic%/SENSOR {"Haus2":{"Verbrauch heute kWh":%2hkw2%}}
        =>Publish tele/%topic%/SENSOR {"Haus2":{"Verbrauch gestern kWh":%2gkw2%}}
        =>Publish tele/%topic%/SENSOR {"Haus2":{"Verbrauch gesamt kWh":%2skw2%}}
        }
        
        >T
        s1=GAS1#Stand_Haus1
        s2=GAS2#Stand_Haus2
        
        >W
        Zustandszahl: {m} %zu%
        Brennwert: {m} %br% kWh/m³
        =========================
        Haus 1:
        Verbrauch heute: {m} %2h1% m³ | %2hkw1% kWh
        Verbrauch gestern: {m} %2g1% m³ | %2gkw1% kWh
        Verbrauch gesamt: {m} %2s1% m³ | %2skw1% kWh
        =========================
        Haus 2:
        Verbrauch heute: {m} %2h2% m³ | %2hkw2% kWh
        Verbrauch gestern: {m} %2g2% m³ | %2gkw2% kWh
        Verbrauch gesamt: {m} %2s2% m³ | %2skw2% kWh
        =========================
        
        >M 2
        +1,14,c,1,-25,GAS1
        +2,4,c,1,-25,GAS2
        1,1-0:1.8.0*255(@100,Zählerstand Haus1,m³,Stand_Haus1,18
        2,1-0:1.8.0*255(@100,Zählerstand Haus2,m³,Stand_Haus2,18
        2,=h=========================
        #
        

        Der Zauber geht aber nur wenn du dir eine Tasmota-Build kompilierst, indem Scripting aktiviert ist.

        oberfragger M F 3 Replies Last reply Reply Quote 1
        • oberfragger
          oberfragger @Lenny.CB last edited by

          @lenny-cb
          Danke!

          Ja mittlerweile bin ich "Profi" beim Tasmota kompilieren. Hab einiges dazugelernt, da ich mir mal mehrere AM2320 I2C Sensoren gekauft habe. Deshalb muss ich immer die Treiber einkompilieren und kann nix fertiges nehmen. Würde ich nicht mehr tun. BMEs werden viiiel besser unterstützt.

          Aktuell BME680 in der Lüftungsanlage und dann noch nebenbei den Reedkontakt auslesen 😉 Deshalb die Bitte nach dem Script.

          1 Reply Last reply Reply Quote 0
          • M
            milanissimo @Lenny.CB last edited by

            @lenny-cb

            hey vielen Dank für das Skript. Funktioniert soweit alles wie es soll (Teste aktuell noch mit ein Magnet)

            Wie ich das lese hat du den Debounce hier mit konfiguriert richtig?

            +1,14,c,1,-25,GAS1

            muss man jetzt extra nochmal in der Konsole eingeben?

            CounterDebounce 1000
            CounterDebounceLow 500
            CounterDebounceHigh 500

            Und dann suche ich noch eine Möglichkeit wo man den Anfangszählerstand eintragen kann, sodass quasi wie beim Strom man den aktuellen Zählerstand sieht (auch zur Kontrolle, das der Reedkontakt richtig zählt).

            Vielen Dank schonmal für den Skript!

            Lenny.CB 1 Reply Last reply Reply Quote 0
            • Lenny.CB
              Lenny.CB Most Active @milanissimo last edited by Lenny.CB

              muss man jetzt extra nochmal in der Konsole eingeben?

              CounterDebounce 1000
              CounterDebounceLow 500
              CounterDebounceHigh 500

              jupp, habe ich so gemacht.
              Wobei CounterDebounceHigh/CounterDebounceLow von der Hardware-Beschaltung abhängig ist. Beides einzutragen ist nicht kontraproduktiv.

              Und dann suche ich noch eine Möglichkeit wo man den Anfangszählerstand eintragen kann, sodass quasi wie beim Strom man den aktuellen Zählerstand sieht (auch zur Kontrolle, das der Reedkontakt richtig zählt).

              gib mal in die Konsole ein:

              Sensor53 c1 1234567
              

              bedeutet, dass der erste Counter auf diesen Wert gesetzt wird (muss man aber nach jedem Neustart machen)
              Beispiel: 1234567 = 12345,67

              M P 2 Replies Last reply Reply Quote 0
              • M
                milanissimo @Lenny.CB last edited by

                @lenny-cb

                Muss nochmal blöd fragen, in der Konsole vom tasmota oder? Kommt bei mir immer unknown Command…:/

                Lenny.CB 1 Reply Last reply Reply Quote 0
                • Lenny.CB
                  Lenny.CB Most Active @milanissimo last edited by

                  Muss nochmal blöd fragen, in der Konsole vom tasmota oder?

                  jupp.

                  Kommt bei mir immer unknown Command…:/

                  das ist komisch. Das Script läuft aber?

                  M 1 Reply Last reply Reply Quote 0
                  • M
                    milanissimo @Lenny.CB last edited by

                    @lenny-cb

                    Jetzt gehts, irgendwie hat das mit den Handy Probleme gemacht. Mit Laptop ging es.

                    Als Pullup Widerstand habe ich jetzt ein 10k zwischen gpio und vcc (5v) ist das so korrekt?

                    Den ReedKontakt bring ich so an das er unter den letzten Zahlenrad am Gaszähler Sitz oder?

                    Lenny.CB T 2 Replies Last reply Reply Quote 0
                    • Lenny.CB
                      Lenny.CB Most Active @milanissimo last edited by

                      Als Pullup Widerstand habe ich jetzt ein 10k zwischen gpio und vcc (5v) ist das so korrekt?

                      ca5e9e15-b62a-4642-8980-219d7a6a2211-image.png

                      Den ReedKontakt bring ich so an das er unter den letzten Zahlenrad am Gaszähler Sitz oder?

                      habs nicht mehr genau im Kopf, aber der Magnet sitzt bei den meisten Gas-Zähler in der 2. Nachkommastelle

                      M 1 Reply Last reply Reply Quote 0
                      • M
                        milanissimo @Lenny.CB last edited by

                        @lenny-cb

                        Hat alles prima geklappt, ich danke dir 1000 mal.

                        Ich habe weiter oben gesehen du hattest auch mal den Verbrauch pro Stunde. Ich würde gern den Verbrauch pro Minute in meine InfluxDB schreiben und diesen per Graph in Grafana visualisieren.

                        ;Minutenverbrauch
                        sec=seconds
                        if chg[sec]>0
                        and sec==0
                        then
                        smsec=s1
                        svars
                        endif
                        if upsecs%tper==0
                        then
                        ssms=s1-smsec
                        endif
                        

                        Leider wird wird mir immer nur der aktuelle Zählerstand angezeigt bei "ssms". Hast du ne Idee was ich falsch mache?

                        Lenny.CB 1 Reply Last reply Reply Quote 0
                        • Lenny.CB
                          Lenny.CB Most Active @milanissimo last edited by

                          Leider wird wird mir immer nur der aktuelle Zählerstand angezeigt bei "ssms". Hast du ne Idee was ich falsch mache?

                          zeig mal das ganze Script.

                          M 1 Reply Last reply Reply Quote 0
                          • M
                            milanissimo @Lenny.CB last edited by

                            >D
                            p:m1=0
                            p:m2=0
                            s1=0
                            s2=0
                            g1=0
                            g2=0
                            h1=0
                            h2=0
                            hkw1=0
                            hkw2=0
                            gkw1=0
                            gkw2=0
                            skw1=0
                            skw2=0
                            sspr=0.095
                            ysgp=0.411
                            yspr=0
                            yapp=0
                            p:smsec=0
                            smseb=0
                            ssms=0
                            
                             
                            hr=0
                            mi=0
                            sec=0
                            zu=0.9290
                            br=11.237
                            farbe1="#008000"
                            farbe2="#f00000"
                            farbe3="#00fdfd"
                             
                            >B
                            ->sensor53 r
                            tper=10
                             
                            >S
                            h1=s1-m1
                            h2=s2-m2
                            hkw1=h1*br*zu
                            hkw2=h2*br*zu
                            gkw1=g1*br*zu
                            gkw2=g2*br*zu
                            skw1=s1*br*zu
                            skw2=s2*br*zu
                             
                            hr=hours
                            if chg[hr]>0
                             and hr==0
                              then
                               m1=s1
                               m2=s2
                               g1=h1
                               g2=h2
                               svars
                            endif
                            
                            ;Minutenverbrauch
                            sec=secs
                            if chg[sec]>0
                            and sec==0
                            then
                            smsec=s1
                            smseb=ssms
                            svars
                            endif
                            if upsecs%tper==0
                            then
                            ssms=s1-smsec
                            endif
                            
                            
                            ;Kosten
                            yspr=hkw1*sspr+ysgp
                            yapp= gkw1*sspr+ysgp
                            endif
                            
                             
                            if upsecs%tper==0{
                            =>Publish tele/%topic%/SENSOR {"Haus1":{"Verbrauch heute kWh":%2hkw1%}}
                            =>Publish tele/%topic%/SENSOR {"Haus1":{"Verbrauch gestern kWh":%2gkw1%}}
                            }
                             
                            >T
                            s1=GAS1#Stand_Haus1
                             
                            >W
                            Zustandszahl: {m} %zu%
                            Brennwert: {m} %br% kWh/m³
                            Kosten heute/ gestern: {m} %2yspr% €  | %2yapp% €
                            =========================
                            Haus 1:
                            Verbrauch Minute: {m} %2ssms% kWh
                            Verbrauch MinuteZusammen: {m} %2smseb% kWh
                            Verbrauch heute: {m} %2h1% m³ | %2hkw1% kWh
                            Verbrauch gestern: {m} %2g1% m³ | %2gkw1% kWh
                            Verbrauch gesamt: {m} %2s1% m³ | %2skw1% kWh
                            =========================
                             
                            >M 2
                            +1,0,c,1,-25,GAS1
                            1,1-0:1.8.0*255(@100,Zählerstand Haus1,m³,Stand_Haus1,18
                            2,=h=========================
                            #
                            
                            Lenny.CB M 2 Replies Last reply Reply Quote 0
                            • Lenny.CB
                              Lenny.CB Most Active @milanissimo last edited by

                              @milanissimo sagte in [gelöst]Tasmota auf WEMOS Mini mit Reedkontakt - Probleme?:

                              if upsecs%tper==0

                              warum rechnest du nochmal in dem Block?
                              Mache alles in dem Block darüber (Minutenverbrauch).

                              1 Reply Last reply Reply Quote 0
                              • Ralf Schrade
                                Ralf Schrade @oberfragger last edited by

                                @oberfragger
                                Könntest Du mir wohl das Script für deinen Zähler zur Vrefügung stellen, ich bastel da schon seit Tagen herum, bekomme es aber einfach nicht hin. Scripting Tasmota ist vorhanden, der Counter läuft, allerdings aktualisiert der
                                Verbrauchszählerstand nicht
                                Schon mal besten Dank

                                Ralf

                                M 1 Reply Last reply Reply Quote 0
                                • M
                                  Marty56 @Ralf Schrade last edited by

                                  Bei welchem Wert laufen die Counter eigentlich über?

                                  1 Reply Last reply Reply Quote 0
                                  • M
                                    Marty56 @Stratos Gkrekidis last edited by

                                    @stratos-gkrekidis
                                    Hallo,

                                    Ich habe dein Script übernommen. Es funktioniert, aber erzeugt bei meine Zähler relativ viele MQTT Botschaften, weil der S0 Bus sehr oft triggert.

                                    Ist es möglich, die MQTT Botschaften zu reduzieren und nur jeden 10 Impuls als Counterwert zu übertragen?

                                    M 1 Reply Last reply Reply Quote 0
                                    • M
                                      Marty56 @Marty56 last edited by Marty56

                                      @stratos-gkrekidis Du nimmst einen Switch, um damit einen Counter hochzuzählen.
                                      Ich habe versucht, direkt den Counter an den GPIO Pin zu konfigurieren und das führt dazu, dass der Counter mehr Pulse zählt als tatsächlich vorhanden sind.
                                      Es scheint, dass durch die Konfigurierung der Trigger verändert wird.

                                      Stimmt das? ich habe dazu nichts gefunden. Könntest Du mir da einen Tipp geben.

                                      M 1 Reply Last reply Reply Quote 0
                                      • D
                                        danzlrobert @Stratos Gkrekidis last edited by

                                        @stratos-gkrekidis said in [gelöst]Tasmota auf WEMOS Mini mit Reedkontakt - Probleme?:

                                        @Sandmanyz

                                        Mein Sensor ist mit dem D1-Pin auf meiner WEMOS verbunden und als Switch1 konfiguriert. dann wird Counter1 auf einem anderen, nicht verwendeten Pin ausgewählt [in meinem Fall: D5] - es ist nur ein Platzhalter für Zahlen.

                                        Dann habe ich in der Konsole eingegeben:

                                        switchmode1 1
                                        counter1 <Geben Sie hier den Anfangszählerwert ein>
                                        rule1 on switch1#state=0 do Counter1 +1 endon
                                        rule1 5
                                        rule1 1
                                        

                                        Ein reboot und fertig.

                                        im iobroker findest du noch ein POWER und ein counter state

                                        Grüße aus Griechenland.

                                        Hallo,
                                        das ganze klingt sehr einfach, versteh nicht ganz wie du das ganze verkabelst und einstellst. Hättest du bitte eine Anschlußzeichnung des Kontaktes und wie du die GPIO eingestellt hast. Würde gerne einen Relaisekontakt auswerten.
                                        Vielen vielen Dank für deine Hilfe!

                                        1 Reply Last reply Reply Quote 0
                                        • T
                                          Takahara @milanissimo last edited by Takahara

                                          This post is deleted!
                                          1 Reply Last reply Reply Quote 0
                                          • T
                                            truderinger @Lenny.CB last edited by

                                            @lenny-cb

                                            Guten Morgen,

                                            ich bin gerade dabei mich in Tasmota einzuarbeiten und fand obig genannte Scriptlösung für mein Projekt mit Reed-Kontakt-Wasserdurchlaufuhr. Wäre es vielleicht möglich, auch mir das Script zukommen zu lassen? Eine Anleitung zum ganzen Vorgang gibt es zufälligerweise nicht?

                                            Wäre toll.

                                            Danke vorab und schönes WE.

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            368
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            mqtt reedkontakt tasmota wemos
                                            33
                                            92
                                            27928
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo