Remove a ghost Z-Wave Node from HABmin

What is the sequence you issued in Zensys tool to remove the nodes?
When I try to issue a NOP it says that it NOP is added to the queue. What to do next?
When I try to remove the node it waits with a window for a response with node information.

I follow the steps described here.

I think the Queue Override in the above steps will avoid this.

I don’t recall seeing this. Possibly the Queue Override also avoids this.

Followed the post steps and succeeded.
One more issue I noticed is after removal of the ghost nodes from the controller the “neighbors” list of nodes still includes the removed nodes. I wonder if this list will be updated after the nightly network heal process.
Have you noticed this as well?

Either nightly heal or heal the individual nodes.

@chris I haven’t had as much time as I thought… Spent a little too much time figuring out how to use Wireshark to capture a USB trace. :frowning:

But, I now have a trace of the conversation between the Zensys tool and the ZWave stick when performing the following steps in the Zensys tool.

  • Send NOP
  • Send IsFailed
  • Send RemoveFailed

I’ve marked and annotated the packets as best I could. Are you familiar with Wireshark, and, if so, could you take a look at the pcap? If not familiar with Wireshark, I might need you to help me out with the analysis.

Edit: I’ll also try the Zensys tool again, but this time without the NOP, just to see if that makes a difference.

4 Likes

@chris I ran the test using the Zensys tool without first sending the NOP. The ghost node was not removed. Without doing too much further analysis, I think I can conclude that the NOP is an important part of the process. Perhaps that’s why the removal often doesn’t work using HABmin. WDYT?

3 Likes

And, you can see in the packet list from Zensys that isFailed results in a different response from the controller. I have the full USB traces for both test scenarios, in case we need to look at all the details of what is sent/received.

With NOP

Without NOP

2 Likes

Thanks Mark - did you try sending another command other than the NOP? Eg sending the switch to ON or something like that?

No, but it’s easy enough to try. Hang on.

Thanks.

One other thing I don’t see here is the “Set Failed Node” command. In HABmin, there are 2 commands - one to set the node into the failed nodes list, and another to then delete it.

I believe that the NOP is also putting the device into the failed node list, so it would also be interesting to send the “Set Failed Node” command. I just need to find out what the command is called as I think it’s ZWave name is something like “ReplaceFailedNode”.

Sending a Basic Set before the IsFailed and RemoveFailed has the same effect as sending a NOP (i.e. the ghost node is removed).

The Zensys tool UI has three functions labeled:

  • Is Failed
  • Replace Failed
  • Remove Failed

I’ve been using Is Failed and Remove Failed.

I think the other one then is Replace Failed - I think that’s what HABmin does but I’ll check.

Yep - ReplaceFailedNode - command 0x63.

I’ll post the actual bytes from the trace for IsFailed and RemoveFailed. I’ll need your help to extract the actual zwave frame because there’s some USB protocol stuff in there, too.

IsFailed
IsFailed

RemoveFailed
RemoveFailed

The operations are being performed on node 9.

IsFailed is 0x62, and RemoveFailed is 0x61, right?

1 Like

So, if I’m reading this right, the Zensys tool is sending what you call IsFailedNodeID (0x62) followed by RemoveFailedNodeID (0x61). However, in the case of the Zensys tool, those commands must be preceded with some other command (such as NOP or BASIC SET); otherwise, the removal won’t work.

1 Like

Interesting! I have used the ReplaceFailedNode in Zensys Tools (not the new PC Controller version) to replace failed nodes and it has worked great for me. Definitely need a NOP before either a replace or remove.

If that is what Habmin is using, then that could be an issue, since you would need another device to go into inclusion mode. Or is the logic all in place for that?

But have you tried sending the ReplaceFailedNode?

No, but I’ll try that tonight. :wink:

1 Like