OH2 Z-Wave refactoring and testing... and SECURITY

Thanks @chris.

The latest test version seems to fix the issue with devices not being found (thanks @01av for testing).

The other problem with timeouts hasn’t been looked at yet - that might be a couple of days away


Thanks for the hard work Chris. I’m standing by ready to test or provide logs or whatevs to help. (Except, of course, for my day job.)

Confirmed. I downloaded the latest from the same links above. Then woke up the ‘dead’ devices and they are all back.

My Aeotec Recessed Door Sensor still shows as unknown, but that could be a database or item is still initializing. But shows green check mark and alive.

But I think also that Java error is back before the controller is found. On a restart of OH2, I see this again:

2017-02-08 19:46:30.548 [INFO ] [ing.zwave.handler.ZWaveSerialHandler] - Serial port is initialized
2017-02-08 19:46:30.605 [ERROR] [ome.core.thing.link.ThingLinkManager] - Exception occured while informing handler:null
java.lang.UnsupportedOperationException
	at java.util.AbstractList.add(AbstractList.java:148)[:1.8.0_121]
	at java.util.AbstractList.add(AbstractList.java:108)[:1.8.0_121]
	at org.openhab.binding.zwave.handler.ZWaveThingHandler.channelLinked(ZWaveThingHandler.java:432)[205:org.openhab.binding.zwave:2.1.0.201702082223]
	at org.eclipse.smarthome.core.thing.link.ThingLinkManager.informHandlerAboutLinkedChannel(ThingLinkManager.java:264)[105:org.eclipse.smarthome.core.thing:0.9.0.201701192225]
	at org.eclipse.smarthome.core.thing.link.ThingLinkManager.receiveTypedEvent(ThingLinkManager.java:304)[105:org.eclipse.smarthome.core.thing:0.9.0.201701192225]
	at org.eclipse.smarthome.core.thing.link.ThingLinkManager.receiveTypedEvent(ThingLinkManager.java:1)[105:org.eclipse.smarthome.core.thing:0.9.0.201701192225]
	at org.eclipse.smarthome.core.events.AbstractTypedEventSubscriber.receive(AbstractTypedEventSubscriber.java:50)[98:org.eclipse.smarthome.core:0.9.0.201701192225]
	at org.eclipse.smarthome.core.internal.events.OSGiEventManager$1.call(OSGiEventManager.java:192)[98:org.eclipse.smarthome.core:0.9.0.201701192225]
	at org.eclipse.smarthome.core.internal.events.OSGiEventManager$1.call(OSGiEventManager.java:1)[98:org.eclipse.smarthome.core:0.9.0.201701192225]
	at org.eclipse.smarthome.core.common.SafeMethodCaller$CallableWrapper.call(SafeMethodCaller.java:179)[98:org.eclipse.smarthome.core:0.9.0.201701192225]
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)[:1.8.0_121]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)[:1.8.0_121]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)[:1.8.0_121]
	at java.lang.Thread.run(Thread.java:745)[:1.8.0_121]
2017-02-08 19:46:30.607 [ERROR] [ome.core.thing.link.ThingLinkManager] - Exception occured while informing handler:null
java.lang.UnsupportedOperationException

I can confirm this also. Thanks @chris

1 Like

Another possible issue:
Seems like it’s only allowed to add the controller to association groups, and other nodes. Anyone else seeing this?

Sorry - I’m not sure what this means? Can you clarify the actual issue you’re seeing please?

There shouldn’t have been a change in this between the master OH2 binding and this development version (I think).

Sorry, I could be more specific - (and I believe I missed a “not” in the text above).

Other zw-nodes are not selectable when configuring association groups in a node. The only possible choice is openHab Controller.

Did this get into the snapshot release somehow? I had switched back and things were working very well again while waiting for some fixes here. But todays update seems to have broken something again. Not sure if they pulled it in?

181 | Active | 80 | 2.1.0.201702101116 | ZWave Binding

Status: UNINITIALIZED - HANDLER_INITIALIZING_ERROR Invalid type ‘{org.openhab.binding.zwave.internal.protocol.commandclass.ZWaveSwitchAllCommandClass.SwitchAllMode}’ of configuration value!

This device was working before todays apt-get update/upgrade


Nothing from the dev branch has been merged into master. I’m not really sure what you’re talking about though so can’t comment too much


@shadowmite,

I think your Things were made before the SWITCH ALL device parameter was added to Switch devices, so your Thing doesn’t have it but the binding is looking for it. I noticed the same thing when I updated the Master this morning. Nothing evil has happened so I’m not going to worry about deleting my Things.

I had a similar issue with the Sonos binding, it added CurrentAlbumArt as a channel but my things didn’t have it so there were errors. I deleted them and they came back with that channel.

