Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Visualisierung
  4. .VIS Sonoff/MQTT Wechselschaltung

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.8k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.2k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    3.2k

.VIS Sonoff/MQTT Wechselschaltung

Scheduled Pinned Locked Moved Visualisierung
32 Posts 3 Posters 1.7k Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • D Offline
    D Offline
    dirkhe
    Developer
    wrote on last edited by
    #14

    Und ich sehr gerade noch, dass du die ; hinter if wegmachen musst

    1 Reply Last reply
    0
    • AtomicIXA Offline
      AtomicIXA Offline
      AtomicIX
      wrote on last edited by
      #15

      Danke für den Tip, jetzt passiert auch was. Zwar nicht was es soll, aber immerhin Fehler :)…..

      EDIT: die If waren mit großem I, habs auf if geändert, jetzt passiert auch was.

      Zwar nicht das gewünschte Ergebnis, aber immerhin.

      Wenn ich jetzt schalte, gehen der POW und die Taster LED kurz an und gleich wieder aus.

      22:30:35.487	[warn]	javascript.0 at Object. (script.js.Garten.Scripte.Skript1:5:1)
      22:30:35.488	[warn]	javascript.0 at Object. (script.js.Garten.Scripte.Skript1:7:1)
      22:30:35.555	[warn]	javascript.0 at Object. (script.js.Garten.Scripte.Skript1:15:1)
      22:30:35.556	[warn]	javascript.0 at Object. (script.js.Garten.Scripte.Skript1:17:1)
      22:30:35.595	[warn]	javascript.0 at Object. (script.js.Garten.Scripte.Skript1:17:1)
      22:30:35.636	[warn]	javascript.0 at Object. (script.js.Garten.Scripte.Skript1:7:1)
      22:30:37.509	[warn]	javascript.0 at Object. (script.js.Garten.Scripte.Skript1:5:1)
      22:30:37.509	[warn]	javascript.0 at Object. (script.js.Garten.Scripte.Skript1:7:1)
      22:30:37.535	[warn]	javascript.0 at Object. (script.js.Garten.Scripte.Skript1:15:1)
      22:30:37.536	[warn]	javascript.0 at Object. (script.js.Garten.Scripte.Skript1:17:1)
      22:30:37.569	[warn]	javascript.0 at Object. (script.js.Garten.Scripte.Skript1:7:1)
      22:30:37.584	[warn]	javascript.0 at Object. (script.js.Garten.Scripte.Skript1:17:1)
      

      Was sagt mir das?

      Skript 1, Zeile 7 , 1 Fehler?

      1 Reply Last reply
      0
      • D Offline
        D Offline
        dirkhe
        Developer
        wrote on last edited by
        #16

        In Script1 in Zeile 7, Spalte 1 ist ein warnung, zeigt er dir die im Editor auch an?

        Ich bin mir nicht sicher, ob das mit cmnd und stat so richtig ist. Also wahrscheinlich musst du immer nur auf cmnd gehen

        1 Reply Last reply
        0
        • AtomicIXA Offline
          AtomicIXA Offline
          AtomicIX
          wrote on last edited by
          #17

          Nein ein Fehler wird mir im Editor nicht angezeigt.

          Ich werde es mal probieren.

          Jetzt habe ich meinen ESP8266 gegrillt oder so. Hatte durch probieren eine Schleife gebaut….

          An, Aus, An, Aus....... jetzt macht er nichts mehr. Werde morgen noch mal neu Flashen, oder einen neuen nehmen.

          Jetzt kann es ja aber nur noch ein Schönheitsfehler sein, oder so ... Ich probiere mal, und werde dann berichten. Grundlegend war der Ordner "global" ja schuld, das überhaupt nichts passiert ist.

          1 Reply Last reply
          0
          • D Offline
            D Offline
            dirkhe
            Developer
            wrote on last edited by
            #18

            Also ich kenne mich mit dem mqtt Adapter nicht so aus, da ich in den sonoff Adapter (müsste eigentlich tasmota adapter heissen) nutzte.

            Da habe ich nur Power. Ich vermute mal, dass da zear auch stat Meldungen kommen, die werden dann aber in Power verarbeitet. Also in Power wird immer angezeigt, ob das Ding gerade an ist oder nicht. Und wenn du über setState() den Status von Power veränderst, wird das zum Gerät geschickt und wenn das Gerät dann per state zurücksendet, das power on ist, wird das auch in Power in ioBroker gespeichert. So habe ich zumindest das Attribut "ack" verstanden.

            Wenn das so ist, dann müsstest du immer nur über cmnd gehen:

            on({id:"mqtt.0.Garten.Laube.Schalter.cmnd.POWER1", change:"ne"}, function(obj){ 
                setState("mqtt.0.Garten.Schuppen.Pumpe.cmnd.POWER", obj.state.val);
            })
            
            on({id:"mqtt.0.Garten.Schuppen.Pumpe.cmnd.POWER", change:"ne"}, function(obj){ 
                setState("mqtt.0.Garten.Laube.Schalter.cmnd.POWER1", obj.state.val);
            })
            

            Aber wie gesagt, ich weiss nicht wie der Adapter da gestrickt ist…

            gruss

            Dirk

            1 Reply Last reply
            0
            • AtomicIXA Offline
              AtomicIXA Offline
              AtomicIX
              wrote on last edited by
              #19

              Super vielen dank.

              Es haben noch Semikolons am ende des Script gefehlt.

              Und es muss "stat" abgefragt werden um um "cmnd" zu setzten, aber so gehts jetzt.

              Mein ESP8266 läuft jetzt wieder nach dem neuem Flashen. Also nicht kaputt. Was auch immer damit los war gestern.

              on({id:"mqtt.0.Garten.Laube.Schalter.stat.POWER1", change:"ne"}, function(obj){ 
                  setState("mqtt.0.Garten.Schuppen.Pumpe.cmnd.POWER", obj.state.val);
              });
              
              on({id:"mqtt.0.Garten.Schuppen.Pumpe.stat.POWER", change:"ne"}, function(obj){ 
                  setState("mqtt.0.Garten.Laube.Schalter.cmnd.POWER1", obj.state.val);
              });
              

              Aber jetzt läuft es.

              Den Sonoff Adapter werde ich mir mal angucken ( der ESP8266 kann ja auch als Sonoff 4CH laufen) , wobei ich mit dem MQTT Adapter soweit zufrieden bin.

              Jedenfalls danke für deine Hilfe und ich habe wieder, einiges dazu gelernt.

              1 Reply Last reply
              0
              • AtomicIXA Offline
                AtomicIXA Offline
                AtomicIX
                wrote on last edited by
                #20

                Jetzt habe ich eben noch gesehen, das bei jeden Tastendruck , Logeinträge erstellt werden.

                javascript.0	2018-12-23 22:26:08.184	error	at Object. <anonymous>(null.Skript2:15:5)
                javascript.0	2018-12-23 22:26:08.183	error	Error in callback: ReferenceError: If is not defined
                javascript.0	2018-12-23 22:26:08.183	error	at Object. <anonymous>(null.Skript1:15:5)
                javascript.0	2018-12-23 22:26:08.182	error	Error in callback: ReferenceError: If is not defined
                javascript.0	2018-12-23 22:26:08.053	error	at Object. <anonymous>(null.Skript2:5:1)
                javascript.0	2018-12-23 22:26:08.052	error	Error in callback: ReferenceError: If is not defined
                javascript.0	2018-12-23 22:26:08.052	error	at Object. <anonymous>(null.Skript1:5:1)
                javascript.0	2018-12-23 22:26:08.051	error	Error in callback: ReferenceError: If is not defined</anonymous></anonymous></anonymous></anonymous>
                

                Ich habe aber nur ein Skript am laufen, das nennt sich "Sync-Pumpe" . Laut Log, wie ich es verstehe, wird aber von Skript 1 und Skript 2 gesprochen.

                Hast du davon Ahnung?

                1 Reply Last reply
                0
                • D Offline
                  D Offline
                  dirkhe
                  Developer
                  wrote on last edited by
                  #21

                  Hast du dort ggg. Noch If anstelle von if stehen?

                  1 Reply Last reply
                  0
                  • AtomicIXA Offline
                    AtomicIXA Offline
                    AtomicIX
                    wrote on last edited by
                    #22

                    Ich habe gar keine "if" mehr.

                    on({id:"mqtt.0.Garten.Laube.Schalter.stat.POWER1", change:"ne"}, function(obj){ 
                        setState("mqtt.0.Garten.Schuppen.Pumpe.cmnd.POWER", obj.state.val);
                    });
                    
                    on({id:"mqtt.0.Garten.Schuppen.Pumpe.stat.POWER", change:"ne"}, function(obj){ 
                        setState("mqtt.0.Garten.Laube.Schalter.cmnd.POWER1", obj.state.val);
                    });
                    

                    Das ist der Code und der läuft auch ohne Probleme, mal abgesehen, von der Fehlern im Log.

                    1 Reply Last reply
                    0
                    • D Offline
                      D Offline
                      dirkhe
                      Developer
                      wrote on last edited by
                      #23

                      Da scheint noch irgendein Ghost script2 zu laufen. Ggg. Mal ioBroker neu starten?

                      1 Reply Last reply
                      0
                      • AtomicIXA Offline
                        AtomicIXA Offline
                        AtomicIX
                        wrote on last edited by
                        #24

                        Ja habe ich schon. Auch "alle" Skripte exportiert, aber da war auch nur das eine, aktive drinn. :( Wobei ich den Broker eh neu aufsetzen werde, jetzt wo ich weiß, wie das funktioniert. So habe ich wenigstens ein sauberes System für den Dauereinsatz.

                        1 Reply Last reply
                        0
                        • AtomicIXA Offline
                          AtomicIXA Offline
                          AtomicIX
                          wrote on last edited by
                          #25

                          Huhu, darf ich noch mal stören?

                          Ich habe noch ein kleines Problem, aufbauend auf der erste Projekt.

                          Wenn ich Taster 1 drücke, bzw der Staus 0 wird, sollen andere Objekte abgeschaltet werden.

                          Also eine zentrale Licht AUS Schaltung bzw eine "Irgendwo ist noch Licht an" Schaltung.

                          on({id:"mqtt.0.Garten.Laube.Schalter1-4.stat.POWER1", change:"ne"}, function(obj){ 
                          
                          (obj.state.val === 0 );
                          setState("mqtt.0.Garten.Laube.Schalter1-4.cmnd.POWER3", "OFF");
                          setState("mqtt.0.Garten.Laube.Schalter1-4.cmnd.POWER4", "OFF");
                          
                          });
                          

                          Und wenn irgendeine Lampe an ist, soll die LED 1 Leuchten

                          if (getState("mqtt.0.Garten.Laube.Schalter1-4.stat.POWER3").val ===1 || getState("mqtt.0.Garten.Laube.Schalter1-4.stat.POWER4").val ===1) {
                            setState("mqtt.0.Garten.Laube.Schalter1-4.cmnd.POWER1", "ON");
                          }
                          

                          Aber das will nicht. Ich verstehe das Javascript noch nicht. Habe es mir aber für nächstes Jahr zur Aufgabe gesetzt, zu lernen.

                          1 Reply Last reply
                          0
                          • D Offline
                            D Offline
                            dirkhe
                            Developer
                            wrote on last edited by
                            #26

                            Probiere mal so

                            on({id:"mqtt.0.Garten.Laube.Schalter1-4.stat.POWER1", change:"ne", val:0}, function(obj){ 
                            
                               setState("mqtt.0.Garten.Laube.Schalter1-4.cmnd.POWER3", "OFF");
                                setState("mqtt.0.Garten.Laube.Schalter1-4.cmnd.POWER4", "OFF");
                            
                            });
                            
                            on({id:"mqtt.0.Garten.Laube.Schalter1-4.stat.POWER3", change:"ne", val:1}, function(obj){ 
                               setState("mqtt.0.Garten.Laube.Schalter1-4.cmnd.POWER1",  
                            });
                            

                            Schau mal hier https://github.com/ioBroker/ioBroker.ja … rsubscribe

                            Vlt wäre auch blocky was für dich, aber da kann ich nicht weiterhelfen, aber wahrscheinlich viele andere

                            1 Reply Last reply
                            0
                            • AtomicIXA Offline
                              AtomicIXA Offline
                              AtomicIX
                              wrote on last edited by
                              #27

                              Danke, ja Blockly werde ich mir mal anschauen, klingt jedenfalls erst mal einfacher als Javascript.

                              Die beiden Scripte gehen nicht richtig. Also immer nur ein mal, dann nicht mehr. Als wenn dort war blockiert oder so.

                              Beim 2ten hat noch der Befehlt gefehlt, aber auch jetzt gehts nur beim ersten mal, dann nicht mehr.

                              on({id:"mqtt.0.Garten.Laube.Schalter1-4.stat.POWER3", change:"ne", val:"ON"}, function(obj){ 
                                 setState("mqtt.0.Garten.Laube.Schalter1-4.cmnd.POWER1", "ON");  
                              });
                              

                              Ich will dich dann auch nicht weiter belästigen und probiere mich die Tage mal an Blockly, irgendwie muss ich ja mal vorankommen und nicht immer fragen müssen.

                              1 Reply Last reply
                              0
                              • D Offline
                                D Offline
                                dirkhe
                                Developer
                                wrote on last edited by
                                #28

                                Hi AtomicIX,

                                Kein Thema, wenn ich helfen kann, mache ich das gerne. Ich hatte das mit dem Blocky geschrieben, da es für viele einfacher ist, die vorher noch nichts mit programmieren am Hut hatten. Genau dafür ist es ja auch da. Und dann kommt ja vlt. auch schneller der Erfolg.

                                Das beim 2. das "on" fehlte, war ein copy and apste fehler. Ich sitzte meistens am Tablet und da ist das mit dem Schreiben nicht immer so einfach, sorry dafür.

                                Ich kann dir leider nichts getestet geben, da ich diesen Adapter nicht habe.

                                Was du probieren könntest ist

                                on({id:"mqtt.0.Garten.Laube.Schalter1-4.stat.POWER1", change:"ne", val:"OFF"}, function(obj){ 
                                    setState("mqtt.0.Garten.Laube.Schalter1-4.cmnd.POWER3", "OFF");
                                    setState("mqtt.0.Garten.Laube.Schalter1-4.cmnd.POWER4", "OFF");
                                
                                });
                                

                                oder

                                on({id:"mqtt.0.Garten.Laube.Schalter1-4.stat.POWER1", change:"ne"}, function(obj){ 
                                 if  (obj.state.val === 0 ){
                                    setState("mqtt.0.Garten.Laube.Schalter1-4.cmnd.POWER3", "OFF");
                                    setState("mqtt.0.Garten.Laube.Schalter1-4.cmnd.POWER4", "OFF");
                                }
                                });
                                
                                1 Reply Last reply
                                0
                                • AtomicIXA Offline
                                  AtomicIXA Offline
                                  AtomicIX
                                  wrote on last edited by
                                  #29

                                  Leider geht das auch nicht, es passiert nichts, auch im Log ist nichts zu finden.

                                  Das mit der Synchron Schaltung läuft. Also generell läuft ja meine Maschine.

                                  Ich werde mal im Bereich Blockly fragen. Damit hatte ich es auch eben probiert, aber dort sind mir einige Sachen noch unklar.

                                  Prinzipiell ist ja ja nur "WENN - DANN"

                                  1 Reply Last reply
                                  0
                                  • D Offline
                                    D Offline
                                    dirkhe
                                    Developer
                                    wrote on last edited by
                                    #30

                                    Nur mal als Überlegung, darf die id ein - haben in "Schalter1-4"?

                                    1 Reply Last reply
                                    0
                                    • AtomicIXA Offline
                                      AtomicIXA Offline
                                      AtomicIX
                                      wrote on last edited by
                                      #31

                                      Hatte ich auch schon überlegt, aber

                                      on({id:"mqtt.0.Garten.Laube.Schalter1-4.stat.POWER1", change:"ne"}, function(obj){ 
                                          setState("mqtt.0.Garten.Laube.Schalter1-4.cmnd.POWER4", obj.state.val);
                                      });
                                      
                                      

                                      läuft super, das ist auch 1-4 drinn

                                      1 Reply Last reply
                                      0
                                      • AtomicIXA Offline
                                        AtomicIXA Offline
                                        AtomicIX
                                        wrote on last edited by
                                        #32

                                        Okay, jetzt läuft alles, auch die vorigen Sachen gehen. Es war ein Fehler in den Adapter Einstellungen von MQTT. Der Hacken musste raus.

                                        Was und wofür das ist, keine Ahnung, aber damit geht es.

                                        13280_mqtt02.png

                                        1 Reply Last reply
                                        0
                                        Reply
                                        • Reply as topic
                                        Log in to reply
                                        • Oldest to Newest
                                        • Newest to Oldest
                                        • Most Votes


                                        Support us

                                        ioBroker
                                        Community Adapters
                                        Donate

                                        831

                                        Online

                                        32.4k

                                        Users

                                        81.5k

                                        Topics

                                        1.3m

                                        Posts
                                        Community
                                        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                        ioBroker Community 2014-2025
                                        logo
                                        • Login

                                        • Don't have an account? Register

                                        • Login or register to search.
                                        • First post
                                          Last post
                                        0
                                        • Home
                                        • Recent
                                        • Tags
                                        • Unread 0
                                        • Categories
                                        • Unreplied
                                        • Popular
                                        • GitHub
                                        • Docu
                                        • Hilfe