My struggle with Zwave.. HEEEEELP

That is a pretty old version. If your device was added to the database recently it won’t be available. You need to upgrade to the snapshot 2.4 binding.
Be aware that there are breaking changes, so follow that post exactly:

Well according to @chris it was added 2 years ago

The device is not fully initialised. Until real values are shown here, the database will not be searched anyway. Normally when this happens it is caused by not waking up a battery device, or some other communication issue between the controller and the device.

yeah, i cannot seem to get this done, it always comes back as unknown device, even if i wake it.
it shows offline/online when i wake it in the things list in paper ui, i will try to reinclude it, maybe thats the problem?

It’s possible that it didn’t include properly - this can happen, and the controller can still think that the device is included, when it’s not.

If it still doesn’t work after re-including, then please get a debug log so we can see what is happening.

That seemed to work :smiley:
now it says:
Z-Wave Node 4: WALLC-S Wall Controller
WALLC-S Wall Controller
Wall Controller

Now lets see if i can control my fibaro double switch with it :smiley:

1 Like

well, seems to work ok, only thing i cannot seem to get is the battery level.
items

Number switchHallWayNumber "HW Number" (gDebug) { channel="zwave:device:controller:node4:scene_number" }
Number switchHallWayBattey "HW Switch Battery[%s %%]" <battery> (gBattery) { channel="zwave:device:controller:node4:battery-level" }

sitemap

Frame label="Verlichting" {
		Text item=switchHallWayNumber
		Text item=switchHallWayBattey
	}

Did you try a decimal instead of a string format?
"HW Switch Battery[%d %%]"

yes, didn’t change.

Are you sure the battery item is being updated? Check for occurrences of switchHallWayBattey in events.log to verify that it is being set.

no, its not being set.
Now the parameter says this:

Parameter 30: Send unsolicited battery report on Wake Up

Size: 1 Byte, Default Value: 1

Setting Description
0 No
1 To same node as Wake Up Notification
2 Broadcast to neighbors

so does that mean it only reports the battery report on wake up?
Cause the wake up interval is 604800 seconds.

The binding should poll the battery level when the device wakes up.

Two points:

  • you can manually wake up the device to see if the battery level gets polled/updated. The device manual usually explains how to do a manual wake up.
  • you could change the wake up interval to something that will allow it to be polled more frequently. Anywhere from 1 to 4 hours is a typical wake up interval.

hmm when i do it manually it doesn’t update, so maybe i am doing it wrong, will set the polling to a few minutes to test and see what that brings back then.

Good idea.

You also could put the zwave binding into debug mode, then check that the battery-level channel is being polled.

Note that the battery is only polled once per hour if I remember correctly. I’m not sure if this can be changed. Of course, it will only actually perform the poll after the device wakes up as well.

You also should verify that the Lifeline association is set to the Controller.

This won’t matter for the battery polling - it may impact the option I saw above about sending the battery level when the device wakes.

yeah, i tried logging to a zwave.log, but i cannot get the log4j version changed to log4j2 logging as described here My struggle with Zwave.. HEEEEELP

The lifeline association is set to OpenHAB Controller.

Try this (making sure you adapt the directory path to your installation).

### Custom Loggers ###
log4j2.logger.ZWave.name = org.openhab.binding.zwave
log4j2.logger.ZWave.level = DEBUG
log4j2.logger.ZWave.additivity = false
log4j2.logger.ZWave.appenderRefs = ZWave
log4j2.logger.ZWave.appenderRef.ZWave.ref = ZWAVE

### Custom Appenders ###
log4j2.appender.ZWave.type = RollingRandomAccessFile
log4j2.appender.ZWave.name = ZWAVE
log4j2.appender.ZWave.fileName = /opt/openhab2/userdata/logs/zwave.log
log4j2.appender.ZWave.filePattern = /opt/openhab2/userdata/logs/zwave.log.%i
log4j2.appender.ZWave.immediateFlush = true
log4j2.appender.ZWave.append = true
log4j2.appender.ZWave.layout.type = PatternLayout
log4j2.appender.ZWave.layout.pattern = %d{yyyy-MM-dd HH:mm:ss.SSS} [%-5.5p] [%-50.50c] - %m%n
log4j2.appender.ZWave.policies.type = Policies
log4j2.appender.ZWave.policies.size.type = SizeBasedTriggeringPolicy
log4j2.appender.ZWave.policies.size.size = 10MB
log4j2.appender.ZWave.strategy.type = DefaultRolloverStrategy
log4j2.appender.ZWave.strategy.max = 9

Ok, lets see if we can get something in the log :stuck_out_tongue:

15-Oct-2018 15:09:48.771 [DEBUG] [rg.openhab.binding.zwave.handler.ZWaveThingHandler] - NODE 4: Polling...
15-Oct-2018 15:09:48.774 [DEBUG] [rg.openhab.binding.zwave.handler.ZWaveThingHandler] - NODE 4: Polling zwave:device:controller:node4:switch_dimmer
15-Oct-2018 15:09:48.775 [DEBUG] [rg.openhab.binding.zwave.handler.ZWaveThingHandler] - NODE 4: Polling zwave:device:controller:node4:switch_dimmer
15-Oct-2018 15:09:48.777 [DEBUG] [rg.openhab.binding.zwave.handler.ZWaveThingHandler] - NODE 4: Polling zwave:device:controller:node4:scene_number
15-Oct-2018 15:09:48.778 [DEBUG] [rg.openhab.binding.zwave.handler.ZWaveThingHandler] - NODE 4: Polling zwave:device:controller:node4:scene_number
15-Oct-2018 15:09:48.779 [DEBUG] [rg.openhab.binding.zwave.handler.ZWaveThingHandler] - NODE 4: Polling zwave:device:controller:node4:battery-level
15-Oct-2018 15:09:48.780 [DEBUG] [ing.zwave.internal.converter.ZWaveBatteryConverter] - NODE 4: Generating poll message for BATTERY endpoint 0
15-Oct-2018 15:09:48.781 [DEBUG] [nal.protocol.commandclass.ZWaveBatteryCommandClass] - NODE 4: Creating new message for application command BATTERY_GET
15-Oct-2018 15:09:48.782 [DEBUG] [rnal.protocol.commandclass.ZWaveWakeUpCommandClass] - NODE 4: Message already on the wake-up queue. Removing original.
15-Oct-2018 15:09:48.783 [DEBUG] [rnal.protocol.commandclass.ZWaveWakeUpCommandClass] - NODE 4: Putting message SendData in wakeup queue.