Testing Z-Wave binding on openHAB-2

ok I have quite some more devices that are checked as “not finished” in the database yet…
however I migrate slowly as I think I can not have the device talk to 2 zwave hubs and must remove them from my non openhab solution? :frowning:

Correct - you can only have them included into a single network at once… If you have had them running in OH1, then you should still have the XML files which can be uploaded to complete the data…

I’ve just given you edit access in the database…

ok I just updated
http://www.cd-jackson.com/index.php/zwave/zwave-device-database/zwave-device-list/devicesummary/252

a lot of information was added. one error was thrown:

Device definition contains errors
thingid contains invalid characters.

Don’t worry about this - I’ll update it… I’ve got some checks running to try and make names consistent and this probably just means that there’s a dash or some character that I’d prefer to avoid in the thingId…

This should now be available in the latest binding…

ok sorry got to ask a little more

I downloaded latest jar and restarted openhab

  1. should the “unknow device” be auto updated with the correct meta data (e.g. name, channels…) --> that does not happen to me

  2. shouldnt these newly added devices compiled to the jar be avaiable for manual adding by the + ? --> it was always showing 59 different devices there that could be added manually… number didnt change and the Aeon Siren and DLINK 110 is not listed there

sorry to ask that much :frowning:

Good question… If you added it from the inbox, then probably not. If you have added it then you’ll need to delete the thing first…

Yes - they should show up… In mine, the Siren is showing up with 60 devices showing up in the manual list. However, I’ve found an error in the database that I need to fix, and that is the ‘&’ in the title is causing a problem since this isn’t allowed in XML exports…

No problem - thanks for testing :slightly_smiling:

Just to keep you informed, I updated the docker with this release and it’s been running perfectly with no problems.

Also maybe of interest, I’ve set it up entirely with PaperUI as I didn’t like all the items it was creating in HabMin, I prefer to link my own. The only thing that was done in HabMin was set the zwave port as PaperUI wouldn’t let me for some reason.

So that’s adding the zstick with the serial device and all zwave nodes.

I like it a lot! Thanks for the mammoth effort Chris!!!

Thanks for the (positive :smile:) feedback Christian.

I’m surprised that PaperUI is doing anything different than HABmin, but I know that the setup API which at least was used by PaperUI is being deprecated. As soon as labels are supported in things, I’ll also be moving HABmin away from this API…

It’s also possible though in HABmin to use your own item names by manually enabling the channels…

@shorty707 I’ve hopefully fixed the issue with the D-Link…

updated jar -> still new things missing by manually adding via + --> 59 in the list

restartet openhab --> still 59

odd :-/

Yes - mine says 61 devices, and the DLink is there now…

I wonder if there’s any caching or something going on - what’s the filename you’re now running?

org.openhab.binding.zwave_2.0.0.201602152023

cleared chrome cache and tried another browser -> shows 59 :wink: strange

can reboot pi2 and not just stop / start openhab

will let you know when I find out :slight_smile:

The latest on the website ends with 2035 - might pay to grab this - I’m not sure if it matters or now, but given there’s a problem, it might be a good idea :wink:

–> 59 :fearful: (also rerebooted…)

cache issue or maybe need to delete the unknown devices to make these 2 visible?

edit: deleted siren --> still 59 cry

Is that with the latest version (ie ending in 2035, rather than 2023)?

yes the latest from github 2035 now…

I see an exception in the log now… however I am not sure if this is not because I deleted the “unknown siren device” or from the “dlink device” thats listed as offline … or if its related to whatever :wink:

Exception in thread "Thread-54" java.util.ConcurrentModificationException
	at java.util.ArrayList$Itr.checkForComodification(ArrayList.java:886)
	at java.util.ArrayList$Itr.next(ArrayList.java:836)
	at org.openhab.binding.zwave.discovery.ZWaveDiscoveryService.deviceAdded(ZWaveDiscoveryService.java:163)
	at org.openhab.binding.zwave.handler.ZWaveControllerHandler.deviceAdded(ZWaveControllerHandler.java:215)
	at org.openhab.binding.zwave.internal.protocol.ZWaveController.nodeDiscoveryComplete(ZWaveController.java:360)
	at org.openhab.binding.zwave.internal.protocol.ZWaveController$ZWaveInitNodeThread.run(ZWaveController.java:444)

