ZWave binding updates

This message is not linked to the secure inclusion, so I wouldn’t worry about this.

OK, I’m definitely not understanding all the underlying stuff :grinning:

Do you have sufficient logs to investigate from your side with those logs ? I can enable TRACE level and post the whole 20MB logs if it helps ?

Ok, understood, I have to say that I don’t distinguish very well between the messages, and in the first trace I posted, the processing of battery level & setpoint are very near each other and almost interleaved.
Going back tothe first block of traces, this would be

2018-10-27 10:49:56.708 [DEBUG] [WaveSerialHandler$ZWaveReceiveThread] - Receive Message = 01 09 00 04 00 02 03 80 03 43 33

This one would be the battery info?

2018-10-27 10:49:56.729 [DEBUG] [WaveSerialHandler$ZWaveReceiveThread] - Receive Message = 01 0C 00 04 00 02 06 43 03 01 02 07 2C 9B

And this one would be the setpoint info, which seems to have arrived before the entire processing of the battery info was completed…

Since I did not have this problem when using my super old Zibase and associated openHab binding with this device, I’m not sure I’ll be able to ask the vendor for support, so I guess I’m going to have to filter those “erratic” values (and very temporary as well, because after few seconds there is another message with the right value…
The concrete issue for me is that temperature graphs are “a bit” distorted by the 2000°C reported, even if for a short period of time, so basically I guess I’ll have to filter those values and ensure that they are not saved in database and don’t trigger the various alerts…

Thanks again for your help, Chris.

The first one is the battery level and the second one is the setpoint.

Maybe this device had filtering for such events?

I understand. I could add some filtering, but it’s very complex to get right, and IMHO is something that is not ZWave specific. If someone wants to add such filtering, it would probably be good to add it to the core instead so it is resolved on all bindings.

You’re welcome.

Sure, this shouldn’t be done in the binding, I agree.

1 Like

@sihui, thank you, very convenient;-) I have put this in place and will check how things go…

1 Like

Apologies if this was already covered (I did search, but it’s a long thread) but I have tried to follow the instructions, and kept my old controller.
zwave:serial_zstick:157b8d41438 (Type=Bridge, Status=INITIALIZING, Label=Z-Wave Serial Controller, Bridge=null)

(I have a Zwave plus aeonlabs USB stick in a raspberry pi running the latest snapshot).

However when I look in PaperUI I see " ZWave Plus USB Dongle" and in the log I see:

2018-10-31 13:51:09.281 [INFO ] [g.discovery.internal.PersistentInbox] - Added new thing 'zwave:serial_zstick:512' to inbox.

I tried deleting my old controller, and adding this, but I wasn’t sure how to change the thing id using PaperUI (so I wouldn’t have to update my items files). So in the end I added azwave serial controller again using Habmin, with id=157b8d41438, but then I get back in the original situation: I have a serial controller, but PaperUI (and since I see it in the log, presumably openhab itself) wants me to add another dongle.

What am I missing?

Edit: hmm. This controller doesn’t seem to find any things:
zwave:serial_zstick:157b8d41438 (Type=Bridge, Status=INITIALIZING, Label=Z-Wave Serial Controller, Bridge=null)

Maybe I just need to give in and edit my items files…

There was new core functionality added to auto-detect USB devices. That’s what you’re seeing in the Inbox – the system auto-detecting the zwave USB stick. You can ignore the one that was auto-detected.

That means I can’t ever do ‘add all’ though, which is quite annoying. Is there any advantage in using the USB devices? Presumably this new functionality was added for a reason?

You can Ignore and Show Ignored items in the Inbox. Once duplicate controller is Ignored, you should be able to use the Add All functionality.

USB Z-Wave and Zigbee controllers used to have to be manually created. They can now be discovered. You could write down all of the configuration for your existing controller, delete it, and then use the newly discovered one. Or just mark it as Ignored.

Sorry, this was wrong. The error occured between 2.2 and 2.3, at 2.3 I managed to fix it as described in

I have not been able yet to apply the same workaround on 2.4.

I used Openhab 2.3 and the old Zwavebinding. Now I update to the newest Snapshot with this new binding. Everything works fine. Only one device don’t work.

Vision Security ZS5101 Shock Sensor

I have exclude/inklude it, but now it shows me, „unknown device“.

Its a battery device and I have wakeup it, which worked at the old version, but not at the new one.

Has somebody an idea?

Hey all, and thanks for the update!

I followed the Recommended update process as per the first message, and it worked great.

