Migration from OH 1.8 #1007 to OH2 Snapshot - rules for zwave items not functioning

Greetings everyone! I’m in the process of moving from OH1 to OH2 and have hit a road block. I’ve moved my zwave.items and rule(s) over unmodified. I see my zwave devices via habmin2 all correctly. The rule I’ve imported shows up there as well. However if I do a "smarthome items list’ from the osgi console the zwave items do not show up. The other items appear, including the weather items from that 1.8 binding. I took the advice of another posting and used the designer which told me that it couldn’t resolve the reference to the items… here is the output from the zwave startup:

update org.openhab.binding.zwave
2015-09-20 10:32:34.312 [INFO ] [b.z.i.protocol.ZWaveController] - Disconnected from serial port
2015-09-20 10:32:34.315 [INFO ] [b.z.i.protocol.ZWaveController] - Stopped Z-Wave controller
2015-09-20 10:32:35.319 [INFO ] [.z.internal.ZWaveActiveBinding] - Update config, port = /dev/ttyUSB0
2015-09-20 10:32:35.327 [INFO ] [.service.AbstractActiveService] - ZWave Refresh Service has been started
osgi> 2015-09-20 10:32:35.417 [INFO ] [b.z.i.protocol.ZWaveController] - Starting Z-Wave controller
2015-09-20 10:32:35.419 [INFO ] [b.z.i.protocol.ZWaveController] - Z-Wave timeout is set to 5000ms. Soft reset is false.
2015-09-20 10:32:35.421 [INFO ] [b.z.i.protocol.ZWaveController] - Connecting to serial port /dev/ttyUSB0
2015-09-20 10:32:35.467 [INFO ] [b.z.i.protocol.ZWaveController] - Serial port is initialized
2015-09-20 10:32:35.535 [INFO ] [.service.AbstractActiveService] - ZWave Refresh Service has been shut down
2015-09-20 10:32:38.723 [INFO ] [rialApiGetInitDataMessageClass] - NODE 1: Node found
2015-09-20 10:32:38.725 [INFO ] [rialApiGetInitDataMessageClass] - NODE 2: Node found
2015-09-20 10:32:38.727 [INFO ] [rialApiGetInitDataMessageClass] - NODE 3: Node found
2015-09-20 10:32:38.729 [INFO ] [rialApiGetInitDataMessageClass] - NODE 4: Node found
2015-09-20 10:32:38.732 [INFO ] [rialApiGetInitDataMessageClass] - ZWave Controller using Controller API
2015-09-20 10:32:38.734 [INFO ] [rialApiGetInitDataMessageClass] - ZWave Controller is Primary Controller
2015-09-20 10:32:38.737 [INFO ] [rialApiGetInitDataMessageClass] - ------------Number of Nodes Found Registered to ZWave Controller------------
2015-09-20 10:32:38.739 [INFO ] [rialApiGetInitDataMessageClass] - # Nodes = 4
2015-09-20 10:32:38.741 [INFO ] [rialApiGetInitDataMessageClass] - ----------------------------------------------------------------------------
2015-09-20 10:32:40.334 [WARN ] [.o.b.z.i.p.c.ZWaveCommandClass] - NODE 2: Unsupported command class SCENE_ACTUATOR_CONF
2015-09-20 10:32:40.349 [WARN ] [.o.b.z.i.p.c.ZWaveCommandClass] - NODE 2: Unsupported command class SWITCH_ALL
2015-09-20 10:32:40.373 [WARN ] [.o.b.z.i.p.c.ZWaveCommandClass] - NODE 4: Unsupported command class SCENE_ACTUATOR_CONF
2015-09-20 10:32:40.375 [WARN ] [.o.b.z.i.p.c.ZWaveCommandClass] - NODE 4: Unsupported command class SWITCH_ALL
2015-09-20 10:32:40.393 [WARN ] [.o.b.z.i.p.c.ZWaveCommandClass] - NODE 3: Unsupported command class SCENE_ACTUATOR_CONF
2015-09-20 10:32:40.396 [WARN ] [.o.b.z.i.p.c.ZWaveCommandClass] - NODE 3: Unsupported command class SWITCH_ALL
2015-09-20 10:32:40.716 [WARN ] [.o.b.z.i.p.c.ZWaveCommandClass] - NODE 2: Unsupported command class SWITCH_ALL
2015-09-20 10:32:40.723 [WARN ] [.o.b.z.i.p.c.ZWaveCommandClass] - NODE 2: Unsupported command class SCENE_ACTUATOR_CONF
2015-09-20 10:32:40.727 [WARN ] [.o.b.z.i.p.c.ZWaveCommandClass] - NODE 2: Unknown command class 0x91
2015-09-20 10:32:40.729 [WARN ] [.o.b.z.i.p.c.ZWaveCommandClass] - NODE 2: Unsupported command class NODE_NAMING
2015-09-20 10:32:40.731 [WARN ] [.o.b.z.i.p.c.ZWaveCommandClass] - NODE 2: Unsupported command class POWERLEVEL
2015-09-20 10:32:42.578 [ERROR] [b.z.i.protocol.ZWaveController] - Exception during Z-Wave thread: Input.
java.lang.NullPointerException: null
	at org.openhab.binding.zwave.internal.protocol.initialization.ZWaveNodeStageAdvancer.advanceNodeStage(ZWaveNodeStageAdvancer.java:750) ~[na:na]
	at org.openhab.binding.zwave.internal.protocol.initialization.ZWaveNodeStageAdvancer.handleNodeQueue(ZWaveNodeStageAdvancer.java:213) ~[na:na]
	at org.openhab.binding.zwave.internal.protocol.initialization.ZWaveNodeStageAdvancer.ZWaveIncomingEvent(ZWaveNodeStageAdvancer.java:1017) ~[na:na]
	at org.openhab.binding.zwave.internal.protocol.ZWaveController.notifyEventListeners(ZWaveController.java:598) ~[na:na]
	at org.openhab.binding.zwave.internal.protocol.ZWaveController.handleIncomingRequestMessage(ZWaveController.java:223) ~[na:na]
	at org.openhab.binding.zwave.internal.protocol.ZWaveController.handleIncomingMessage(ZWaveController.java:194) ~[na:na]
	at org.openhab.binding.zwave.internal.protocol.ZWaveController.access$6(ZWaveController.java:189) ~[na:na]
	at org.openhab.binding.zwave.internal.protocol.ZWaveController$ZWaveInputThread.run(ZWaveController.java:1126) ~[na:na]
