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.
    • 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
                                          • AlCalzone
                                            AlCalzone Developer last edited by

                                            Nächstes Problem:

                                            Wenn ich versuche, einen Greenwave NS310-F zu inkludieren, stürzt zwave mit der Meldung "cannot set manufacturer of undefined" ab. Nach einem manuellen Restart des Adapters mit der Option "force objects re-init" funktioniert es wieder.

                                            –-

                                            Edit: Mit einer weiteren Steckdose des Typs will es einfach nicht funktionieren. Das Problem scheint am code in zwave.on('value removed'… zu liegen, speziell die letzte Zeile

                                            delete nodes[nodeid];
                                            

                                            Die Steckdose schickt (warum auch immer) während dem Anmeldeprozess "value removed" Kommandos, die das zuvor in zwave.on('node added' angelegte Dummy-Objekt löschen. Beim Abschluss des Prozesses in zwave.on('node available' ist nodes[nodeid] demnach null, was zu dem Fehler führt.

                                            Habe jetzt einfach den Löschbefehl auskommentiert. Mein Problem ist weg und ich habe noch keine Nebenwirkungen bemerkt.

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            974
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

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