I just switched back to this experimental binding trying to get something working and it won’t come up either now. What is this Switch All?? What do I need to do?

You can’t just switch back and forward between the master, and experimental bindings - it’s not possible. You have to delete everything and start again by adding all the things as it’s not compatible.

I did delete everything, I understand that. when I try to add the items back it throws that java error now.

Caused by: java.lang.IllegalArgumentException: Invalid type ‘{org.openhab.binding.zwave.internal.protocol.commandclass.ZWaveSwitchAllCommandClass.SwitchAllMode}’ of configuration value!
at org.eclipse.smarthome.config.core.ConfigUtil.normalizeType(ConfigUtil.java:78)[98:org.eclipse.smarthome.config.core:0.9.0.201702100936]
at org.eclipse.smarthome.config.core.ConfigUtil.normalizeType(ConfigUtil.java:56)[98:org.eclipse.smarthome.config.core:0.9.0.201702100936]
at org.eclipse.smarthome.config.core.Configuration.setProperties(Configuration.java:184)[98:org.eclipse.smarthome.config.core:0.9.0.201702100936]
at org.eclipse.smarthome.core.thing.binding.BaseThingHandler.updateConfiguration(BaseThingHandler.java:475)[109:org.eclipse.smarthome.core.thing:0.9.0.201702100936]
at org.eclipse.smarthome.core.thing.binding.ConfigStatusThingHandler.updateConfiguration(ConfigStatusThingHandler.java:65)[109:org.eclipse.smarthome.core.thing:0.9.0.201702100936]

you are correct, i noticed that my lights weren’t turning on and the error in the log:

17:29:28.714 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 11: Command received zwave:device:3dfe58f3:node11:switch_dimmer --> ON
17:29:28.717 [DEBUG] [ding.zwave.handler.ZWaveThingHandler] - NODE 11: Command for unknown channel zwave:device:3dfe58f3:node11:switch_dimmer with OnOffType

made me think that the channel definition for my zwave devices changed like the Sonos had, so I deleted one of the ZW3003, GE 12724 In-Wall Dimmer Things and re-added it, now it’s status is:

Status: UNINITIALIZED - HANDLER_INITIALIZING_ERROR Invalid type ‘{org.openhab.binding.zwave.internal.protocol.commandclass.ZWaveSwitchAllCommandClass.SwitchAllMode}’ of configuration value!

So I updated this morning and now none of my zwave switches work, previously I had been using the Master binding from a few days ago, so the breaking change was recent.

Yep, in my trying to fix it I lost my entire network and proceeded into a apt-get purge openhab2!! So I’m going to try out homeassistant and may be back in a few days/weeks. Hopefully the devs figure out what they borked.

I seem to have messed up things in my setup and don’t really know why


First a question about “feature:install openhab-transport-serial”, if I do and apt update, upgrade do I still have to do that?
If so is there a way I can avoid having to do so, like adding something to addons.cfg?

Secondly my switches/dimmers doesn’t react to any manipulation any more.
I do get warnings in my logs like:
18:49:27.645 [INFO ] [smarthome.event.ItemCommandEvent ] - Item ‘node5_switch_dimmer’ received command 0
18:49:27.646 [WARN ] [ome.core.thing.internal.ThingManager] - Cannot delegate command ‘0’ for item ‘node5_switch_dimmer’ to handler for channel ‘zwave:device:158c530abd3:node5:switch_dimmer’, because no thing with the UID ‘zwave:device:158c530abd3:node5’ could be found.
18:49:27.647 [WARN ] [ome.core.thing.internal.ThingManager] - Cannot delegate update ‘0’ for item ‘node5_switch_dimmer’ to handler for channel ‘zwave:device:158c530abd3:node5:switch_dimmer’, because no thing with the UID ‘zwave:device:158c530abd3:node5’ could be found.
18:49:27.647 [INFO ] [marthome.event.ItemStateChangedEvent] - node5_switch_dimmer changed from 100 to 0
Anyone have a clue what has happend?
Thanks in advance
Tommy

Please see the link below. There was a change to the framework that exposed a config bug in the ZWave binding - the configuration of the SWITCH ALL class needs to be updated. I’m not sure if there are other issues yet, but as the binding hasn’t changed I’m trying to work this all out myself


I saw some messages about updates and the unknown devices going away. I just pulled the latest snapshot JAR from the link, but I was not as lucky as the others. My Linear light bulbs are still not showing as a known device. I tried just seeing if the updated JAR would identify them. No luck, tried to re-initialize, nothing. Removed from the ZStick, re-added, and tried to discover again. No dice.

What are these devices- can you link to the database?