Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Hardware
    4. alte Fenstersensoren Smart machen

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    alte Fenstersensoren Smart machen

    This topic has been deleted. Only users with topic management privileges can see it.
    • B
      berndsolar13 @Ralla66 last edited by

      @ralla66

      Hab heute mal einen ersten Test gemacht.
      Klappt soweit ganz gut.

      Hab den Fensterkontakt wie in deinem Bild an D5 angeschlossen.
      In der Konsole wird erkannt, ob offen oder geschlossen.
      Aber irgendwie erkennt er es als Power ON und OFF.

      Deswegen kommt per MQTT in Iobroker der POWER Status mit True der False an.
      Wenn ich nur einen Kontakt anschließe, würde es ja gehen.
      Aber wenn es z.B. 5 sind müsste ich dann nicht 5 verschiedene Status Meldungen per MQTT senden ?

      Es gibt in MQTT noch folgendes

      sonoff.0.tamso_relais.Switch1
      

      Das wäre vermutlich das was ich suche, z.B. später noch Switch 1 - 5 z.B.
      Kann es sein, das ich das in der Script Konsole noch irgendwie verbinden muss ?

      1 Reply Last reply Reply Quote 0
      • B
        berndsolar13 last edited by berndsolar13

        erledigt, geht doch 😉
        Hatte die 5 Min bei MQTT vergessen.
        Wird ja nur der Power Wert sofort bei Änderung an den MQTT Server gesendet
        Der Status der Reed Kontakte wird ja nur nach dem Ablauf der gespeicherten Zeit gesendet.

        Kam dann an, sowohl für Switch1 als auch für Switch2

        22:35:41.420 MQT: tele/tasmota_0E059C/SENSOR = {"Time":"2023-12-23T22:35:41","Switch1":"ON","Switch2":"OFF"}
        
        Ralla66 1 Reply Last reply Reply Quote 0
        • Ralla66
          Ralla66 Most Active @berndsolar13 last edited by Ralla66

          @berndsolar13

          läuft 🙂
          eigentlich ist das mit Tasmota alles recht leicht.

          Platz genug, ESP32
          Wemos switch.jpg

          B 1 Reply Last reply Reply Quote 0
          • B
            berndsolar13 @Ralla66 last edited by

            @ralla66

            wow, da ist ja noch so viel möglich
            Seit 5 Jahren steht schon die Briefkasten Überwachung auf dem Zettel.
            Im Kabel der Telefonanlage sind noch paar Adern frei, da werde ich noch so einen Reed Kontakt an den Briefkasten basteln.

            Dürfte mit einem Reedkontakt aber schwierig werden, denn wenn der Postbote den Briefkasten innerhalb von 10 Sekunden wieder schließt, also kurz vor der nächsten MQTT Sendung, dann verpasse ich den 😄

            Oder kann man tasmota davon überzeugen, das es sofort ein Update macht, sobald sich von einer GPIO der Status ändert ? Dann müsste ich nur schauen, ob es heute mal eine Status Änderung auf Switch XYZ gab. Dann wüste ich, Briefkasten hat sich geöffnet.

            Ralla66 1 Reply Last reply Reply Quote 0
            • Ralla66
              Ralla66 Most Active @berndsolar13 last edited by Ralla66

              @berndsolar13

              Was den Briefkasten betrifft bekommst du ja bei einem Switch die Meldung sofort über
              Power on / off zurück. Welcher Switch das ist in 10 sec.
              Bei den Fenstern ist das Ähnlich, du siehst wieviele auf Power on / off wechseln also die
              Anzahl,, welche Fenster siehst du halt 10 sec später.
              Per Blockly oder Scripting bauste dann noch einen Tageszähler ein.
              Spielerei ohne Ende halt. 🙂

              switch Power 3.jpg

              Beispiel Blockly Briefkastentageszähler:

              Bk1.png

              wenn switch ist > 2 min on oder off steckt mit hoher Wahrscheinlichkeit die
              Tageszeitung im Einwurf.
              wenn switch ist > 2 min über Nacht Wartungbefehl auslösen -> Klappe Ölen 🙂

              Ralla66 1 Reply Last reply Reply Quote 0
              • Ralla66
                Ralla66 Most Active @Ralla66 last edited by Ralla66

                @ralla66

                sollte in der .bin mit drin sein

                #define SUPPORT_MQTT_EVENT
                

                Mqtt Adapter

                Windows.jpg

                Tasmota

                WindowsnTas.jpg

                der Code

                >D
                
                Timer=0
                
                BAD="ERR"
                KUE="ERR"
                WOZ="ERR"
                ESZ="ERR"
                BKT="ERR"
                TXT=111
                
                sw1=0
                sw2=0
                sw3=0
                sw4=0
                sw5=0
                
                >BS
                +>subscribe EA, cmnd/Windows/Bad
                +>subscribe EA, cmnd/Windows/Küche
                +>subscribe EA, cmnd/Windows/Wohnzimmer
                +>subscribe EA, cmnd/Windows/Esszimmer
                +>subscribe EA, cmnd/Windows/Balkontür
                
                >S
                
                Timer+=1
                ;Executed every second 
                
                sw1=sw[0]
                sw2=sw[1]
                sw3=sw[2]
                sw4=sw[3]
                sw5=sw[4]
                
                if sw1>0
                then
                BAD="OFFEN"
                else
                BAD="ZU"
                endif
                
                if sw2>0
                then
                KUE="OFFEN"
                else
                KUE="ZU"
                endif
                
                if sw3>0
                then
                WOZ="OFFEN"
                else
                WOZ="ZU"
                endif
                
                if sw4>0
                then
                ESZ="OFFEN"
                else
                ESZ="ZU"
                endif
                
                if sw5>0
                then
                BKT="OFFEN"
                else
                BKT="ZU"
                endif
                
                if Timer>5
                then
                +>publish Windows/Bad %BAD%
                +>publish Windows/Küche %KUE%
                +>publish Windows/Wohnzimmer %WOZ%
                +>publish Windows/Esszimmer %ESZ%
                +>publish Windows/Balkontür %BKT%
                
                Timer=0
                endif
                
                >W        
                
                Bad{m} %BAD% 
                Küche{m} %KUE% 
                Wohnzimmer{m} %WOZ% 
                Esszimmer{m} %ESZ% 
                Balkontür{m} %BKT% 
                
                #
                

                meine .bin

                #define USE_SCRIPT_STATUS
                #define USE_WEBSEND_RESPONSE
                #define USE_SCRIPT_STATUS
                #define USE_SCRIPT_FULL_JSON_PARSER
                #define USE_SCRIPT_JSON_EXPORT
                #define SUPPORT_MQTT_EVENT
                #define USE_SCRIPT_WEB_DISPLAY
                #define USE_SCRIPT_SERIAL
                #define USE_DISPLAY
                
                B 2 Replies Last reply Reply Quote 0
                • B
                  berndsolar13 @Ralla66 last edited by

                  @ralla66

                  Das schaut interessant aus, kannst du die bin mal uppen 😉
                  Es ist ja wohl nicht die Standard Version oder 😉

                  Danke im Voraus

                  Ralla66 1 Reply Last reply Reply Quote 0
                  • Ralla66
                    Ralla66 Most Active @berndsolar13 last edited by Ralla66

                    @berndsolar13

                    müsste in der Display von User Wal mit drin sein.

                    ESP 8266

                    tasmota.bin.gz
                    tasmota.bin

                    B 1 Reply Last reply Reply Quote 0
                    • B
                      berndsolar13 @Ralla66 last edited by

                      @ralla66

                      ok, dann teste ich die gleich mal 🙂

                      B 1 Reply Last reply Reply Quote 0
                      • B
                        berndsolar13 @berndsolar13 last edited by

                        klappt, schaut so aus wie bei dir

                        Bei den Fenstern ist es ja mehr oder weniger Egal, ob die Meldung 10 oder 20 Sek später kommt.

                        Briefkasten:
                        Sobald ich alles zusammengebaut hab, teste ich mal, ob ein schneller Einwurf unter 2 Sekunden, registriert wird 😉

                        Du nutzt hier quasi ein zusätzliches MQTT und nicht den, mit Power und Switch von den Tasmota Einstellungen. Ist nur ne optische Verschönerung oder ? Oder gibts noch eine andere Änderung ?

                        Ralla66 1 Reply Last reply Reply Quote 0
                        • Ralla66
                          Ralla66 Most Active @berndsolar13 last edited by

                          @berndsolar13

                          Eigene Datenpunkte erstellen für jeden switch per mqtt subscribe.
                          Power, Switch, Relay usw bleibt ja weiterhin aktiv.
                          Sonst verliert man die Übersicht bei so vielen Sensoren.

                          B 1 Reply Last reply Reply Quote 0
                          • B
                            berndsolar13 @Ralla66 last edited by

                            @ralla66

                            ok, hast recht, bei dann vielleicht 10 Auswertungen ist das besser 😄

                            Frage zum Script, das läuft 1x pro Sekunde durch ?
                            Auch wenn 5h nix passiert ?
                            Gibt es nicht sowas wie, führe aus, wenn es eine Änderung gibt ?
                            Nur so eine Idee, damit der nicht ständig arbeiten muss 😉

                            Ralla66 1 Reply Last reply Reply Quote 0
                            • Ralla66
                              Ralla66 Most Active @berndsolar13 last edited by Ralla66

                              @berndsolar13

                              geht technisch per Interrupt,
                              einfach -> nein, viel Arbeit 🙂

                              B 1 Reply Last reply Reply Quote 0
                              • B
                                berndsolar13 @Ralla66 last edited by

                                @ralla66

                                ok, dann muss er also der EPS32 arbeiten 😄

                                Ralla66 1 Reply Last reply Reply Quote 0
                                • Ralla66
                                  Ralla66 Most Active @berndsolar13 last edited by

                                  @berndsolar13

                                  bei 1 sec langweilt sich das IC 🙂

                                  B 1 Reply Last reply Reply Quote 0
                                  • B
                                    berndsolar13 last edited by

                                    tasmo.jpg

                                    Die Temperatur DHT22 Sensoren aus China sind heute angekommen.
                                    Da alles funktioniert, hab ich heute noch mal 3 ESP32 in China bestellt, 3er Pack, da kostete einer 4,50
                                    Das kann man machen 😄

                                    EPS32, weil ich einfach für die Fenster Reed Kontakte mehr Platz brauche.
                                    1 DHT 22 kommt da auch noch dran, dann, muss mal schauen, ob man auch einen 2. anschließen kann. Vom Erdgeschoss in der Küche geht ein Leerrohr in den Keller, falls ich da später noch mal Sat oder Lan haben wollte, daher das Leerrohr, da könnte ich jetzt einen Klingeldraht durch schrieben, und den 2. Sensor anstöpseln 😉 Dann wäre die Küche auch gleich mit erfasst, und ich brauche dort keinen Wemos D1.

                                    1 Reply Last reply Reply Quote 0
                                    • B
                                      berndsolar13 @Ralla66 last edited by

                                      @ralla66

                                      Hab noch mal ne Spezial Frage an dich.
                                      Um zu prüfen, ob der Keller entfeuchtet wird, will ich noch per Formel das Wasser in der Luft berechnen. Vorbereitet in Excel hab ich das vorher.
                                      Ich wollte nun unterhalb der 3 Werte in der Weboberfläche über die Script Funktion noch eine 4. Zeile hinzufügen.
                                      Wasser in g/m3

                                      aber egal was ich unter Scripting eingebe, in der Weboberfläche erscheint keine zusätzliche Zeile.
                                      Ich will das Wasser auch in Influx mit loggen, um zu sehen, wie viel Wasser aus den Wänden per Diffusion in die Luft gelangt

                                      In Schritt 2, will ich alle 3 Kellerräume mal überwachen, damit ich sehe, welcher der 3 Räume der ist, der die Luftfeuchte am meisten erhöht 😉

                                      Die Idee ist nun, das Wasser direkt in der Script Funktion zu berechnen, und wie bei deinem Offen zu Script oben, das ganze per MQTT zu übertragen. Dann muss ich das nicht über Blocky machen 😄

                                      Ralla66 1 Reply Last reply Reply Quote 0
                                      • Ralla66
                                        Ralla66 Most Active @berndsolar13 last edited by Ralla66

                                        @berndsolar13

                                        ah ja, ok

                                        Schritt 1,
                                        Beispiel soll Webgui:
                                        unter >D muss stehen SWT2=0
                                        vorbesetzen der Variable SWT2 mit dem Wert 0
                                        dies unter >W eingeben
                                        Test{m} %0SWT2%
                                        alles unter >W erscheint auf der Webgui
                                        Test ist dann der Text
                                        {m} füllt auf mit Leerzeichen zwischen Text und Variablenwert
                                        %0SWT2% ist %xxx% ist eine Variable die unter >D angelegt wurde,
                                        0 bei Zahlen ohne Kommawert, 2 wäre mit 2 Stellen hinter dem Komma
                                        SWT2 ist der Variablenwert selbst

                                        B 1 Reply Last reply Reply Quote 0
                                        • B
                                          berndsolar13 @Ralla66 last edited by berndsolar13

                                          @ralla66

                                          es bleibt bei den 3 Zeilen oben wie im Bild.

                                          Folgendes hab ich aktuell zum Testen inklusive Haken oben drin stehen

                                          >D
                                          SWT2=0
                                          
                                          >W
                                          Ausgabe %0SWT2% ist %xxx%
                                          

                                          Liegt es an der Firmware ? hab eine Sensors mit Scripting genommen, oder braucht man dafür noch etwas zusätzlich ? Der gleiche Code unter Scripting beim Wemos Display klappt bestens. Das ist ja das was ich nicht verstehe 😄

                                          Edit, Google meint es fehlt

                                          #define USE_SCRIPT_WEB_DISPLAY
                                          
                                          Ralla66 1 Reply Last reply Reply Quote 0
                                          • Ralla66
                                            Ralla66 Most Active @berndsolar13 last edited by Ralla66

                                            @berndsolar13 sagte in alte Fenstersensoren Smart machen:

                                            ohne ist %xxx%

                                            habe mir eine Bastel.bin gebaut wo das meiste zum spielen drin ist.

                                            #define USE_TIMERS
                                            #define USE_SCRIPT
                                            #define USE_SCRIPT_GLOBVARS
                                            #define USE_SCRIPT_STATUS
                                            #define USE_WEBSEND_RESPONSE
                                            #define USE_SCRIPT_STATUS
                                            #define USE_SCRIPT_FULL_JSON_PARSER
                                            #define USE_SCRIPT_JSON_EXPORT
                                            #define SUPPORT_MQTT_EVENT
                                            #define USE_SML_M
                                            #define USE_SCRIPT_WEB_DISPLAY
                                            #define USE_SCRIPT_SERIAL
                                            

                                            du fragst ja eh danach 🙂
                                            ESP8266

                                            tasmota.bin

                                            Berechnung :

                                            >D
                                            
                                            ZAL1=50
                                            ZAL2=200
                                            ERG=0
                                            
                                            >S
                                            
                                            ;>S jede Sekunde
                                            ;Berechnung
                                            
                                            ERG=ZAL1*ZAL2/1000
                                            
                                            ;Ausgabe in der Variable ERG Console mit print
                                            print Ergebnis %ERG&
                                            
                                            >W
                                            Ergebnis{m}  %1ERG% Wert
                                            

                                            du rufst mit %xxx% eine Variable auf die nicht in >D aufgeführt ist,
                                            dann wird die Zeile in >W nicht ausgeführt

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            889
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

                                            7
                                            134
                                            9095
                                            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