I’m cheking the inclusion process in Z-Wave and I noticed a strange behaviour sniffing the packets.
Meanwhile openhab is searching for things (spining icon), the comunication with the installed device seems to go fast (packets requested from controller each few milliseconds), but once the searching process finishes (icon stops spinning), the frames slow down (>10 seconds per packet).
You can see in the image the final part of the inclusion, and how the packet rate drops in line 3316:
Just a guess, but I don’t see any Config Reports in response to the Config Gets. It seems to start with the Get on line 3310 not getting a response. If there’s no response to the Get, I suspect the binding is timing out after 5 seconds, then resending the Get for that parameter.
It’s strange, cause it’s a powered device. I don’t know either the inclusion process, so maybe just a weird coincidence? I’m just starting with the sniffer.
One thought… When a device doesn’t support a config parameter, it usually is just silent when it receives a command for that parameter. Not saying that’s the case here, but I’ve seen that behavior with some of my devices.
During the inclusion/initialization process, there will be a GET for each config parameter. If it’s consistently getting stuck on a specific parameter(s), then check to make sure the device really supports those parameters. Perhaps the device doesn’t support the parameter, or the parameter is write-only.
That means a parameter in the .xml database? I thought that during the inclusion process, a /var/lib/openhab2/zwave file is created, and the database file only affects to interact with channels from UI.
I’ll enable the full logs, and try to do it again (if possible).
This is the process to add a device to the DB, isn’t it? Then I guess that:
The initial node.xml is auto-generated from “Manufacturer Specific Report” packets or similar.
Once the DB entry is created, approved and added to the binding, the inclusion process performs extra steps to ask parameter info with “Configuration Get” packets.
Am I slightly right? Do you know a good/straight guide were it explains the inclusion process at packet-level?The Z-Wave standard it too much for me
After inclusion, the binding runs through a rather extensive process to query information from the device. This results in the creation of the node.xml file (among other things).
Separate inclusion from initialization. Inclusion is the standard z-wave process. Initialization is the process the binding goes through after inclusion. And, yes, initialization involves getting the config parameters, associations (including setting the Lifeline association), setting the wakeup interval, etc.