2015-09-20 10:32:45.779 [ERROR] [WaveController$ZWaveSendThread] - NODE 2: Timeout while sending message. Requeueing - 2 attempts left!
2015-09-20 10:32:45.782 [ERROR] [b.z.i.p.s.SendDataMessageClass] - NODE 2: Got an error while sending data. Resending message.
2015-09-20 10:32:45.969 [WARN ] [.o.b.z.i.p.c.ZWaveCommandClass] - NODE 4: Unsupported command class SWITCH_ALL
2015-09-20 10:32:45.973 [WARN ] [.o.b.z.i.p.c.ZWaveCommandClass] - NODE 4: Unsupported command class SCENE_ACTUATOR_CONF
2015-09-20 10:32:45.976 [WARN ] [.o.b.z.i.p.c.ZWaveCommandClass] - NODE 4: Unknown command class 0x91
2015-09-20 10:32:45.979 [WARN ] [.o.b.z.i.p.c.ZWaveCommandClass] - NODE 4: Unsupported command class NODE_NAMING
2015-09-20 10:32:45.982 [WARN ] [.o.b.z.i.p.c.ZWaveCommandClass] - NODE 4: Unsupported command class POWERLEVEL
Exception in thread "Timer-11" java.lang.NullPointerException
	at org.openhab.binding.zwave.internal.protocol.initialization.ZWaveNodeStageAdvancer.advanceNodeStage(ZWaveNodeStageAdvancer.java:750)
	at org.openhab.binding.zwave.internal.protocol.initialization.ZWaveNodeStageAdvancer$IdleTimerTask.run(ZWaveNodeStageAdvancer.java:1077)
	at java.util.TimerThread.mainLoop(Timer.java:555)
	at java.util.TimerThread.run(Timer.java:505)