@shorty707 Make sure the new zwave binding is really running, I have updated twice, and both time I had to stop the old binding, then uninstall it.

do “list” then look through the result, normally the new zwave binding is last, and not running, while the old is active.

@chris
Since yesterday, I have started with a new oh2, and I have better success - but there are strange things going on - I loose installed items.
There are basically two things that am wondering about in my log, the first one;

22:38:44.007 [DEBUG] [WaveSerialHandler$ZWaveReceiveThread] - Receive Message = 01 14 00 49 84 03 0E 04 11 04 26 32 27 2C 2B 70 85 72 86 EF 82 62 
22:38:44.008 [DEBUG] [ve.internal.protocol.ZWaveController] - Receive queue TAKE: Length=0
22:38:44.008 [DEBUG] [wave.internal.protocol.SerialMessage] - Assembled message buffer = 01 14 00 49 84 03 0E 04 11 04 26 32 27 2C 2B 70 85 72 86 EF 82 62 
22:38:44.008 [DEBUG] [ve.internal.protocol.ZWaveController] - Process Message = 01 14 00 49 84 03 0E 04 11 04 26 32 27 2C 2B 70 85 72 86 EF 82 62 
22:38:44.008 [DEBUG] [ve.internal.protocol.ZWaveController] - Message: class = ApplicationUpdate (0x49), type = Request (0x00), payload = 84 03 0E 04 11 04 26 32 27 2C 2B 70 85 72 86 EF 82 
22:38:44.009 [DEBUG] [essage.ApplicationUpdateMessageClass] - NODE 3: Application update request. Node information received.
22:38:44.009 [DEBUG] [essage.ApplicationUpdateMessageClass] - NODE 3: Application update request. Node not known!
22:38:44.009 [DEBUG] [ve.internal.protocol.ZWaveController] - Notifying event listeners: ZWaveInclusionEvent
22:38:44.009 [DEBUG] [ve.internal.protocol.ZWaveController] - NODE 14: Including node.
22:38:44.009 [DEBUG] [ve.internal.protocol.ZWaveController] - NODE 14: Newly included node already exists - not initialising.
22:38:44.009 [DEBUG] [.serialmessage.ZWaveCommandProcessor] - Sent message Message: class = SendData (0x13), type = Request (0x00), payload = 05 02 84 08 
22:38:44.009 [DEBUG] [.serialmessage.ZWaveCommandProcessor] - Recv message Message: class = ApplicationUpdate (0x49), type = Request (0x00), payload = 84 03 0E 04 11 04 26 32 27 2C 2B 70 85 72 86 EF 82 
22:38:44.009 [DEBUG] [.serialmessage.ZWaveCommandProcessor] - Checking transaction complete: class=ApplicationUpdate, expected=SendData, cancelled=false

This is for my third node - after a while started also to come up as node 14.

Then I have my greenwave, which seams broken, it repeatedly looks like this, with about every thirty minutes;

