I think you also need to enable debug logging for the main binding as well as the ZigBee library. I guess there is an issue during startup and for some reason it’s not configuring the channel.
The following command should enable logging on the binding.
log:set DEBUG org.openhab.binding.zigbee
Or maybe there’s some other filter on the log, but somehow I’d like to see the binding initialisation if possible.
I would not expect the motion sensor to work at the moment, but the socket probably should - I’ve tested both Bitron and SmartThings sockets along with a number of other switches.
I don’t think so - the device is working, and the “ASH” messages are low level device message issues. The problem is more likely to be in the higher level parts of the binding. Anyway, I will take a look at the logs and see what I can see…
I’m running into something similar. I’m on OH snapshot 1078 (Zigbee 2.2.0.201710251639), and have suspicions about this change. I’ve now had two devices, a GE bulb and a Centralite outlet (which has been rock solid until now), which get
2017-11-13 07:15:05.977 [WARN ] [e.core.thing.internal.profiles.ProfileCallbackImpl] - Cannot delegate update 'ON' for item 'Outlet11' to handler for channel 'zigbee:device:9b51c72d:000d6f00040494aa:000D6F00040494AA_1_switch_onoff', because no handler is assigned. Maybe the binding is not installed or not propertly initialized.
when controlling them from the UI. After resetting and rediscovering the bulb, Habmin showed it as online, but same error. Restarting the binding made no change. After restarting OH twice, the bulb is now responding and no error.
Is it possible the Zigbee binding is having issues with this ESH change?
These also had shown up in the Karaf console, but may not be related:
Exception in thread "pool-36-thread-1162" java.lang.IllegalStateException: Could not update state, because callback is missing
at org.eclipse.smarthome.core.thing.binding.BaseThingHandler.updateState(BaseThingHandler.java:289)
at org.openhab.binding.zigbee.handler.ZigBeeThingHandler.setChannelState(ZigBeeThingHandler.java:262)
at org.openhab.binding.zigbee.converter.ZigBeeChannelConverter.updateChannelState(ZigBeeChannelConverter.java:168)
at org.openhab.binding.zigbee.converter.ZigBeeConverterSwitchLevel.attributeUpdated(ZigBeeConverterSwitchLevel.java:112)
at com.zsmartsystems.zigbee.zcl.ZclCluster$1.run(ZclCluster.java:323)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Exception in thread "pool-36-thread-1185" java.lang.IllegalStateException: Could not update state, because callback is missing
at org.eclipse.smarthome.core.thing.binding.BaseThingHandler.updateState(BaseThingHandler.java:289)
at org.openhab.binding.zigbee.handler.ZigBeeThingHandler.setChannelState(ZigBeeThingHandler.java:262)
at org.openhab.binding.zigbee.converter.ZigBeeChannelConverter.updateChannelState(ZigBeeChannelConverter.java:168)
at org.openhab.binding.zigbee.converter.ZigBeeConverterSwitchOnoff.attributeUpdated(ZigBeeConverterSwitchOnoff.java:135)
at com.zsmartsystems.zigbee.zcl.ZclCluster$1.run(ZclCluster.java:323)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Probably not - at least, probably not directly. I think this change only does anything if you do a configuration update which I don’t think you’re doing here. In general at the moment there’s not a lot of configuration for ZigBee devices.
The handler missing error I think means that there was an error during the startup of the device. I think there’s a small window where the thing gets created, before the thing handler is added, and if something bad happens in that time, you end up with no handler.
So, I think you need to take a look at the log during the initialisation and see if there’s something happening there…
I messed that up a little. The last change that I saw on Cloudbees was downloaded on 17 Sept. Still sad though… or extremely improbable that the file sizes could be exactly the same.
In looking through the log, the only oddity that I could spot was a few EMBER_SOURCE_ROUTE_FAILURE, but communications seem to continue OK after they show up and everything else looked right to me (I have filtered a lot out of this).
But after another reboot, the outlet is responding without errors, so lets see if it occurs again after the big update. But if you’d like, I could open a ticket and attach the log.
This is great, big thanks to everybody contributing to development of this binding!
I’ve ordered an ETRX357USB-LRS+8M from Farnell which should arrive today. Does it need the same baud rate setting as the HUSBZB-1 (it has been mentioned that it is using the same chip)?
I’ve also order a couple of Busch-Jaeger switches and relais, we’ll see how these work. They’re using zigbee lightlink, so I guess they should. Anybody tried components from Busch-Jaeger yet?
No - it is 19200 - this will be the default in the binding.
The binding doesn’t support ZLL as it requires special keys. However, most ZLL components will also work in HA mode so they should work ok. Please report back though
2017-11-13 07:15:05.977 [WARN ] [e.core.thing.internal.profiles.ProfileCallbackImpl] - Cannot delegate update 'ON' for item 'Outlet11' to handler for channel 'zigbee:device:9b51c72d:000d6f00040494aa:000D6F00040494AA_1_switch_onoff', because no handler is assigned. Maybe the binding is not installed or not propertly initialized.
so I rolled back to OH snapshot 1072 and it hasn’t come back. There must be something in the latest builds that are causing it.
This is expected. The ZigBee binding (currently at least) recreates the thing after restart. This can take a little while as it needs to communicate with the device, and if you send a command shortly after restart then you will get this error.
I’ll likely change this logic at some point, but at the moment there are more important things to look at.
Understood, but I was referring back to the issue I was reporting here. With build 1078, the error never went away for some devices, even while Habmin reported the device as online. I could not find a way to control the devices this was happening with, unless I reset and rediscovered them. Build 1072 does not display this error, even if trying to control the device right after a restart or while it is shown as offline. And when Habmin shows a device as online, it can always be controlled.
@Solomon_M had reported similar behavior here, so it may have been due to being on a build after 1072?
This is something that I need to look at. There must be a failure (exception) during initialisation between the time the thing is created (or during thing creation), and the time the handler gets created. Unfortunately, ESH has a tendency to eat exceptions in some areas and I think this is another one of them.