2015-09-20 10:32:47.502 [ERROR] [b.z.i.protocol.ZWaveController] - Exception during Z-Wave thread: Input.
java.lang.NullPointerException: null
	at org.openhab.binding.zwave.internal.protocol.initialization.ZWaveNodeStageAdvancer.advanceNodeStage(ZWaveNodeStageAdvancer.java:750) ~[na:na]
	at org.openhab.binding.zwave.internal.protocol.initialization.ZWaveNodeStageAdvancer.handleNodeQueue(ZWaveNodeStageAdvancer.java:213) ~[na:na]
	at org.openhab.binding.zwave.internal.protocol.initialization.ZWaveNodeStageAdvancer.ZWaveIncomingEvent(ZWaveNodeStageAdvancer.java:1017) ~[na:na]
	at org.openhab.binding.zwave.internal.protocol.ZWaveController.notifyEventListeners(ZWaveController.java:598) ~[na:na]
	at org.openhab.binding.zwave.internal.protocol.ZWaveController.handleIncomingRequestMessage(ZWaveController.java:223) ~[na:na]
	at org.openhab.binding.zwave.internal.protocol.ZWaveController.handleIncomingMessage(ZWaveController.java:194) ~[na:na]
	at org.openhab.binding.zwave.internal.protocol.ZWaveController.access$6(ZWaveController.java:189) ~[na:na]
	at org.openhab.binding.zwave.internal.protocol.ZWaveController$ZWaveInputThread.run(ZWaveController.java:1126) ~[na:na]
2015-09-20 10:32:51.215 [ERROR] [WaveController$ZWaveSendThread] - NODE 4: Timeout while sending message. Requeueing - 2 attempts left!
2015-09-20 10:32:51.217 [ERROR] [b.z.i.p.s.SendDataMessageClass] - NODE 4: Got an error while sending data. Resending message.
2015-09-20 10:32:51.474 [WARN ] [.o.b.z.i.p.c.ZWaveCommandClass] - NODE 3: Unsupported command class SWITCH_ALL
2015-09-20 10:32:51.478 [WARN ] [.o.b.z.i.p.c.ZWaveCommandClass] - NODE 3: Unsupported command class SCENE_ACTUATOR_CONF
2015-09-20 10:32:51.484 [WARN ] [.o.b.z.i.p.c.ZWaveCommandClass] - NODE 3: Unknown command class 0x91
2015-09-20 10:32:51.488 [WARN ] [.o.b.z.i.p.c.ZWaveCommandClass] - NODE 3: Unsupported command class NODE_NAMING
2015-09-20 10:32:51.491 [WARN ] [.o.b.z.i.p.c.ZWaveCommandClass] - NODE 3: Unsupported command class POWERLEVEL
Exception in thread "Timer-12" java.lang.NullPointerException
	at org.openhab.binding.zwave.internal.protocol.initialization.ZWaveNodeStageAdvancer.advanceNodeStage(ZWaveNodeStageAdvancer.java:750)
	at org.openhab.binding.zwave.internal.protocol.initialization.ZWaveNodeStageAdvancer$IdleTimerTask.run(ZWaveNodeStageAdvancer.java:1077)
	at java.util.TimerThread.mainLoop(Timer.java:555)
	at java.util.TimerThread.run(Timer.java:505)
2015-09-20 10:32:52.770 [ERROR] [b.z.i.protocol.ZWaveController] - Exception during Z-Wave thread: Input.
java.lang.NullPointerException: null
	at org.openhab.binding.zwave.internal.protocol.initialization.ZWaveNodeStageAdvancer.advanceNodeStage(ZWaveNodeStageAdvancer.java:750) ~[na:na]
	at org.openhab.binding.zwave.internal.protocol.initialization.ZWaveNodeStageAdvancer.handleNodeQueue(ZWaveNodeStageAdvancer.java:213) ~[na:na]
	at org.openhab.binding.zwave.internal.protocol.initialization.ZWaveNodeStageAdvancer.ZWaveIncomingEvent(ZWaveNodeStageAdvancer.java:1017) ~[na:na]
	at org.openhab.binding.zwave.internal.protocol.ZWaveController.notifyEventListeners(ZWaveController.java:598) ~[na:na]
	at org.openhab.binding.zwave.internal.protocol.ZWaveController.handleIncomingRequestMessage(ZWaveController.java:223) ~[na:na]
	at org.openhab.binding.zwave.internal.protocol.ZWaveController.handleIncomingMessage(ZWaveController.java:194) ~[na:na]
	at org.openhab.binding.zwave.internal.protocol.ZWaveController.access$6(ZWaveController.java:189) ~[na:na]
	at org.openhab.binding.zwave.internal.protocol.ZWaveController$ZWaveInputThread.run(ZWaveController.java:1126) ~[na:na]