22:39:43.951 [DEBUG] [nitialization.ZWaveNodeStageAdvancer] - NODE 2: Stage PING. Initialisation retry timer triggered. Increased to 1800000
22:39:43.951 [DEBUG] [nitialization.ZWaveNodeStageAdvancer] - NODE 2: Node advancer - PING: queue length(0), free to send(true)
22:39:43.951 [DEBUG] [nitialization.ZWaveNodeStageAdvancer] - NODE 2: Initialisation retry timer started 1800000
22:39:43.951 [DEBUG] [nitialization.ZWaveNodeStageAdvancer] - NODE 2: Node advancer: loop - PING try 1: stageAdvanced(false)
22:39:43.951 [DEBUG] [nitialization.ZWaveNodeStageAdvancer] - NODE 2: Node advancer: PING - send NoOperation
22:39:43.951 [DEBUG] [ndclass.ZWaveNoOperationCommandClass] - NODE 2: Creating new message for command No Operation
22:39:43.951 [DEBUG] [wave.internal.protocol.SerialMessage] - NODE 2: Creating empty message of class = SendData (0x13), type = Request (0x00)
22:39:43.952 [DEBUG] [ve.internal.protocol.ZWaveController] - Enqueueing message. Queue length = 1
22:39:43.952 [DEBUG] [nitialization.ZWaveNodeStageAdvancer] - NODE 2: Node advancer - queued packet. Queue length is 1
22:39:43.952 [DEBUG] [ocol.ZWaveController$ZWaveSendThread] - Took message from queue for sending. Queue length = 0
22:39:43.952 [DEBUG] [wave.internal.protocol.SerialMessage] - Assembled message buffer = 01 08 00 13 02 01 00 25 24 E6 
22:39:43.963 [DEBUG] [WaveSerialHandler$ZWaveReceiveThread] - Receive Message = 01 04 01 13 01 E8 
22:39:43.963 [DEBUG] [ve.internal.protocol.ZWaveController] - Receive queue TAKE: Length=0
22:39:43.963 [DEBUG] [wave.internal.protocol.SerialMessage] - Assembled message buffer = 01 04 01 13 01 E8 
22:39:43.963 [DEBUG] [ve.internal.protocol.ZWaveController] - Process Message = 01 04 01 13 01 E8 
22:39:43.963 [DEBUG] [ve.internal.protocol.ZWaveController] - Message: class = SendData (0x13), type = Response (0x01), payload = 01 
22:39:43.963 [DEBUG] [l.serialmessage.SendDataMessageClass] - NODE 2: Sent Data successfully placed on stack.
22:39:48.952 [DEBUG] [wave.internal.protocol.SerialMessage] - NODE 255: Creating empty message of class = SendDataAbort (0x16), type = Request (0x00)
22:39:48.952 [DEBUG] [wave.internal.protocol.SerialMessage] - Assembled message buffer = 01 03 00 16 EA 
22:39:48.952 [DEBUG] [ocol.ZWaveController$ZWaveSendThread] - NODE 2: Sending ABORT Message = 01 03 00 16 EA 
22:39:48.953 [DEBUG] [wave.internal.protocol.SerialMessage] - Assembled message buffer = 01 03 00 16 EA 
22:39:48.953 [ERROR] [ocol.ZWaveController$ZWaveSendThread] - NODE 2: Timeout while sending message. Requeueing - 0 attempts left!
22:39:48.953 [ERROR] [l.serialmessage.SendDataMessageClass] - NODE 2: Node is DEAD. Dropping message.
22:39:50.476 [DEBUG] [WaveSerialHandler$ZWaveReceiveThread] - Receive Message = 01 07 00 13 24 01 02 8C 40 
22:39:50.476 [DEBUG] [ve.internal.protocol.ZWaveController] - Receive queue TAKE: Length=0
22:39:50.476 [DEBUG] [wave.internal.protocol.SerialMessage] - Assembled message buffer = 01 09 00 13 24 01 02 8C 00 00 4E 
22:39:50.476 [DEBUG] [ve.internal.protocol.ZWaveController] - Process Message = 01 09 00 13 24 01 02 8C 00 00 4E 
22:39:50.477 [DEBUG] [ve.internal.protocol.ZWaveController] - Message: class = SendData (0x13), type = Request (0x00), payload = 24 01 02 8C 
22:39:50.477 [DEBUG] [l.serialmessage.SendDataMessageClass] - NODE 2: SendData Request. CallBack ID = 36, Status = Transmission complete, no ACK received(1)
22:39:50.478 [ERROR] [l.serialmessage.SendDataMessageClass] - NODE 2: Node is DEAD. Dropping message.
22:39:50.478 [DEBUG] [ve.internal.protocol.ZWaveController] - Notifying event listeners: ZWaveTransactionCompletedEvent
22:39:50.478 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 2: Got an event from Z-Wave network: ZWaveTransactionCompletedEvent
22:39:50.478 [DEBUG] [nitialization.ZWaveNodeStageAdvancer] - NODE 2: Node advancer - PING: Transaction complete (SendData:Request) success(false)

Edit:
The greenwave blinks green, which means IIRC that it has lost contact with the controller. Restarting oh makes this stop for a while, until the first comms problem like above.

Any thoughts?

Not really…

The node 14 issue looks ok in itself, but it should (I think) have been detected during startup - I guess it wasn’t though? Do you put the binding into discovery mode at all?

For the Greenwave device, it just looks like it’s not responding to the ping - basically as though it’s not communicating. I don’t see why this should be any different in the OH2 binding than it was in OH1 - everything looks ok other than it just not responding (ie the message is being sent, and the controller is saying it is accepted and sent).

Just seen your edit while writing this - is the device far from the controller? Maybe the link is a bit intermittent?