Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • 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

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. Z-Wave-Adapter setzt falsche Status bei "benachbarten" Objekten

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    3.6k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.2k

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.5k

Z-Wave-Adapter setzt falsche Status bei "benachbarten" Objekten

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
13 Beiträge 4 Kommentatoren 1.5k Aufrufe
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • N Offline
    N Offline
    nibblerrick
    schrieb am zuletzt editiert von
    #1

    Moin,

    folgende Ausgangssituation: Ich habe einen "Philio Technology Corporation PAN04-1 Double Relay Switch 2x1.5kW with Power Measurement" der bei SWITCH_BINARY 3 switches hat, 1 fuer den ersten Ausgang, 2 fuer den zweiten Ausgang und 3 um Beide zugleich zu schalten.

    Setze ich nun z.B. Switch_2 auf true schaltet auch der zweite Ausgang ein - wie es soll - aber Switch_1 geht danach auch auf true (schaltet Hardwaremaessig aber nicht).

    Gehe ich nun die die Adaptereinstellungen und mache bei dem Geraet "Info aktualisieren" geht der Status von Switch_1 auch wieder auf false. Mache ich das nicht bleibt der auf true (auch nach mehreren Stunden).

    Mit einem Script kann ich Switch_1 aber durchaus true senden und der erste Ausgang schaltet dann auch.

    Also von der Hardware her werden die Befehle richtig entgegengenommen und wenn ich manuell "Info aktualisieren" mache sind die Status auch wieder korrekt. Aber sobald ich da schalte gehen die durcheinander.

    Jemand schon so etwas gesehen oder eine Idee wo ich nach dem Fehler suchen kann?

    1 Antwort Letzte Antwort
    0
    • apollon77A Offline
      apollon77A Offline
      apollon77
      schrieb am zuletzt editiert von
      #2

      Was steht denn so im Log? Da werden an sich alle "gemeldeten" Dinge als info geloggt.

      Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

      • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
      • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
      1 Antwort Letzte Antwort
      0
      • N Offline
        N Offline
        nibblerrick
        schrieb am zuletzt editiert von
        #3

        Gute Idee, ich stelle mal auf silly und gucke was da kommt beim Schalten…

        1 Antwort Letzte Antwort
        0
        • N Offline
          N Offline
          nibblerrick
          schrieb am zuletzt editiert von
          #4

          So, hier was passiert wenn ich Switch_2 einmal auf true setze und danach wieder auf false:

          2018-02-05 17:01:34.412 - debug: zwave.0 value changed: 4 comClass: 37 value: {"value_id":"4-37-2-0","node_id":4,"class_id":37,"type":"bool","genre":"user","instance":2,"index":0,"label":"Switch","units":"","help":"","read_only":false,"write_only":false,"min":0,"max":0,"is_polled":false,"value":true}
          2018-02-05 17:01:34.418 - silly: zwave.0 inMem message zwave.0.* zwave.0.NODE4.SWITCH_BINARY.Switch_2 val=true, ack=true, ts=1517846494414, q=0, from=system.adapter.zwave.0, lc=1517846494307
          2018-02-05 17:01:36.364 - debug: zwave.0 value changed: 4 comClass: 37 value: {"value_id":"4-37-1-0","node_id":4,"class_id":37,"type":"bool","genre":"user","instance":1,"index":0,"label":"Switch","units":"","help":"","read_only":false,"write_only":false,"min":0,"max":0,"is_polled":false,"value":true}
          2018-02-05 17:01:36.367 - silly: zwave.0 inMem message zwave.0.* zwave.0.NODE4.SWITCH_BINARY.Switch_1 val=true, ack=true, ts=1517846496366, q=0, from=system.adapter.zwave.0, lc=1517846496366
          2018-02-05 17:01:36.404 - debug: zwave.0 value changed: 4 comClass: 37 value: {"value_id":"4-37-1-0","node_id":4,"class_id":37,"type":"bool","genre":"user","instance":1,"index":0,"label":"Switch","units":"","help":"","read_only":false,"write_only":false,"min":0,"max":0,"is_polled":false,"value":true}
          2018-02-05 17:01:36.407 - silly: zwave.0 inMem message zwave.0.* zwave.0.NODE4.SWITCH_BINARY.Switch_1 val=true, ack=true, ts=1517846496406, q=0, from=system.adapter.zwave.0, lc=1517846496366
          2018-02-05 17:01:40.009 - debug: zwave.0 value changed: 4 comClass: 50 value: {"value_id":"4-50-1-32","node_id":4,"class_id":50,"type":"bool","genre":"user","instance":1,"index":32,"label":"Exporting","units":"","help":"","read_only":true,"write_only":false,"min":0,"max":0,"is_polled":false,"value":false}
          2018-02-05 17:01:40.010 - debug: zwave.0 value changed: 4 comClass: 50 value: {"value_id":"4-50-1-8","node_id":4,"class_id":50,"type":"decimal","genre":"user","instance":1,"index":8,"label":"Power","units":"W","help":"","read_only":true,"write_only":false,"min":0,"max":0,"is_polled":false,"value":"16.6"}
          2018-02-05 17:01:40.018 - silly: zwave.0 inMem message zwave.0.* zwave.0.NODE4.METER.Exporting_1 val=false, ack=true, ts=1517846500010, q=0, from=system.adapter.zwave.0, lc=1517742614071
          2018-02-05 17:01:40.021 - silly: zwave.0 inMem message zwave.0.* zwave.0.NODE4.METER.Power_1 val=16.6, ack=true, ts=1517846500018, q=0, from=system.adapter.zwave.0, lc=1517846500018
          2018-02-05 17:01:40.048 - debug: zwave.0 value changed: 4 comClass: 50 value: {"value_id":"4-50-1-32","node_id":4,"class_id":50,"type":"bool","genre":"user","instance":1,"index":32,"label":"Exporting","units":"","help":"","read_only":true,"write_only":false,"min":0,"max":0,"is_polled":false,"value":false}
          2018-02-05 17:01:40.049 - debug: zwave.0 value changed: 4 comClass: 50 value: {"value_id":"4-50-1-8","node_id":4,"class_id":50,"type":"decimal","genre":"user","instance":1,"index":8,"label":"Power","units":"W","help":"","read_only":true,"write_only":false,"min":0,"max":0,"is_polled":false,"value":"16.3"}
          2018-02-05 17:01:40.055 - silly: zwave.0 inMem message zwave.0.* zwave.0.NODE4.METER.Exporting_1 val=false, ack=true, ts=1517846500049, q=0, from=system.adapter.zwave.0, lc=1517742614071
          2018-02-05 17:01:40.055 - silly: zwave.0 inMem message zwave.0.* zwave.0.NODE4.METER.Power_1 val=16.3, ack=true, ts=1517846500051, q=0, from=system.adapter.zwave.0, lc=1517846500051
          2018-02-05 17:01:46.184 - silly: zwave.0 inMem message zwave.0.* zwave.0.NODE4.SWITCH_BINARY.Switch_2 val=false, ack=false, ts=1517846506183, q=0, from=system.adapter.admin.0, lc=1517846506183
          2018-02-05 17:01:46.184 - debug: zwave.0 stateChange zwave.0.NODE4.SWITCH_BINARY.Switch_2 set {"val":false,"ack":false,"ts":1517846506183,"q":0,"from":"system.adapter.admin.0","lc":1517846506183}
          2018-02-05 17:01:46.185 - debug: zwave.0 setState for: nodeID=4: comClass=37: index=0: instance=2: value=false
          2018-02-05 17:01:46.281 - debug: zwave.0 value changed: 4 comClass: 37 value: {"value_id":"4-37-2-0","node_id":4,"class_id":37,"type":"bool","genre":"user","instance":2,"index":0,"label":"Switch","units":"","help":"","read_only":false,"write_only":false,"min":0,"max":0,"is_polled":false,"value":false}
          2018-02-05 17:01:46.286 - silly: zwave.0 inMem message zwave.0.* zwave.0.NODE4.SWITCH_BINARY.Switch_2 val=false, ack=true, ts=1517846506283, q=0, from=system.adapter.zwave.0, lc=1517846506183
          2018-02-05 17:01:48.234 - debug: zwave.0 value changed: 4 comClass: 37 value: {"value_id":"4-37-1-0","node_id":4,"class_id":37,"type":"bool","genre":"user","instance":1,"index":0,"label":"Switch","units":"","help":"","read_only":false,"write_only":false,"min":0,"max":0,"is_polled":false,"value":false}
          2018-02-05 17:01:48.237 - silly: zwave.0 inMem message zwave.0.* zwave.0.NODE4.SWITCH_BINARY.Switch_1 val=false, ack=true, ts=1517846508235, q=0, from=system.adapter.zwave.0, lc=1517846508235
          2018-02-05 17:01:48.275 - debug: zwave.0 value changed: 4 comClass: 37 value: {"value_id":"4-37-1-0","node_id":4,"class_id":37,"type":"bool","genre":"user","instance":1,"index":0,"label":"Switch","units":"","help":"","read_only":false,"write_only":false,"min":0,"max":0,"is_polled":false,"value":false}
          2018-02-05 17:01:48.280 - silly: zwave.0 inMem message zwave.0.* zwave.0.NODE4.SWITCH_BINARY.Switch_1 val=false, ack=true, ts=1517846508276, q=0, from=system.adapter.zwave.0, lc=1517846508235
          2018-02-05 17:01:49.009 - debug: zwave.0 value changed: 4 comClass: 50 value: {"value_id":"4-50-1-32","node_id":4,"class_id":50,"type":"bool","genre":"user","instance":1,"index":32,"label":"Exporting","units":"","help":"","read_only":true,"write_only":false,"min":0,"max":0,"is_polled":false,"value":false}
          2018-02-05 17:01:49.010 - debug: zwave.0 value changed: 4 comClass: 50 value: {"value_id":"4-50-1-8","node_id":4,"class_id":50,"type":"decimal","genre":"user","instance":1,"index":8,"label":"Power","units":"W","help":"","read_only":true,"write_only":false,"min":0,"max":0,"is_polled":false,"value":"0.0"}
          2018-02-05 17:01:49.013 - silly: zwave.0 inMem message zwave.0.* zwave.0.NODE4.METER.Exporting_1 val=false, ack=true, ts=1517846509011, q=0, from=system.adapter.zwave.0, lc=1517742614071
          2018-02-05 17:01:49.015 - silly: zwave.0 inMem message zwave.0.* zwave.0.NODE4.METER.Power_1 val=0, ack=true, ts=1517846509013, q=0, from=system.adapter.zwave.0, lc=1517846509013
          2018-02-05 17:01:49.048 - debug: zwave.0 value changed: 4 comClass: 50 value: {"value_id":"4-50-1-32","node_id":4,"class_id":50,"type":"bool","genre":"user","instance":1,"index":32,"label":"Exporting","units":"","help":"","read_only":true,"write_only":false,"min":0,"max":0,"is_polled":false,"value":false}
          2018-02-05 17:01:49.049 - debug: zwave.0 value changed: 4 comClass: 50 value: {"value_id":"4-50-1-8","node_id":4,"class_id":50,"type":"decimal","genre":"user","instance":1,"index":8,"label":"Power","units":"W","help":"","read_only":true,"write_only":false,"min":0,"max":0,"is_polled":false,"value":"0.0"}
          2018-02-05 17:01:49.053 - silly: zwave.0 inMem message zwave.0.* zwave.0.NODE4.METER.Exporting_1 val=false, ack=true, ts=1517846509049, q=0, from=system.adapter.zwave.0, lc=1517742614071
          2018-02-05 17:01:49.054 - silly: zwave.0 inMem message zwave.0.* zwave.0.NODE4.METER.Power_1 val=0, ack=true, ts=1517846509051, q=0, from=system.adapter.zwave.0, lc=1517846509013
          

          Ich werde gerade nicht ganz schlau draus…

          1 Antwort Letzte Antwort
          0
          • AlCalzoneA Offline
            AlCalzoneA Offline
            AlCalzone
            Developer
            schrieb am zuletzt editiert von
            #5

            Laut Log sieht das so aus, dass ioBroker korrekt nur einen der Switches schalten will. Anschließend kommt von ZWave die Info, dass sich der Zustand von 2 Switches geändert hat.

            Poste mal nen Screenshot des CONFIGURATION Baums, nicht dass da eine Geräteeinstellung dazwischen haut.

            Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

            1 Antwort Letzte Antwort
            0
            • P Offline
              P Offline
              Pman
              schrieb am zuletzt editiert von
              #6

              Das liegt nicht am Adapter, es gibt bei OZW schon einen offenen issue dafür. Am besten dort nochmal reinhängen.

              https://github.com/OpenZWave/open-zwave/issues/1270

              1 Antwort Letzte Antwort
              0
              • N Offline
                N Offline
                nibblerrick
                schrieb am zuletzt editiert von
                #7

                Danke, da hab ich ja noch gar nicht nachgesehen.

                Gibt es eine Moeglichkeit dieses "Info aktualisieren" zwischendurch irgendwie zu triggern, da dann ja wieder die korrekten States erscheinen haette ich dann einen Workaround bis das Problem an sich geloest wird. Ich sehe so nur nichts in den Objekten wo man einen passenden Befehl absetzen kann. Wenn man das direkt an OpenZWave geben kann geht ja auch ein kleines Cron-Script.

                1 Antwort Letzte Antwort
                0
                • AlCalzoneA Offline
                  AlCalzoneA Offline
                  AlCalzone
                  Developer
                  schrieb am zuletzt editiert von
                  #8

                  @nibblerrick:

                  Ich sehe so nur nichts in den Objekten wo man einen passenden Befehl absetzen kann. `
                  Dürfte per JavaScript gehen (die 2 ersetzen durch den Node, den du aktualisieren willst):

                  sendTo("zwave.0", "refreshNodeInfo", {nodeID: 2}, function(ret) {
                      if (ret.error) {
                          // es gab ein Problem
                      } else if (ret.result === "ok") {
                          // alles gut
                      }
                  });
                  
                  

                  Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                  1 Antwort Letzte Antwort
                  0
                  • N Offline
                    N Offline
                    nibblerrick
                    schrieb am zuletzt editiert von
                    #9

                    Habe das jetzt erstmal fuer alle 5 Minuten gesetzt, funktioniert einwandfrei, also noch maximal 5 Minuten passen die gemeldeten States dann auch, sehr schoen.

                    schedule("*/5 * * * *", function () {
                      sendTo("zwave.0", "refreshNodeInfo", {nodeID: 4}, function(ret) {
                        if (ret.error) {
                            // es gab ein Problem
                        } else if (ret.result === "ok") {
                            // alles gut
                        }
                    });
                    });
                    

                    Besten Dank!

                    1 Antwort Letzte Antwort
                    0
                    • AlCalzoneA Offline
                      AlCalzoneA Offline
                      AlCalzone
                      Developer
                      schrieb am zuletzt editiert von
                      #10

                      Alternativ könntest du auch einen refresh veranlassen, wenn ich einer der States geändert hat (nicht aktualisiert, sonst gibts ne Endlosschleife!). Dann vermeidest du unnötigen Funkverkehr, wenn nichts passiert und bist schneller aktuell.

                      Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                      1 Antwort Letzte Antwort
                      0
                      • N Offline
                        N Offline
                        nibblerrick
                        schrieb am zuletzt editiert von
                        #11
                        on({id: new RegExp('zwave\\.0\\.NODE4\\.SWITCH_BINARY\\.Switch_1' + "|" + 'zwave\\.0\\.NODE4\\.SWITCH_BINARY\\.Switch_2' + "|" + 'zwave\\.0\\.NODE4\\.SWITCH_BINARY\\.Switch_3'), change: "ne"}, function (obj) {
                           sendTo("zwave.0", "refreshNodeInfo", {nodeID: 4}, function(ret) {
                            if (ret.error) {
                                // es gab ein Problem
                            } else if (ret.result === "ok") {
                                // alles gut
                            }
                        });
                        });
                        

                        Ja, das scheint auch zu funtkionieren :-) (Ja, den RegExpkram da oben habe ich mit Blockly erzeugt und mir dann den Code genommen.)

                        1 Antwort Letzte Antwort
                        0
                        • AlCalzoneA Offline
                          AlCalzoneA Offline
                          AlCalzone
                          Developer
                          schrieb am zuletzt editiert von
                          #12

                          @nibblerrick:

                          den RegExpkram da oben `
                          kannst du durch ein Array ersetzen, ist einfacher zu ergänzen:

                          [
                            'zwave.0.NODE4.SWITCH_BINARY.Switch_1',
                            'zwave.0.NODE4.SWITCH_BINARY.Switch_2',
                            'zwave.0.NODE4.SWITCH_BINARY.Switch_3'
                          ]
                          

                          Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                          1 Antwort Letzte Antwort
                          0
                          • N Offline
                            N Offline
                            nibblerrick
                            schrieb am zuletzt editiert von
                            #13
                            on({id: [
                              'zwave.0.NODE4.SWITCH_BINARY.Switch_1',
                              'zwave.0.NODE4.SWITCH_BINARY.Switch_2',
                              'zwave.0.NODE4.SWITCH_BINARY.Switch_3'
                            ], change: "ne"}, function (obj) {
                               sendTo("zwave.0", "refreshNodeInfo", {nodeID: 4}, function(ret) {
                                if (ret.error) {
                                    // es gab ein Problem
                                } else if (ret.result === "ok") {
                                    // alles gut
                                }
                            });
                            });
                            

                            Also so. Funktioniert auch, Arrays wollte ich mir sowieso noch mal ansehen, praktischer Einstieg dafuer.

                            Wenn du noch weitere Verbesserungen hast fange ich an Versionsnummern ins Script zu schreiben :-D

                            1 Antwort Letzte Antwort
                            0
                            Antworten
                            • In einem neuen Thema antworten
                            Anmelden zum Antworten
                            • Älteste zuerst
                            • Neuste zuerst
                            • Meiste Stimmen


                            Support us

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

                            472

                            Online

                            32.7k

                            Benutzer

                            82.4k

                            Themen

                            1.3m

                            Beiträge
                            Community
                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                            ioBroker Community 2014-2025
                            logo
                            • Anmelden

                            • Du hast noch kein Konto? Registrieren

                            • Anmelden oder registrieren, um zu suchen
                            • Erster Beitrag
                              Letzter Beitrag
                            0
                            • Home
                            • Aktuell
                            • Tags
                            • Ungelesen 0
                            • Kategorien
                            • Unreplied
                            • Beliebt
                            • GitHub
                            • Docu
                            • Hilfe