2015-09-20 10:32:56.597 [ERROR] [WaveController$ZWaveSendThread] - NODE 3: Timeout while sending message. Requeueing - 2 attempts left!
2015-09-20 10:32:56.599 [ERROR] [b.z.i.p.s.SendDataMessageClass] - NODE 3: Got an error while sending data. Resending message.
Exception in thread "Timer-13" java.lang.NullPointerException
	at org.openhab.binding.zwave.internal.protocol.initialization.ZWaveNodeStageAdvancer.advanceNodeStage(ZWaveNodeStageAdvancer.java:750)
	at org.openhab.binding.zwave.internal.protocol.initialization.ZWaveNodeStageAdvancer$IdleTimerTask.run(ZWaveNodeStageAdvancer.java:1077)
	at java.util.TimerThread.mainLoop(Timer.java:555)
	at java.util.TimerThread.run(Timer.java:505)

I’m at a loss for why the items are not showing up… here is my items entry:

Switch	Red_Wall_Switch "Light Switch Red Room" { zwave="2:command=switch_binary" }
Switch	Red_Wall_Outlet "Outlet Red Room"	{ zwave="3:command=switch_binary" }
Dimmer  Master_Bed_Dimmer       "Light Dimmer Master Bed [%d %%]" <slider>      { zwave="4:command=switch_multilevel" }
Switch  Master_Bed_Dimmer_Toggle        "Master Bed" <light> { zwave="4" }

The rule in question, heck the only rule at this point…

// This rule file is autogenerated by HABmin.
// Any changes made manually to this file will be overwritten next time HABmin rules are saved.

// Imports
import org.openhab.core.library.types.*
import org.openhab.core.persistence.*
import org.openhab.model.script.actions.*

// Global Variables

rule "Blue Room"
when
    	Item Red_Wall_Switch changed
then
  if ((Red_Wall_Switch == ON)) {
    sendCommand(Red_Wall_Outlet, ON)
  }
  else if ((Red_Wall_Switch == OFF)) {
    sendCommand(Red_Wall_Outlet, OFF)
  }
end

And here is an “ss” output to show that the binding is loaded…

161	ACTIVE      org.openhab.binding.http_1.8.0.201509190139
162	ACTIVE      org.openhab.action.mail_1.8.0.201509190139
163	ACTIVE      org.openhab.ui.habmin_2.0.0.201506192315
164	ACTIVE      org.openhab.binding.weather_1.8.0.201509190139
165	ACTIVE      org.openhab.io.myopenhab_2.0.0.201509190234
166	ACTIVE      org.openhab.binding.snmp_1.8.0.201509190139
167	ACTIVE      org.openhab.binding.zwave_1.8.0.201509190139
168	ACTIVE      org.openhab.binding.exec_1.8.0.201509190139
169	ACTIVE      org.openhab.persistence.rrd4j_1.8.0.201509190139
170	ACTIVE      org.openhab.persistence.logging_1.8.0.201509190139
171	ACTIVE      org.openhab.action.xmpp_1.8.0.201509190139
172	ACTIVE      org.openhab.binding.ntp_1.8.0.201509190139

Thanks in advance for the assist.
-Ben

Seems that this could be the same problem that i have. I also created this topic: Openhab2 Rules not triggered

If you find out anything or tell me how to debug it, please let me know.

Regards
Mike

I have found out a bit more. The package names have changed due to the switch to eclipse, e.g.
org.eclipse.smarthome.core.library.items.SwitchItem

You should now be able to leave the imports for standard types out, see: https://bugs.eclipse.org/bugs/show_bug.cgi?id=425456

I’ve made some progress. I’ve added a group to each of the items and now the zwave items are showing up correctly. But the rules don’t want to execute at all. still stuck there.

I figured it all out. It comes down to “state” on the Item in question…

rule “Blue Room”
when
Item Red_Wall_Switch changed
then
if (Red_Wall_Switch.state == ON) {
sendCommand(Red_Wall_Outlet, ON)
}
else if (Red_Wall_Switch.state == OFF) {
sendCommand(Red_Wall_Outlet, OFF)
}
end