Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Off Topic
    4. Microcontroller
    5. Reedkontakt, Umzug von ESP Easy nach Tasmota

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Reedkontakt, Umzug von ESP Easy nach Tasmota

    This topic has been deleted. Only users with topic management privileges can see it.
    • MartinP
      MartinP @Cephalopod last edited by

      @cephalopod Steht doch alles im Link - mit Screenshots und Allem...

      Ich nutze auch Tasmota.
      Wieso willst Du das alles in einem Tasmota Script machen? Puls in Datenpunkt. Rest über Blockly. Keine Zeile Tasmota Script....

      Cephalopod 1 Reply Last reply Reply Quote 0
      • Cephalopod
        Cephalopod @MartinP last edited by

        @martinp
        Nein, ich will nicht unbedingt ein "Script" in Tasmota machen.
        Mir reicht es völlig den Impuls in den ioBroker zu bekommen, daran hapert es lediglich.

        Was muss ich denn sonst machen, außer den Reedkontakt an D5 und GND anzuschließen und den GPIO14 auf "Switch" zu schalten?
        Wir der Impuls dann sofort per MQTT übertragen?

        Wie kann ich dann im ioBroker der Pull-Up Widerstand im 8266 einschalten?
        Kann ich dort dann die 10 ms Entprellung einstellen?

        Cephalopod MartinP 2 Replies Last reply Reply Quote 0
        • Cephalopod
          Cephalopod @Cephalopod last edited by Cephalopod

          Ich bin etwas weiter.
          Das hat geholfen:

          https://www.smarthomejetzt.de/gaszaehler-mit-wemos-d1-mini-mit-reed-kontakt-pullup-widerstand-und-tasmota-smart-machen/

          Der Trick war nicht "Switch" zu verwenden, sondern "Counter".

          Habe auch schon einen Alias dazu angelegt und werde damit das schon bestehende Java Script verwenden:

          e327944b-290e-407b-bf14-f0cee6c48ff5-image.png

          Den Pull-Up werde ich Hardwaremäßig mit einem Widerstand lösen und die Entprellung wird mit

          CounterDebounce 500
          

          direkt eingestellt.

          Frage:
          Bleibt dieser Wert beim reboot des 8266 eigentlich eingestellt oder muss er immer wider neu gesetzt werden?

          1 Reply Last reply Reply Quote 0
          • MartinP
            MartinP @Cephalopod last edited by

            Bei mir ist der Impulsgeber an D4 angeschlossen - den Pull-Up habe ich nicht aktiviert ...

            @cephalopod 719c04ef-04d4-464c-9c30-a585fde38c12-grafik.png

            Dann habe ich noch in der Tasmota-Konsole

            buttondebounce 50 
            

            eingegeben (ist aber eigentlich default)

            Da ich den Stromzähler mit dem gleichen Modul auslese, und das Auseinanderpflücken des JSON im Sonoff Adapter entfällt, habe ich das Ding im Sonoff eingebunden ...

            Der Status kommt bei mir in

            sonoff.0.Stromzaehler_B5F63F.Switch1
            

            Im Blockly wird auf einen Puls in 10 Sekunden limitiert

            bd6c2c16-d9b0-4cee-99f1-efff251bbf6d-grafik.png

            Was bei Dir passt, hängt von der Kesselleistung und der Liter / Puls Konfiguration des Zählers ab...

            Bei mir 10 Liter Gas / Puls ( ca 0,11 kWh) und Gas - Verbraucher mit ca 20 kW thermischer Leistung.

            Heißt also, maximal 20 / 0,11 = 200 Pulse pro Stunde, oder minimal 18 Sekunde Abstand zwischen den Pulsen - da sind 10 Sekunden o. k.

            1 Reply Last reply Reply Quote 0
            • Cephalopod
              Cephalopod last edited by Cephalopod

              @martinp

              24 h sind um.
              Es funktioniert mit Tasmota leider nicht, was mit ESP Easy Jahrelang funktioniert hat 😕

              Es werden zu wenige Impulse gezählt.

              • Der Reedkontakt wurde nicht angefasst, er sitzt immer noch an der selben Stelle
              • Es wird der gleiche GPIO-14(D5) verwendet
              • Es wird die gleiche Debounce Time von 10 mSec eingestellt
              • Es wird auch der interne PullUp verwendet (durch Counter anstatt Counter_n)
              • Es wird alle 10 Sekunden ein Datenpaket gesendet.
              • Die Blockly Auswertung im ioBroker ist die selbe

              Wobei letzteres keine Rolle spielt, der Counter in Tasmota zählt einfach nicht hoch.

              MartinP 1 Reply Last reply Reply Quote 0
              • Cephalopod
                Cephalopod last edited by Cephalopod

                Gelöscht...

                1 Reply Last reply Reply Quote 0
                • MartinP
                  MartinP @Cephalopod last edited by

                  @cephalopod said in Reedkontakt, Umzug von ESP Easy nach Tasmota:

                  Wobei letzteres keine Rolle spielt, der Counter in Tasmota zählt einfach nicht hoch.

                  Zählt er GAR NICHT, oder fehlen Impulse?

                  Cephalopod 1 Reply Last reply Reply Quote 0
                  • Cephalopod
                    Cephalopod @MartinP last edited by

                    @martinp sagte in Reedkontakt, Umzug von ESP Easy nach Tasmota:

                    @cephalopod said in Reedkontakt, Umzug von ESP Easy nach Tasmota:

                    Wobei letzteres keine Rolle spielt, der Counter in Tasmota zählt einfach nicht hoch.

                    Zählt er GAR NICHT, oder fehlen Impulse?

                    Es fehlen jede Menge Impulse.
                    Wenn ich es mit einem Pinnwandmagneten simuliere klappt es, wenn das Zählwerk des Gaszählers sich bewegt werden nur sporadisch Impulse erfasst. Eine Logik dahinter konnte ich noch nicht ermitteln.

                    Es MUSS an der Software/Firmware (Tasmota / ESP Easy) liegen, weil mit der identischen Hardware (Reedkontakt bzw. ESP 8266) lief es über ein Jahr so zuverlässig, dass ich nur alle paar Wochen die zweite Nachkommastelle gelegentlich von Hand korrigieren musste.

                    1 Reply Last reply Reply Quote 0
                    • MartinP
                      MartinP last edited by MartinP

                      @cephalopod Dein Script ist mit Ecken und Kanten...

                      script

                      Egal, wie viele Pulse in der Zeit vom Tasmota Device hereinkommen, Du inkrementierst immer um 0.01 ...

                      Entweder berücksichtigst Du, was da vom Tasmota-Device an Zählerstand-Veränderung kommt, gehst auf einen "Button" der meldet stante pede, wenn er verändert wird - da passt dann das Inkrementieren um 0.01 , oder Du modifizierst im Tasmota-Device das Update interval (TelePeriod)...

                      31f119f1-1265-490e-a41b-42c7f87b8497-grafik.png

                      (alternativ mit consol-Kommando, z. B. für 10 Sekunden Update:

                      TelePeriod 10
                      

                      )

                      Cephalopod 1 Reply Last reply Reply Quote 0
                      • Cephalopod
                        Cephalopod @MartinP last edited by Cephalopod

                        @martinp sagte in Reedkontakt, Umzug von ESP Easy nach Tasmota:

                        Egal, wie viele Pulse in der Zeit vom Tasmota Device hereinkommen, Du inkrementierst immer um 0.01 ...

                        Ja, so hat es auch bisher immer funktioniert.
                        DAS ist auch nicht das Problem, Tasmota erkennt die Impulse nicht zuverlässig!
                        Ist der ESP vielleicht zu beschäftigt, gleichzeitig den Lesekopf des Stromzählers seriell auszulesen?

                        @martinp sagte in Reedkontakt, Umzug von ESP Easy nach Tasmota:

                        gehst auf einen "Button" der meldet stante pede, wenn er verändert wird -

                        Ich habe aktuell "Switch" eingestellt, da scheint es auch so zu passieren.

                        @martinp sagte in Reedkontakt, Umzug von ESP Easy nach Tasmota:

                        (alternativ mit consol-Kommando, z. B. für 10 Sekunden Update:

                        Steht bereits auf 10 Sekunden

                        MartinP 1 Reply Last reply Reply Quote 0
                        • MartinP
                          MartinP @Cephalopod last edited by

                          @cephalopod

                          Ich habe aktuell "Switch" eingestellt, da scheint es auch so zu passieren.

                          Das ist wirklich merkwürdig - solche Probleme habe ich mit meiner Hardware nicht - Node-MCU mit einem IR-Lesekopf für den Stromzähler und den Gaszähler mit dem Impulsausgang von Näherungssensor ... wenn der Reed-Kontakt nicht doch verrutscht ist, bin ich ratlos ...

                          MartinP 1 Reply Last reply Reply Quote 0
                          • MartinP
                            MartinP @MartinP last edited by MartinP

                            Habe noch einmal in meine Tasmota Konfiguration geschaut - hier die verschiedenen Settings

                            6cf461d8-ef09-4884-ba47-96a9ed2b0a00-grafik.png

                            Und das sind Console Settings (Abfrage durch Absetzen ohne Parameter, z.B. SwitchMode):

                            https://tasmota.github.io/docs/Buttons-and-Switches/#switchmode

                            SwitchMode 15 (Das könnte der Übeltäter sein!)

                            Send only MQTT message on switch change. This will stop the switch from controlling power outputs.

                            tele/tasmota/SENSOR = {"Time":"2021-01-01T00:00:00","Switch1":"OFF"}
                            tele/tasmota/SENSOR = {"Time":"2021-01-01T00:00:00","Switch1":"ON"}


                            https://tasmota.github.io/docs/Commands/#setoptions

                            SetOption114 off

                            Detach switches from relays and send MQTT messages instead
                            0 = disable (default)
                            1 = enable
                            Example result: {"Switch1":{"Action":"ON"}}


                            SetOption73 off

                            Detach buttons from relays and send multi-press and hold MQTT messages instead
                            0 = disable (default)
                            1 = enable
                            Example message: {"Button1":{"Action":"SINGLE"}}


                            SetOption74 off

                            Enable internal pullup for single DS18x20 sensor
                            0 = disable (default)
                            1 = internal pullup enabled This only affects ESP8266 ESP32 always needs external pullup

                            Cephalopod 1 Reply Last reply Reply Quote 0
                            • Cephalopod
                              Cephalopod @MartinP last edited by

                              @martinp

                              Habe jetzt mal 24 h meinen Gaszähler mit Tasmota überwachen lassen.

                              Realverbrauch: 0,59 m³
                              also 59 Impulse hätten kommen müssen.

                              Tasmota: 0,35 m³
                              also 35 Impulse 👎

                              Ich klemme jetzt wieder meinen alten ESP-Easy 8266 dran und lasse ihn auch mal 24 h zählen.

                              MartinP 1 Reply Last reply Reply Quote 0
                              • MartinP
                                MartinP @Cephalopod last edited by

                                @cephalopod Hast Du in der Tasmota Console "SwitchMode 15" probiert?

                                Cephalopod 1 Reply Last reply Reply Quote 0
                                • Cephalopod
                                  Cephalopod @MartinP last edited by Cephalopod

                                  @martinp sagte in Reedkontakt, Umzug von ESP Easy nach Tasmota:

                                  @cephalopod Hast Du in der Tasmota Console "SwitchMode 15" probiert?

                                  Nein, komme nur Abends zum "spielen".
                                  Was soll das ändern?
                                  Was mir auch nicht gefällt, dass jeder Durchlauf des Zählrades zwei "Switch"-Ereignisse Auslöst. Einmal wenn der Magnet den Reed öffnet, das zweite wenn er wieder geschlossen wird.
                                  Ich habe daher in meinem Blockly-Script immer nur 0,005 m³ addiert.

                                  Das ist mit ESP-Easy deutlich besser gelöst:

                                  https://espeasy.readthedocs.io/en/latest/Plugin/P003.html

                                  MartinP 1 Reply Last reply Reply Quote 0
                                  • MartinP
                                    MartinP @Cephalopod last edited by

                                    @cephalopod Ich habe mir Deinen ersten Post noch einmal durchgelesen, und kann die Motivation, den Gaszähler als "Untermieter" auf den Stromzähler - ESP mit zu integrieren durchaus verstehen...

                                    Ich habe bei mir einiges an Tasmota im Laufe der Zeit angeschafft, und mich in die durchaus umfangreiche Dokumentation zu Tasmota eingefuchst. Mit EspEasy habe ich mich noch nicht groß beschäftigt. Die Ansätze scheinen durchaus an vielen Punkten unterschiedlich zu sein...

                                    Da ist wahrscheinlich die Frage, ob Du Dir das Einlesen in die Tasmota Dokumentation antun willst. Smart-Home ist zwar zwangsläufig Vielfalt, was die Protokolle und Technologien angeht, aber mit jeder Technologie gibt es mehr Wissen, was man für den Betrieb seiner Installation braucht. Muss wahrscheinlich gut überlegt sein ...

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

                                    Support us

                                    ioBroker
                                    Community Adapters
                                    Donate

                                    853
                                    Online

                                    32.0k
                                    Users

                                    80.4k
                                    Topics

                                    1.3m
                                    Posts

                                    3
                                    21
                                    1515
                                    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