Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Error/Bug
    4. Z-Wave Adapter

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Z-Wave Adapter

    This topic has been deleted. Only users with topic management privileges can see it.
    • AlCalzone
      AlCalzone Developer last edited by

      Hab es gerade mal ausprobiert, die .ready-States werden korrekt gesetzt.

      Die Fernsteuerung des Adapters funktioniert über das Setzen des States leider nicht, da ein State im "javascript.0"-Namespace erstellt wird, was im zwave-Adapter im falschen Codepfad landet. Außerdem ist der Wert des States "null" und nicht das Objekt, das ich übergebe:

      var stateName = "zwave.0.GLOBAL_ACTION";
      var newState = {action: "remove_device"};
      createState(stateName, newState, true);
      

      Im Prinzip möchte ich vom Skripting-Adapter aus in diesen Codepfad eingreifen:

      https://github.com/husky-koglhof/ioBrok … in.js#L173

      Edit: hab gerade deine Antwort gesehen, wie stelle ich das an, per JS die Funktionen auszuführen?

      1 Reply Last reply Reply Quote 0
      • V
        versteckt last edited by

        Ich schreib dir das morgen zusammen, heute bin ich schon weg vom Rechner.

        LG Christian

        1 Reply Last reply Reply Quote 0
        • V
          versteckt last edited by

          Guten Morgen!

          Meine Mädels sind alle schon unterwegs, darum gibt es um die Uhrzeit schon ein Update:

          In GitHub ist nun die Version 0.3.0 integriert.

          Damit ist es nun möglich, direkt über Javascript / VIS / etc. eine Aktion an den zWave Adapter zu übermitteln.

          Beispiel Javascript:

          // Only for Documentation, all valid actions
          var actions = ['reset', 'assign_return_route', 'delete_all_return_routes', 'create_primary', 'replace_failed_node', 'transfer_primary',
                          'replication_send', 'add_button', 'remove_button', 'add_device', 'remove_device', 'receive_config', 'refresh_node', 'remove_failed_node',
                          'has_node_failed', 'request_node_neighbor_update', 'assign_return_route', 'delete_all_return_routes', 'send_node_information', 
                          'request_network_update', 'refresh_device', 'healNetwork', 'updatenode', 'association', 'naming'];
          
          // Nodeid is always needed, get it from e.g. input from vis
          var nodeid = 10;
          // Action is always needed, get it from e.g. listbox from vis
          var action = 'naming';
          
          // ButtonID is only needed for action = adddButton, removeButton
          var buttonid = 1;
          
          // Name and Location are needed only needed for action = naming
          var deviceName = 'New Name of Device';
          var deviceLocation = 'New Location of Device';
          
          // Heal and Count are needed only needed for action = healNetwork
          var heal = true;
          var count = 5;
          
          // Group and Nodes are needed only needed for action = association
          var group = 'GROUP NAME FROM ASSOCIATIONS';
          var nodes = [1,2,3];
          
          buildAction(action, nodeid, undefined, undefined, deviceName, deviceLocation, undefined, undefined);
          
          // Build correct Action
          function buildAction(executeAction, nodeid, heal, count, device_name, device_location, groupid, nodes) {
              switch (executeAction) {
                  case 'association':
                      submitAction(executeAction, nodeid, undefined, undefined, undefined, undefined, undefined, groupid, nodes);
                      break;
                  case 'updatenode':
                      submitAction(executeAction, nodeid);
                      break;
                  case 'heal':
                      submitAction(executeAction, nodeid, undefined, undefined, undefined, heal, count);
                      break;
                  case 'add_device':
                      submitAction(executeAction);
                      break;
                  case 'remove_device':
                      submitAction(executeAction);
                      break;
                  case 'receive_config':
                      submitAction(executeAction);
                      break;
                  case 'refresh_node':
                      submitAction(executeAction, nodeid);
                      break;
                  case 'remove_failed_node':
                      submitAction(executeAction, nodeid);
                      break;
                  case 'has_node_failed':
                      submitAction(executeAction, nodeid);
                      break;
                  case 'request_node_neighbor_update':
                      submitAction(executeAction, nodeid);
                      break;
                  case 'send_node_information':
                      submitAction(executeAction, nodeid);
                      break;
                  case 'request_network_update':
                      submitAction(executeAction, nodeid);
                      break;
                  case 'refresh_device':
                      submitAction(executeAction, nodeid);
                      break;
                  case 'naming':
                      submitAction(executeAction, nodeid, undefined, device_name, device_location);
                      break;
                  case 'reset':
                      submitAction(executeAction);
                      break;
                  case 'assign_return_route':
                      submitAction(executeAction, nodeid);
                      break;
                  case 'delete_all_return_routes':
                      submitAction(executeAction, nodeid);
                      break;
                  case 'create_primary':
                      submitAction(executeAction);
                      break;
                  case 'replace_failed_node':
                      submitAction(executeAction, nodeid);
                      break;
                  case 'transfer_primary':
                      submitAction(executeAction);
                      break;
                  case 'replication_send':
                      submitAction(executeAction, nodeid);
                      break;
                  case 'add_button':
                      submitAction(executeAction, nodeid, buttonid);
                      break;
                  case 'remove_button':
                      submitAction(executeAction, nodeid, buttonid);
                      break;
                  default:
                      break;
              }
          }
          
          // Submit Action back to zWave Adapter
          function submitAction(action, nodeid, buttonid, name, location, heal, count, group, nodes) {
              if (nodeid !== undefined) {
                  if (buttonid !== undefined) {
                      setState('zwave.0.NODE' + nodeid + ".GLOBAL_ACTION", {
                          val: {nodeid: nodeid, action: action, buttonid: buttonid},
                          ack: true});
                  } else if (name !== undefined && location !== undefined) {
                      setState('zwave.0.NODE' + nodeid + ".GLOBAL_ACTION", {
                          val: {nodeid: nodeid, action: action, name: name, location: location},
                          ack: true
                      });
                  } else if (heal !== undefined) {
                      setState('zwave.0.GLOBAL_ACTION', {
                          val: {nodeid: nodeid, action: action, heal: heal, count: count},
                          ack: true
                      });
                  } else if (group !== undefined) {
                      setState('zwave.0.NODE' + nodeid + ".GLOBAL_ACTION", {
                          val: {nodeid: nodeid, action: action, group: group, target_nodeid: nodes},
                          ack: true
                      });
                  } else {
                      setState('zwave.0.NODE' + nodeid + ".GLOBAL_ACTION", {
                          val: {nodeid: nodeid, action: action},
                          ack: true
                      });
                  }
              } else {
                  setState('zwave.0.GLOBAL_ACTION', {
                      val: {action:action},
                      ack: true
                  });
              }
          }
          
          

          In diesem Beispiel wird der Name und die Location des Node 10 verändert.

          Wenn man den Befehl "buildAction(…)" dementsprechend anders parametrisiert, dann natürlich auch andere Actions.

          Man kann aber auch direkt in die Variable zwave.0.NODE<id>.GLOBAL_ACTION z.B.

          {"val":{"nodeid":10,"action":"naming","name":"New Name of Device","location":"New Location of Device"}}

          reinschreiben.

          Ich bin grade am überlegen, ob ich mir damit nicht selbst ein vis Widget baue...

          LG Christian</id>

          1 Reply Last reply Reply Quote 0
          • AlCalzone
            AlCalzone Developer last edited by

            Funktioniert einwandfrei!

            Gibt es eigentlich eine Möglichkeit, den Adapter zu updaten ohne jedesmal openzwave neu zu kompilieren?

            Okay, habe gerade nen kleinen Bug gefunden. Bei re-initialisieren des Adapters werden die GLOBAL_ACTION und ready states der einzelnen Nodes nicht gelöscht.

            1 Reply Last reply Reply Quote 0
            • V
              versteckt last edited by

              Hallo, ja ist im Plan für die nächste Version.

              Im Moment waren einfach immer Fehler drinnen, welche tlw. durch eine neue openzwave Version

              behoben wurden.

              1 Reply Last reply Reply Quote 0
              • V
                versteckt last edited by

                Hallo, ist in GitHub jetzt drinnen.

                Es wurde die preinstall.js dementsprechend angepasst.

                Wenn die beiden Dateien

                /usr/local/lib/libopenzwave.so und

                /usr/local/etc/openzwave/manufacturer_specific.xml

                existieren, wird keine erneute openzwave Installation durchgeführt.

                1 Reply Last reply Reply Quote 0
                • Lenny.CB
                  Lenny.CB Most Active last edited by

                  Hallo Christian,

                  die Version 0.3.0 ist jetzt auch bei mir drauf.

                  Installation lief ohne Fehler durch. Habe jetzt auch keine Fehler mehr im Log.

                  Nur eins wundert mich etwas. Was hat die zwave-Instanz mit der mit der rpc-Instanz zu tun?

                  Im Log habe ich Warnhinweise:

                  zwave.0	2016-03-27 10:36:32	warn	zwave.0 Object 'hm-rpc.1.CUX1200014.1.HUMIDITY' not found for stateChange
                  zwave-0	2016-03-27 10:36:30	warn	Object 'hm-rpc.1.CUX1200032.1.HUM_MAX_24H' not found for stateChange
                  

                  Das betrifft meine CuxD-Geräte die offensichtlich durch den rpc-Adapter falsch erkannt werden. (es fehlen sämtliche Humidity-Kanäle)

                  Das war mal in einer früheren rpc-Version anders.

                  Grüße, Lenny

                  1 Reply Last reply Reply Quote 0
                  • V
                    versteckt last edited by

                    Ist nur ein Logeintrag, weil alles State Changes überwacht werden.

                    Klarer Fall von, das muss noch raus.

                    Gesendet von meinem iPhone mit Tapatalk

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

                      Jetzt habe ich die letzten Stunden mit dem ZWave Adapter verbracht… Die Installation ist ein steiniger Weg 😉

                      Ist... es ist noch nicht vorbei 😉

                      Pi 3

                      Z-WAVE USB-Stick ZMEEUZB1 (ZME_UZB1)

                      Z-Wave Adapter 0.3.0

                      Fibaro Motion Sensor

                      Fibaro Wall Plug

                      Die Installation lief nicht auf Anhieb. Ich bekomme hie nicht mehr alles zusammen. Es war aber mehrmals Installation/Deinstallation angesagt. Beim letzte funktionierenden Versuch musste der Adapter ein zweites Mal gestartet werden, damit er läuft.

                      Aktueller Staus:

                      Adapter ist installiert und beendet sich erst einmal nciht mehr selbst (SIGTERM oder davor mit dem 103()).

                      Geräte sind erkannt. Der Motion Sensor sowohl auf der extra Admin Seite, als auch in den ioBroker Objekten. Der Wall-Plug nur in den ioBroker Objekten.

                      Dann diverse Versuche, Statusänderungen zue rehalten (kommen keine), dafür aber folgende Fehlermeldung im Log:

                      ! ````
                      host-rasp31 2016-04-17 19:19:53 info instance system.adapter.zwave.0 terminated with code 6 (uncaught exception)
                      zwave-0 2016-04-17 19:19:51 info node4: nop, currently not implemented
                      TypeError: 2016-04-17 19:19:51 error at Manager.ondata (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/manager.js:323:16)
                      TypeError: 2016-04-17 19:19:51 error at Decoder.add (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/socket.io-parser/index.js:247:12)
                      TypeError: 2016-04-17 19:19:51 error at Decoder.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/socket.io-parser/node_modules/component-emitter/index.js:134:20)
                      TypeError: 2016-04-17 19:19:51 error at Decoder. (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-bind/index.js:21:15)
                      TypeError: 2016-04-17 19:19:51 error at Manager.ondecoded (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/manager.js:333:8)
                      TypeError: 2016-04-17 19:19:51 error at Manager.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-emitter/index.js:131:20)
                      TypeError: 2016-04-17 19:19:51 error at Manager. (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/node_modules/component-bind/index.js:21:15)
                      TypeError: 2016-04-17 19:19:51 error at Socket.onpacket (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:229:12)
                      TypeError: 2016-04-17 19:19:51 error at Socket.onack (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:305:9)
                      TypeError: 2016-04-17 19:19:51 error at Socket. (/opt/iobroker/node_modules/iobroker.zwave/main.js:308:76)
                      TypeError: 2016-04-17 19:19:51 error Cannot read property 'split' of undefined
                      uncaught 2016-04-17 19:19:51 error exception: Cannot read property 'split' of undefined
                      zwave-0 2016-04-17 19:19:51 error Add Associaton for 3: 3
                      zwave-0 2016-04-17 19:19:51 error Remove Associaton for 3: 1
                      zwave-0 2016-04-17 19:17:58 warn Object 'web.0.connected' not found for stateChange
                      zwave-0 2016-04-17 19:17:57 warn Object 'web.0.connected' not found for stateChange
                      history-1 2016-04-17 19:16:44 info starting. Version 0.2.1 in /opt/iobroker/node_modules/iobroker.history
                      iobroker 2016-04-17 19:16:43 info exit 0
                      iobroker 2016-04-17 19:16:43 info host.rasp31 object system.adapter.history.1 created
                      host-rasp31 2016-04-17 19:16:43 info instance system.adapter.history.1 started with pid 5621
                      host-rasp31 2016-04-17 19:16:43 info object change system.adapter.history.1
                      iobroker 2016-04-17 19:16:43 info host.rasp31 object system.adapter.history.1.alive created
                      iobroker 2016-04-17 19:16:43 info host.rasp31 object system.adapter.history.1.connected created
                      iobroker 2016-04-17 19:16:43 info host.rasp31 object system.adapter.history.1.memHeapUsed created
                      iobroker 2016-04-17 19:16:43 info host.rasp31 object system.adapter.history.1.memHeapTotal created
                      iobroker 2016-04-17 19:16:43 info host.rasp31 object system.adapter.history.1.memRss created
                      iobroker 2016-04-17 19:16:43 info host.rasp31 object system.adapter.history.1.uptime created
                      iobroker 2016-04-17 19:16:43 info host.rasp31 create instance history
                      iobroker 2016-04-17 19:16:41 info add history
                      zwave-0 2016-04-17 18:39:27 warn Object 'web.0.connected' not found for stateChange
                      zwave-0 2016-04-17 18:39:26 warn Object 'web.0.connected' not found for stateChange
                      zwave-0 2016-04-17 18:38:44 warn Object 'web.0.connected' not found for stateChange
                      zwave-0 2016-04-17 18:38:43 warn Object 'web.0.connected' not found for stateChange
                      zwave-0 2016-04-17 18:35:55 warn Object 'web.0.connected' not found for stateChange
                      zwave-0 2016-04-17 18:35:53 warn Object 'web.0.connected' not found for stateChange
                      zwave-0 2016-04-17 18:35:01 warn Object 'web.0.connected' not found for stateChange
                      zwave-0 2016-04-17 18:35:00 warn Object 'web.0.connected' not found for stateChange
                      host-rasp31 2016-04-17 18:34:06 warn instance system.adapter.zwave.0 already running with pid 3472
                      zwave-0 2016-04-17 18:33:56 info node2: node dead (Undead Undead Undead), currently not implemented
                      zwave-0 2016-04-17 18:33:56 info Scan completed

                      
                      Es wurden ein Haufen Datenpunkte angelegt. Gefüllt wird allerdings keiner.
                      
                      Dann gibt es beim Adapter 4 Nodes:
                      
                      1- USB Stick
                      
                      2 - ?
                      
                      3 - Motion Sensor
                      
                      4 - Wall Plug
                      
                      ioBroker/Zustände zeigt bei dem Motion Sensor Werte an. Für den Wall-Plug (Node 4) kommen keine Werte.
                      
                      Die Meldungen nach dem Neustart des Adapters, da er nach der Fehlermeldung oben beendet wurde:
                      
                      >! ````
                      zwave-0	2016-04-17 19:39:08	info	node4: timeout, currently not implemented
                      zwave-0	2016-04-17 19:38:58	info	node2: timeout, currently not implemented
                      zwave-0	2016-04-17 19:38:52	info	node2: node dead (Undead Undead Undead), currently not implemented
                      sql-0	2016-04-17 19:38:52	info	sendTo "getHistory" to system.adapter.admin.0 from system.adapter.sql.0: {"step":null,"error":null}
                      sql-0	2016-04-17 19:38:52	info	No Data
                      admin-0	2016-04-17 19:38:52	info	sendTo "getHistory" to system.adapter.sql.0 from system.adapter.admin.0: {"id":"zwave.0.NODE3.SENSOR_MULTILEVEL.Temperature_1","options":{"end":1460914742,"count":50,"instance":"sql.0","from":true,"a
                      zwave-0	2016-04-17 19:38:48	info	nodeid 2 is now available, but maybe not ready
                      zwave-0	2016-04-17 19:38:39	info	node4: timeout, currently not implemented
                      zwave-0	2016-04-17 19:38:29	info	node4: timeout, currently not implemented
                      zwave-0	2016-04-17 19:38:19	info	node4: timeout, currently not implemented
                      zwave-0	2016-04-17 19:38:09	info	node4: timeout, currently not implemented
                      zwave-0	2016-04-17 19:37:59	info	node4: timeout, currently not implemented
                      zwave-0	2016-04-17 19:37:49	info	nodeid 4 is now available, but maybe not ready
                      zwave-0	2016-04-17 19:37:45	info	node4: timeout, currently not implemented
                      zwave-0	2016-04-17 19:37:35	info	node4: timeout, currently not implemented
                      zwave-0	2016-04-17 19:37:25	info	node4: timeout, currently not implemented
                      zwave-0	2016-04-17 19:37:15	info	node2: nop, currently not implemented
                      zwave-0	2016-04-17 19:37:11	info	node ready nodeid:1 nodeinfo:{"manufacturer":"Z-Wave.Me","manufacturerid":"0x0115","product":"ZME_UZB1 USB Stick","producttype":"0x0400","productid":"0x0001","type":"Static PC Controller","name":"ras
                      zwave-0	2016-04-17 19:37:11	info	node3: node sleep, currently not implemented
                      zwave-0	2016-04-17 19:37:11	info	node3: nop, currently not implemented
                      zwave-0	2016-04-17 19:37:07	info	node2: nop, currently not implemented
                      zwave-0	2016-04-17 19:37:03	info	nodeid 3 is now available, but maybe not ready
                      zwave-0	2016-04-17 19:37:03	info	nodeid 1 is now available, but maybe not ready
                      zwave-0	2016-04-17 19:37:02	info	driver ready: homeid = c0c36bea
                      zwave-0	2016-04-17 19:37:02	info	scanning homeid=0xc0c36bea...
                      zwave-0	2016-04-17 19:37:02	info	node255: timeout, currently not implemented
                      zwave-0	2016-04-17 19:37:01	info	connected: homeid = 1.4.0
                      zwave-0	2016-04-17 19:37:01	info	found: zwave.0.NODE3.GLOBAL_ACTION
                      zwave-0	2016-04-17 19:37:01	info	found: zwave.0.NODE3.ready
                      zwave-0	2016-04-17 19:37:01	info	found: zwave.0.NODE1.GLOBAL_ACTION
                      zwave-0	2016-04-17 19:37:01	info	found: zwave.0.NODE1.ready
                      zwave-0	2016-04-17 19:37:00	info	starting. Version 0.3.0 in /opt/iobroker/node_modules/iobroker.zwave
                      host-rasp31	2016-04-17 19:36:59	info	instance system.adapter.zwave.0 started with pid 6639
                      host-rasp31	2016-04-17 19:36:59	info	object change system.adapter.zwave.0
                      host-rasp31	2016-04-17 19:36:56	info	object change system.adapter.zwave.0
                      

                      Wenn ich irgendwie unterstützen kann (Daten liefern, usw.) gerne. Muss nur wissen, was benötigt wird.

                      VG,

                      Michael

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

                        Ergänzend:

                        Node 4.2.1

                        npm 2.14.17

                        327_iobroker_admin__objekte_motion_sensor.jpg

                        327_iobroker_admin__objekte_wall_plug.jpg

                        zwave-0	2016-04-17 20:32:55	info	node3: node sleep, currently not implemented
                        zwave-0	2016-04-17 20:32:51	info	node3: timeout, currently not implemented
                        zwave-0	2016-04-17 20:32:41	info	node3: node awake, currently not implemented
                        
                        1 Reply Last reply Reply Quote 0
                        • AlCalzone
                          AlCalzone Developer last edited by

                          Ich habe heute versucht, ein Fibaro FGS-222 Relais per ioBroker.zwave zu schalten. Nachdem sich die Installation schwierig gestaltet hat (Neustart notwendig, um das Relais richtig anzuzeigen), scheint jetzt auch die Verknüpfung nicht ordentlich zu sein.

                          Bei manuellem Schalten am Relais wird der State in ioBroker korrekt aktualisiert. Die andere Richtung will aber nicht. Setzen des States in ioBroker schaltet das Relais weder an noch aus. Es passiert einfach nichts. Ideen woran das liegen könnte?

                          1 Reply Last reply Reply Quote 0
                          • Homoran
                            Homoran Global Moderator Administrators last edited by

                            Was sagt das log?

                            ggf. z-Waveadapter auf debug schalten.

                            Gruß

                            Rainer

                            1 Reply Last reply Reply Quote 0
                            • AlCalzone
                              AlCalzone Developer last edited by

                              Im Log erscheint überhaupt nichts. Beim Filter-Dropdown ist "debug" vorausgewählt oder was meinst du mit "zwave auf debug stellen"?

                              So siehts im Ereignis-Tab aus:

                              ~~![](</s><URL url=)http://i.imgur.com/p900Fn5.png" />

                              Die gelb hinterlegten Einträge tauchen auf, wenn ich das Relais von Hand betätigte, die anderen beiden Einträge waren je 1 Versuch per "Objekte"-tab und per Skript das Teil anzuschalten – ist aber nichts passiert.~~

                              1 Reply Last reply Reply Quote 0
                              • Homoran
                                Homoran Global Moderator Administrators last edited by

                                @AlCalzone:

                                Beim Filter-Dropdown ist "debug" vorausgewählt oder was meinst du mit "zwave auf debug stellen"? `
                                Dann würde er debug ausgaben zeigen wenn er denn welche hätte 😉

                                Also im Reiter Instanzen links oben den admin mode über das Männchen-Icon aktivieren, dann in der dann rechts erscheinenden Spalte Log Stufe den Loglevel von Info auf debug schalten.

                                Gruß

                                Rainer

                                1 Reply Last reply Reply Quote 0
                                • AlCalzone
                                  AlCalzone Developer last edited by

                                  Das passiert, wenn ich im Admin-Interface den Wert umstelle:

                                  [...]
                                  zwave.0	2016-05-01 19:17:09	debug	inMem message * system.adapter.javascript.0.alive
                                  zwave-0	2016-05-01 17:17:05	debug	That's ok, ready Object do nothing
                                  zwave-0	2016-05-01 17:17:05	debug	stateChange for zwave.0.NODE4.SWITCH_BINARY.Switch_1 found state = {"val":true,"ack":false,"ts":1462123025,"q":0,"from":"system.adapter.admin.0","lc":1462123025}
                                  inMem	2016-05-01 17:17:05	debug	message * zwave.0.NODE4.SWITCH_BINARY.Switch_1 val=true, ack=false, ts=1462123025, q=0, from=system.adapter.admin.0, lc=1462123025
                                  zwave-0	2016-05-01 17:17:05	debug	That's ok, ready Object do nothing
                                  [...]
                                  

                                  Das beim Versuch via JS:

                                  19:20:30.528	[debug]	inMem message * script.js.Test
                                  19:20:30.529	[debug]	zwave.0 objectChange for script.js.Test found, obj = {"common":{"name":"Test","engineType":"Javascript/js","source":"setState(\"zwave.0.NODE4.SWITCH_BINARY.Switch_1\"/*zwave.0.NODE4.SWITCH_BINARY.Switch_1*/, true, true)","enabled":true,"engine":"system.adapter.javascript.0"},"type":"script","_id":"script.js.Test"}
                                  19:20:30.677	[info]	javascript.0 Start javascript script.js.Test
                                  19:20:30.680	[info]	javascript.0 script.js.Test: registered 0 subscriptions and 0 schedules
                                  

                                  Das bei manueller Betätigung:

                                  zwave.0	2016-05-01 19:21:26	debug	zwave.0 That's ok, ready Object do nothing
                                  zwave.0	2016-05-01 19:21:26	debug	zwave.0 stateChange for zwave.0.NODE4.SWITCH_BINARY.Switch_1 found state = {"val":false,"ack":true,"ts":1462123287,"q":0,"from":"system.adapter.zwave.0","lc":1462123287}
                                  zwave.0	2016-05-01 19:21:26	debug	inMem message * zwave.0.NODE4.SWITCH_BINARY.Switch_1
                                  zwave.0	2016-05-01 19:21:26	debug	zwave.0 Value changed: zwave.0.NODE4.SWITCH_BINARY.Switch_1 from false to false
                                  zwave.0	2016-05-01 19:21:26	debug	zwave.0 Nothing todo for zwave.0.NODE4.SWITCH_BINARY.Switch_1
                                  zwave.0	2016-05-01 19:21:26	debug	zwave.0 ----------> DIFF (1) D, [object Object]|undefined, ["acl"]
                                  zwave.0	2016-05-01 19:21:26	debug	zwave.0 ####################################### zwave.0.NODE4.SWITCH_BINARY.Switch_1
                                  zwave.0	2016-05-01 19:21:26	debug	zwave.0 ##### Value added: zwave.0.NODE4.SWITCH_BINARY.Switch_1 = false index = 0 comclass = 37 instance = 1
                                  zwave.0	2016-05-01 19:21:26	debug	zwave.0 -----------> NODE: 4-----37-----{"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,"wr
                                  zwave.0	2016-05-01 19:21:26	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":fals
                                  
                                  1 Reply Last reply Reply Quote 0
                                  • Homoran
                                    Homoran Global Moderator Administrators last edited by

                                    so, jetzt bin ich leider raus - für mich sieht es so aus, dass ack nicht auf true geht.

                                    da muss versteckt nochmal ran.

                                    Dankke für die ausführliche Doku.

                                    Gruß

                                    Rainer

                                    1 Reply Last reply Reply Quote 0
                                    • AlCalzone
                                      AlCalzone Developer last edited by

                                      Alles klar, dann werde ich mal abwarten was er dazu sagen kann. Danke schonmal!

                                      1 Reply Last reply Reply Quote 0
                                      • AlCalzone
                                        AlCalzone Developer last edited by

                                        Da mein Problem relativ dringend war, habe ich mir jetzt temporär mit einer Anpassung der main.js beholfen. Unter Zeile 506 (Stand v0.3.0) habe ich folgenden Code eingefügt:

                                                                        	case "changeValue2":
                                                                        		var nodeId = state.val.nodeId;
                                                                        		var commclass = state.val.commandclass;
                                                                        		var instance = state.val.instance;
                                                                        		var index = state.val.index;
                                                                        		var value = state.val.value;
                                        
                                                                        		adapter.log.info("setValue: nodeid=" + nodeId + "; comclass=" + commclass + "; instance=" + instance + "; index=" + index + "; value=" + value);
                                                                        		zwave.setValue(nodeId, commclass, instance, index, value);
                                        
                                                                        		break
                                        
                                        

                                        und schalte das Relais jetzt mit Code ähnlich dem der zum aktivieren des Inclusion-Modus (siehe Seite 5) verwendet wird:

                                        setState("zwave.0.NODE5.GLOBAL_ACTION"/*GLOBAL_ACTION*/, {
                                            val: {action: 'changeValue2', nodeId: 5, commandclass: 37, instance: 1, index: 0, value: false},
                                            ack: true
                                        });
                                        

                                        Nicht schön, aber funktioniert vorerst. Vielleicht hilft das ja, den Bug einzugrenzen.

                                        1 Reply Last reply Reply Quote 0
                                        • AlCalzone
                                          AlCalzone Developer last edited by

                                          Nächster Bug-Report:

                                          Wenn ich meinen Fibaro FGS212 einbinde, erscheint die Info korrekt im Event Log:

                                           node ready nodeid:3 nodeinfo:{'manufacturer':'FIBARO System','manufacturerid':'0x010f','product':'FGS212 Switch 3kW','producttype':'0x0402','productid':'0x1002','type':'Binary Power Switch','name':'','loc':''}
                                          

                                          und der Switch lässt sich auch ansprechen.

                                          Allerdings scheint das Objekt im ioBroker nicht vollständig angelegt zu werden:

                                          ~~![](</s><URL url=)http://i.imgur.com/ElP0jT2.png" />

                                          ~~![](</s><URL url=)http://i.imgur.com/tE4JVdF.png" />

                                          Neustart des zwave-Adapters behebt den Fehler:

                                          ~~![](</s><URL url=)http://i.imgur.com/xrA5HaJ.png" />

                                          ![](</s><URL url=)http://i.imgur.com/OQOB4rx.png" />~~~~~~

                                          1 Reply Last reply Reply Quote 0
                                          • AlCalzone
                                            AlCalzone Developer last edited by

                                            Und noch einer:

                                            Im eingebauten Konfigurator kann ich Werte nur setzen, wenn sie sich vom ursprünglichen Wert unterscheiden.

                                            Beispiel 1:

                                            Ursprungswert: 10, setze auf 15 (funktioniert), setze auf 20 (funktioniert).

                                            Der Konfigurator zeigt weiterhin 10 als Vergleichswert neben dem Eingabefeld an.

                                            Beispiel 2:

                                            Ursprungswert: 10, setze auf 15 (funktioniert), setze zurück auf 10 (<u>funktioniert nicht</u>, kein Kommando wird übermittelt, Wert bleibt 15)

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            744
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            13
                                            110
                                            25633
                                            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