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.
    • 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
                                          • M
                                            marhal @Marty56 last edited by

                                            Hallo alle zusammen,

                                            Das ist ja echt eine Supersache und ich wollte das gleich auf mein ESP32-Eth01 mit Tasmota auch ausprobieren. Habe am GPIO 2 mein Reedkontakt.
                                            Aber wenn ich versuche das Script auszuführen bekomme ich nur folgende Fehler. Kann mir da jemand auf die Sprünge helfen ? bin da nicht so firm drin.

                                            Screenshot 2022-09-20 073039.jpg

                                            Danke für eure Hilfe

                                            Gruß
                                            Marhal

                                            bahnuhr 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

                                            364
                                            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