These are the things I tried but that did not work well at all.

  1. defining the devices in .things without defining channels => what a mess, no device ever really worked, they initialize, then they’re ok, then they’re not and the items never worked

  2. installing via paperui worked the best, when I tried removing from paper ui and installing via addons.cfg, it failed and would not work even after a couple of restarts.
    2.a. I was not able to make zwave work at all with that process (addon via addons.cfg), I got the message:

    307 │ Active │ 80 │ 2.4.0.M5 │ org.openhab.binding.zwave
    openhab> java.lang.NoClassDefFoundError: Could not initialize class gnu.io.RXTXCommDriver thrown while loading gnu.io.RXTXCommDriver
    java.lang.NoClassDefFoundError: Could not initialize class gnu.io.RXTXCommDriver thrown while loading gnu.io.RXTXCommDriver
    java.lang.NoClassDefFoundError: Could not initialize class gnu.io.RXTXCommDriver thrown while loading gnu.io.RXTXCommDriver

My plan was to have the devices in .things files, I then gave up that idea and only kept the bridge in a .thing file and had the devices themselves being discovered and added in paperui.

If anyone has pointers about how to make it all work with static .things files for devices, I’d love to know.

here are my things files
bridge:

Bridge zwave:serial_zstick:zStickController "Z-Wave Serial Controller" [
  port="/dev/ttyACM0",
  controller_softreset="false",
  controller_master="true",
  heal_enable="true"
]

devices:

Thing zwave:device:zStickController:node45 "CWS-3101 Wall Switch" (zwave:serial_zstick:zStickController) @ "Some Room" [node_id=45]
Thing zwave:device:zStickController:node50 "Soft Remote Remote Control" (zwave:serial_zstick:zStickController) @ "Kids Room" [node_id=50]
1 Like

Please see the following thread -:

just saw this on the log by coincidence.
not sure if it is interesting

0:13:21.391 [ERROR] [ave.internal.protocol.ZWaveController] - NODE 50: Restore from config: Error deserialising XML file. com.thoughtworks.xstream.converters.ConversionException:  : ParseError at [row,col]:[427,1]
Message: XML document structures must start and end within the same entity. :  : ParseError at [row,col]:[427,1]
Message: XML document structures must start and end within the same entity.
---- Debugging information ----
message             :  : ParseError at [row,col]:[427,1]
Message: XML document structures must start and end within the same entity.
cause-exception     : com.thoughtworks.xstream.io.StreamException
cause-message       :  : ParseError at [row,col]:[427,1]
Message: XML document structures must start and end within the same entity.
class               : org.openhab.binding.zwave.internal.protocol.commandclass.ZWaveDeviceResetLocallyCommandClass
required-type       : org.openhab.binding.zwave.internal.protocol.commandclass.ZWaveDeviceResetLocallyCommandClass
converter-type      : com.thoughtworks.xstream.converters.reflection.ReflectionConverter
path                : /node/endpoints/entry/endPoint/supportedCommandClasses/entry[15]/COMMAND_CLASS_DEVICE_RESET_LOCALLY
line number         : 427
class[1]            : java.util.concurrent.ConcurrentHashMap
converter-type[1]   : com.thoughtworks.xstream.converters.collections.MapConverter
class[2]            : org.openhab.binding.zwave.internal.protocol.ZWaveEndpoint
class[3]            : org.openhab.binding.zwave.internal.protocol.ZWaveNode
version             : 1.4.7
-------------------------------

is a qubino din rail dimmer (got 16 of those)
image

Anyone know what might be causing this?
https://community.openhab.org/t/fibaro-dimmer-issues-after-upgrade/56320

Regards,
Josh

On the recent versions of openhab / zwave I have this constantly.
After a restart randomly nodes get stuck at REQUEST_NIF … also mains.
Evey restart other nodes are affected. I was thinking my slow Pi2 just can’t handle the 80 zwave devices … however I did not inestigate deeply and it could be another problem.

Hi Chris,

Great work on your zWave binding; I follow your threads and your always so responsive which makes me believe this is your full time job :wink:

Anyway; I’m running OH2.3 on a Synology NAS and I have NOT upgraded to OH2.4 but I’m running your zWave 2.4 M4 build w/o any issues.

Can you point me to where you store your zWave binding downloads so I can get the zWave 2.4 M5.x ?

Best, Jay

It sure feels like it sometimes :slight_smile: .

They aren’t stored anywhere as such - but there’s is the CI server where the builds are done, so the latest build can always be found here.