openhab/openhab — pull request #607 by cdjackson (2013-11-24 23:48:15+00:00)
Title: Zwave cfg

This request contains configuration and association command classes for the Z-Wave binding. It also contains an interface to allow configuration of the ZWave nodes via HABmin. The interface is wholely contained within the binding so ZWave binding does not require HABmin, or any other binding, to run. Hopefully other zwave users can grab this and give it a test.

The configuration features use an XML product database for configuration of the zwave nodes. This database is similar to the OZW database, but due to licensing issues I've created a new version for openHAB (as discussed in the ZWave discussion group). This is quite similar to the OZW database, but has additional features including the ability to support multiple languages for labels. For information on the XML file formats, see here (https://github.com/cdjackson/HABmin/wiki/Z-Wave-Product-Database). Comments on the format are welcome. The idea is that it can be extended to add additional device information that may be of use to configure the system.

I have not hooked the device configuration into the initialisation of nodes when the binding starts - this is something that may be useful at some stage. Currently, all configuration needs to be done manually using the HABmin interface - see here (https://github.com/cdjackson/HABmin/wiki/Z-Wave-Configuration). From this interface, you can change configuration parameters and add node associations. As soon as you change the setting, the command is sent to the node. Note that currently the HABmin screen is not refreshed to provide an up to date view of the device. The information shown reflects the data stored within the binding, and you need to press the "Refresh" buttons to request an updated data set from the node.

Note also that the node data is not serialised to disk after a configuration change - again this is something that is probably a good idea, but for now I wanted to avoid embedding these features to deeply into the core of the binding. In order to save the settings to disk, you need to click on a node and click the "Save Node" button.

To install HABmin, in order to manipulate the zwave devices, check out the HABmin GitHub site (https://github.com/cdjackson/HABmin/).