org.openhab.binding.zwave
org.openhab.binding.zwave copied to clipboard
Offline / Failed Devices Are Not Marked Offline / Failed
I'm opening a new issue because I cannot reopen the old issue #1024 Unfortunately the last merged pull request #1035 did not fix this issue.
Here is the current situation (copied from my last comment): I have attached the log file (starting from the time of zwave binding restart and ending after 2 hours)
Looking at one example node:
Node 9 (Fibaro Roller Shutter) (this should be offline)
This node was marked offline at 11:07:18.711 (3 minutes after restart)
NODE 9: Setting OFFLINE
Then immediately at 11:07:18.871 it was changed to REQUEST_NIF
NODE 9: Node advancer - advancing to REQUEST_NIF
Is this the correct behavior? After it was set to OFFLINE it was changed to REQUEST_NIF?
Then at 11:08:18.990:
NODE 9: No data from device, but it was ACK'd. Possibly not supported? (Try 0)
Can you get ACK'd if the device is completely offline (power disconnected)?
Then at 11:41:31.639 (37 minutes after restart):
NODE 9: Node advancer: Restored from file - skipping static initialisation
This looks strange to me. That after 37 minutes it was decided to skip static initialisation and load from file!
Then the last Node advancer entry at 11:43:44.915:
NODE 9: Node advancer - advancing to DONE
I guess this did set the node to ONLINE! (HABmin shows that the node is online)
Then after that, there is a polling request every 30 minutes
And also a sendTransaction every ~15 minutes
All of them are failing but the device remains online.
Log file: openhab.zip
Hi @cdjackson Did you get a chance to look at the attached log?
No - not yet.
On 2018-12-06 09:51, fh-eureka[email protected]wrote:
Hi@cdjackson(https://github.com/cdjackson) Did you get a chance to look at the attached log?
— You are receiving this because you were mentioned. Reply to this email directly,view it on GitHub(https://github.com/openhab/org.openhab.binding.zwave/issues/1065#issuecomment-444813462), ormute the thread(https://github.com/notifications/unsubscribe-auth/AA_kQ1BVbKmRHrjZyeJVGMzfcw6wQpN_ks5u2OixgaJpZM4YniYV).
I'm having this issue, all my (fibaro) devices are unplugged and stored in a box, but all of them show up as ONLINE. I'm using 3.0.2-1
This seems to be an issue for alot of people, there appears to be a fix: https://community.openhab.org/t/remove-a-ghost-z-wave-node-from-habmin/6640/139
The binding needs to send a NOP prior to trying to either Remove or Replace the device.
The binding has UI elements which allow the following: "Set the device as FAILed" - which sends a ReplaceFailedNodeMessageClass "Remove device from controller" - which sends a message.RemoveFailedNodeMessageClass (but cant remove the device as it is not "Failed") finally "Heal this device" which also sends a ReplaceFailedNodeMessageClass
Since there appears to be two UI elements doing the same thing, I propose you change the "Set the device as FAILed" UI element trigger a NOP. From looking at the Forum post linked above it appears as tho there is a 4 second wait for NOP to complete (according to Celaeno1's screenshot)
Then the following workflow to remove devices from the Zwave controller in the binding will work;
- open the "ghost" thing,
- Click "Set device as FAILed"
- Click either "Remove this device from the controller" or "Heal this device" to complete the process.
so in order to detect offline devices, you would have to "Set the device as FAILed" ?
The device needs to be on a "Failed" devices list in order for it to be removed or replaced. The problem is the binding in unable to get it set in a "Failed" state.
Also it appears theres an issue with the device going into DEAD state. Quote from the Readme.md: "A battery device will be considered DEAD if the controller does not receive a wakeup notification, or some other message, within approximately twice the wakeup period. In this event, the thing will be set offline and the device considered DEAD."
This isn't happening
The binding needs to send a NOP prior to trying to either Remove or Replace the device.
This is absolutely NOT related to the FAILED issue. This issue here is an internal binding issue and not related in any way to the dongle.
yes you are right, it is a binding issue. No where have I mentioned the dongle.
Also the binding behaviour is not matching the readme.md as
Quote from the Readme.md: "A battery device will be considered DEAD if the controller does not receive a wakeup notification, or some other message, within approximately twice the wakeup period. In this event, the thing will be set offline and the device considered DEAD."
The binding needs to send a NOP prior to trying to either Remove or Replace the device.
This is absolutely NOT related to the FAILED issue. This issue here is an internal binding issue and not related in any way to the dongle.
Literally false, as you yourself accept that is the issue and that the fix is to send NOP before setting the device as FAILED
see https://community.openhab.org/t/remove-a-ghost-z-wave-node-from-habmin/6640/149 for reference
Literally false, as you yourself accept that is the issue and that the fix is to send NOP before setting the device as FAILED
No - this is totally unrelated. This issue is about devices not being marked as OFFLINE by the binding. This is only a binding issue and absolutely nothing to do with sending NOPs or anything else. You are confusing different issues - please do not mix things up.
No where have I mentioned the dongle.
Well - you didn't use the word "dongle" but you said that the binding needs to send a NOOP - and this is sent to the dongle in order to trigger a dongle feature which marks devices as failed. Again - this is unrelated to this issue and you are confusing matters.
You say that, but the results are the same, if either happened; devices being marked as OFFLINE, or devices being able to be set as FAILED, would result in them being able to be removed. Which granted is all I'm interested in being able to do, basic functionality
No - this is completely different. It is doing two completely different things. One marks the device as FAILED in the dongle so it can be removed. This is what you are talking about. The other marks the dongle as OFFLINE in the binding - this is an OH internal issue and is not related to what you are talking about. I am not going to go into this further here as it is not related to this issue.
Your issue is more complex and has been discussed a lot over the years. Please refer to the forum discuss you referenced above.