I’ve just bought a Danfoss Ally radiator valve that i’m trying to use with the OpenHAB Zigbee binding.
According to the packaging/manual the device is a Zigbee Certified Product.
The device is temporariy reported as being ONLINE but the channel values remain at NULL and some error messages are present in the Log.
OpenHABian 3.0.1
R-Pi 4B 4GB
SMaBiT (Bitron Video) ZigBee USBstick (recognized as Ember coordinator)
I was unable to propperly install the device through Discovery. It would report OFFLINE (HANDLER_INITIALIZING_ERROR): No supported clusters and show no Channels.
I then installed the valve using the “Install Code” published on the device.
Now it reports as ONLINE and shows the proper Channels.
However when i link Items to the Channels, their values remain at NULL.
Changes to the setpoint on via the turn knob on the physical device, do not reflect in the values of the Items.
I can set the Item state (e.g. Setpoint to 30°C), but this will not change the setpoint on the physical Device.
The antenna icon on the device display is OFF (not visible)
I can push the push button on the device and the antenna symbol starts blinking momentarily.
The error messages from Fronttail:
2021-02-08 19:25:19.055 [INFO ] [openhab.event.InboxAddedEvent ] - Discovery Result with UID ‘zigbee:device:01370A08:14b457fffed6356b’ has been added.
==> /var/log/openhab/openhab.log <==
2021-02-08 19:25:47.672 [WARN ] [zsmartsystems.zigbee.ZigBeeExecutors] - Uncaught exception in thread NotificationService-thread-30
java.lang.NullPointerException: null
at org.openhab.binding.zigbee.handler.ZigBeeThingHandler.nodeUpdated(ZigBeeThingHandler.java:872) ~[?:?]
at com.zsmartsystems.zigbee.ZigBeeNetworkManager$14.run(ZigBeeNetworkManager.java:1733) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) ~[?:?]
at java.lang.Thread.run(Thread.java:834) [?:?]
2021-02-08 19:25:53.282 [WARN ] [zsmartsystems.zigbee.ZigBeeExecutors] - Uncaught exception in thread NotificationService-thread-26
java.lang.NullPointerException: null
at org.openhab.binding.zigbee.handler.ZigBeeThingHandler.nodeUpdated(ZigBeeThingHandler.java:872) ~[?:?]
at com.zsmartsystems.zigbee.ZigBeeNetworkManager$14.run(ZigBeeNetworkManager.java:1733) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) ~[?:?]
at java.lang.Thread.run(Thread.java:834) [?:?]
2021-02-08 19:25:56.001 [WARN ] [zsmartsystems.zigbee.ZigBeeExecutors] - Uncaught exception in thread NotificationService-thread-29
java.lang.IllegalArgumentException: Provider for thing zigbee:device:01370A08:14b457fffed6356b cannot be determined because it is not known to the registry
at org.openhab.core.thing.internal.ThingManagerImpl$1$1.run(ThingManagerImpl.java:261) ~[?:?]
at org.openhab.core.thing.internal.ThingManagerImpl$1$1.run(ThingManagerImpl.java:1) ~[?:?]
at java.security.AccessController.doPrivileged(Native Method) ~[?:?]
at org.openhab.core.thing.internal.ThingManagerImpl$1.thingUpdated(ThingManagerImpl.java:256) ~[?:?]
at org.openhab.core.thing.binding.BaseThingHandler.updateProperties(BaseThingHandler.java:474) ~[?:?]
at org.openhab.binding.zigbee.handler.ZigBeeThingHandler.nodeUpdated(ZigBeeThingHandler.java:874) ~[?:?]
at org.openhab.binding.zigbee.handler.ZigBeeThingHandler.nodeAdded(ZigBeeThingHandler.java:815) ~[?:?]
at com.zsmartsystems.zigbee.ZigBeeNetworkManager$14.run(ZigBeeNetworkManager.java:1731) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) ~[?:?]
at java.lang.Thread.run(Thread.java:834) [?:?]
2021-02-08 19:25:56.009 [INFO ] [bee.discovery.ZigBeeDiscoveryService] - 14B457FFFED6356B: Starting ZigBee device discovery
==> /var/log/openhab/events.log <==
2021-02-08 19:26:02.676 [INFO ] [openhab.event.InboxRemovedEvent ] - Discovery Result with UID 'zigbee:device:01370A08:14b457fffed6356b' has been removed.
2021-02-08 19:26:02.691 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'zigbee:device:01370A08:14b457fffed6356b' changed from UNINITIALIZED to INITIALIZING
2021-02-08 19:26:02.699 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'zigbee:device:01370A08:14b457fffed6356b' changed from INITIALIZING to UNKNOWN
2021-02-08 19:27:59.988 [INFO ] [ab.event.ThingStatusInfoChangedEvent] - Thing 'zigbee:device:01370A08:14b457fffed6356b' changed from UNKNOWN to ONLINE
4 Hours later, the device status changed to OFFLINE.
Could it be that the Binding is not (yet) compatible with this device?
Can i contribute, to make it work?
Hey @chris,
Sorry took a bit longer to take care about the problem.
Seems the Danfoss Ally is going offline after some time and I am not sure if the device is unknown, because it is registered as generic zigbee device.
I am using a SMaBiT 40356494 Speedport W102 Stick with a Silicon Labs Ember 3587 radio module.
You will find the xml files attach and I will collect the logs and the firmware version asap.
Hi @chris
I found already in the normal logs errors for Zigbee
2022-02-20 20:15:04.357 [WARN ] [mmon.WrappedScheduledExecutorService] - Scheduled runnable ended with an exception:
java.lang.NullPointerException: null
at org.openhab.binding.zigbee.ember.handler.EmberHandler.setGroupRegistration(EmberHandler.java:365) ~[?:?]
at org.openhab.binding.zigbee.ember.handler.EmberHandler.initializeDongleSpecific(EmberHandler.java:120) ~[?:?]
at org.openhab.binding.zigbee.handler.ZigBeeCoordinatorHandler.initialiseZigBee(ZigBeeCoordinatorHandler.java:551) ~[?:?]
at org.openhab.binding.zigbee.handler.ZigBeeCoordinatorHandler.lambda$2(ZigBeeCoordinatorHandler.java:559) ~[?:?]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515) ~[?:?]
at java.util.concurrent.FutureTask.run(FutureTask.java:264) ~[?:?]
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304) ~[?:?]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?]
at java.lang.Thread.run(Thread.java:829) [?:?]
2022-02-20 21:18:57.944 [ERROR] [ng.zigbee.handler.ZigBeeThingHandler] - null: Exception creating channels
java.lang.NullPointerException: null
at java.util.concurrent.ConcurrentHashMap.get(ConcurrentHashMap.java:936) ~[?:?]
at com.zsmartsystems.zigbee.ZigBeeNetworkManager.getNode(ZigBeeNetworkManager.java:1648) ~[bundleFile:?]
at org.openhab.binding.zigbee.handler.ZigBeeCoordinatorHandler.getNode(ZigBeeCoordinatorHandler.java:987) ~[bundleFile:?]
at org.openhab.binding.zigbee.handler.ZigBeeThingHandler.createZigBeeChannelConverter(ZigBeeThingHandler.java:525) ~[bundleFile:?]
at org.openhab.binding.zigbee.handler.ZigBeeThingHandler.initializeDevice(ZigBeeThingHandler.java:507) ~[bundleFile:?]
at org.openhab.binding.zigbee.handler.ZigBeeThingHandler.doNodeInitialisation(ZigBeeThingHandler.java:377) [bundleFile:?]
at org.openhab.binding.zigbee.handler.ZigBeeThingHandler$1.call(ZigBeeThingHandler.java:227) [bundleFile:?]
at org.openhab.binding.zigbee.handler.ZigBeeThingHandler$1.call(ZigBeeThingHandler.java:1) [bundleFile:?]
at java.util.concurrent.FutureTask.run(FutureTask.java:264) [?:?]
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304) [?:?]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?]
at java.lang.Thread.run(Thread.java:829) [?:?]
Hey @chris,
Found another exception, when try to execute a command:
2022-02-22 08:17:50.195 [ERROR] [nal.common.AbstractInvocationHandler] - An error occurred while calling method 'ThingHandler.handleCommand()' on 'org.openhab.binding.zwave.handler.ZWaveThingHandler@1bbe759': null
java.lang.NullPointerException: null
at org.openhab.binding.zwave.internal.converter.ZWaveThermostatSetpointConverter.receiveCommand(ZWaveThermostatSetpointConverter.java:148) ~[?:?]
at org.openhab.binding.zwave.handler.ZWaveThingHandler.handleCommand(ZWaveThingHandler.java:1205) ~[?:?]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:?]
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?]
at org.openhab.core.internal.common.AbstractInvocationHandler.invokeDirect(AbstractInvocationHandler.java:154) [bundleFile:?]
at org.openhab.core.internal.common.InvocationHandlerSync.invoke(InvocationHandlerSync.java:59) [bundleFile:?]
at com.sun.proxy.$Proxy198.handleCommand(Unknown Source) [?:?]
at org.openhab.core.thing.internal.profiles.ProfileCallbackImpl.handleCommand(ProfileCallbackImpl.java:80) [bundleFile:?]
at org.openhab.core.thing.internal.profiles.SystemDefaultProfile.onCommandFromItem(SystemDefaultProfile.java:48) [bundleFile:?]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:?]
at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
at java.lang.reflect.Method.invoke(Method.java:566) ~[?:?]
at org.openhab.core.internal.common.AbstractInvocationHandler.invokeDirect(AbstractInvocationHandler.java:154) [bundleFile:?]
at org.openhab.core.internal.common.Invocation.call(Invocation.java:52) [bundleFile:?]
at java.util.concurrent.FutureTask.run(FutureTask.java:264) [?:?]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128) [?:?]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628) [?:?]
at java.lang.Thread.run(Thread.java:829) [?:?]
What version of the binding are you using, and what version of the firmware? Also, please provide full debug logs - the standard INFO level logging is nearly useless for debug purposes.
The firmvare in the bitronvideo stick must be upgraded to handle (some of ?) the newer zigbee v3 devices.
If not, the device may leave the zigbee network after some seconds/minutes.
Edit: Chris can confirm if this is the case with a debug log
hey @chris, hey @NilsOF,
The BV 2010/10 (ZigBee USB dongle) is running on the Firmware 5.8.1.0.
I reinstalled the openHAB ZigBee Binding in the version 3.2.0 to ensure that the latest binding is installed.
Is a update required or shall I proceed to collect the debug logs?
This is very old firmware. For ZB3.0 devices, you need a version newer than 6.4 if my memory serves me correctly (it’s in the OH ZigBee binding docs, but I think this is correct).