Zwave
From Domoticz 2024.1 you are advised to use Zwave-JS-UI autodiscover with standard Domoticz MQTT Auto Discover client Gateway.
See wiki page Zwave-JS-UI . Domoticz version Stable 2024.2 is the last version with OpenZwave (OZW) integration.
If you have migrated to 2024.1 stable please update to 2024.2 stable to get Openzwave activated again.
!!! OpenZwave will be removed from Domoticz as the project is unfortunately abandoned by its community !!!
Domoticz use an open source library named "OpenZWave" library. It's commonly written "OZW".
===========================================================================
This method is now deprecated and you have to move to Zwave-JS-UI )
===========================================================================
As Z-Wave protocol isn't "free" not all the devices or functionnalities are known in OZW. Most devices are fully working (Fibaro, BeNext, Aeon for the most known), others are just referenced without action (fortrezz, and others, ...).
To be usable in Domoticz, you'll have first to check if your Z-Wave devices are usable with OZW. If not, follow the Adding Devices instructions to get yours included in the OpenZWave Device Database.
List: OZW devices
| OZW : Supported devices
Most USB Z-Wave Controllers will work with OZW, including the Z-Wave.me Razberry Daughter Board.
The Only Requirement is that the Z-Wave Controller is using the "Static Controller" firmware, and not the "Bridge Firmware". We are currently investigating supporting the Bridge Firmware for future releases.
| OZW : Adding-Devices
| OZW : List of open issues
| OZW : forum support
Domoticz Z-Wave forum for extra information including a subforum with compatible Z-Wave devices
Installing a Z-Wave Controller
- Plugin the (USB) Z-Wave controller device to your PC/RPi (make sure Domoticz is not running, in a terminal:
sudo service domoticz stop
) - Start Domoticz (in a terminal:
sudo service domoticz start
) - Goto menu Setup- > Hardware
- select "OpenZWave USB" for the "Type"
- Select "/dev/ttyUSB0 (or other available USB port) for the Z-Wave control device (Linux: make sure USB port stays the same after reboot)
- Enter an optional name
- Click on button Add
- select "OpenZWave USB" for the "Type"
Note: There is an issue with the Aeotec Z-Stick Gen5 (ZW090) on a Raspberry Pi 4. Solution is to use a powered USB 2.0 hub to connect the Z-Stick to the RPi4.
Razberry to OpenZWave
Got to the external instruction: https://yellington.com/2016/01/27/installing-domoticz-on-your-raspberry-with-razberry/
Installing (including) a Z-Wave device (Node)
The controller is installed according Installing a Z-Wave Controller
- Goto menu Setup -> Hardware
- Click on the Blue Setup button in the Z-Wave Controler line, the Nodes menu appears. (A RED Setup button indicates Z-Wave issues!)
- Select from the top right Node management menu "Include Node"
- Trigger the Z-Wave hardware device (normally by clicking on a button) to contact the Controller
- Check the log file (Setup -> Log) if the device is added.
- Goto the Device list (Setup -> Devices) to activate the Widgets (can be more than 1 per device).
- Manage the devices from the various tabs (Switches/Temperature/Utilities) to add timers, actions etc
Specific Node including instructions
Include Node
To include new Nodes. Trigger the Z-Wave hardware device (normally by clicking on a button) to contact the Controller and have it included to the controller and new devices created in the device list.
Checking devices connected to Nodes in Domoticz Device list
Domoticz DeviceID = 00 00 NODEID INSTANCEID. If this is for example Node 18 (hex 0x12) the ID could be 00 00 12 02. The node ID (Hex) will also be highlighted in the ID column of the Domoticz device list so you easily can make a link between Domoticz IDX and the parent Zwave Node ID. There could be multiple Domoticz devices linked to one Node.
Since version 2021.1 it is now also possible to filter the devices (expand left side bar) on NodeID.
Include Node Secure
Puts the controller into secure inclusion mode (this requires that you’ve created a security key) to add Z-Wave devices that needs secure access like locks and garage door openers. Secure devices require additional bandwidth; too many secure devices can slow down your Z-Wave network.
Exclude Node
Puts the controller into exclusion mode, so you can exclude (remove) a device. Note that you can exclude a non-secure device that’s been added to another network
Heal Network
Tells the controller to “heal” the Z-Wave network. Basically asks the nodes to tell the controller all of their neighbors so the controller can recompute optimal routing.
If Nodes are being unresponsive and Heal Network is not working, goto menu Control Panel
- click on "select operation"
- choose "refresh node info"
- select a node from the list which it's not working correct.
- click on "Go" (behind the "refresh node info")
- Wait for the selected Node to be refreshed before selecting another Node to refresh else Domoticz/Openzwave will freeze.
Network and group info
The Z-Wave network info screen is available under Setup > hardware. If there is a Z-Wave controller in the system (a USB-stick for instance), there is a "Setup" button beside it.
Click this and the list of controlled nodes appears. At the top right the node management button houses the "groups & network" button. The screen above appears.
Chord Diagram
To the left is a chord diagram that shows which nodes see each other. This is a feature of the Z-Wave mesh network; some devices do not see each other directly but communicate through intermediate nodes. This graph helps you understand how the network communicates. If the Z-Wave network controller has just started up (due to Domoticz start or reboot), it takes a while for the connections to display. Please wait a moment and return to this screen.
Hover the mouse over a node to only display the connections for that node; this makes it easier to examine specific connections.
Group table
To the right is the group table. It shows the reported groups for each node, plus the nodes that are in the group. Z-Wave groups are an essential part of a functioning system; it operates even without Domoticz or the controller active, so it is a good thing to understand how they work and how they are setup. Groups are not global, but exist per node. Each node has its own group(s), in which you can place other nodes as listeners. If two nodes (devices) have a group 2, this is not the same group. Clicking a node number shows the option to remove the node from that group. If there is a plus symbol in a group, the node has this group enabled. Click the plus symbol to add another node to that group.
An example: the tz66-d wall switch has two paddles (left and right). The left paddle controls the lamp attached to it physically. The right paddle only signals groups. The tz66-d has four groups:
- Group 1: gets a signal when the left paddle is pressed
- Group 2: gets a signal when the right paddle is pressed
- Group 3: gets a signal when the right paddle is pressed twice
- Group 4: gets a signal when the tz66-d is commanded to turn on or off.
Using the group table, you can include another node (lamp for instance) in one of the tz66d's groups. By putting it in group 2, you can control it though the right paddle. By putting another lamp in group 3, you control that one via a double tap on the right paddle, etc.
Groups also play a big role in where measurement devices (temperature for instance) send their data. Some devices (like the Aeon 4in1) can be configured to send to group 1 (where the controller and thus Domoticz is), but others just send to a fixed group, which requires a receiving device to be put in that group.
The info screen will be extended with more functionality in the future. For now it has the bare necessities ;)
There is no scene management (yet), since that can be done through Domoticz itself.
Soft Reset Controller
A Soft Reset will just restart the Z-Wave controller without removing the Nodes from its memory. When activating the Nodes will disappear from the Domoticz Node menu but will reappear (after a Domoticz restart?)
Hard Reset Controller
A Hard Reset wil set the Z-Wave controller back to Factory settings including removal of all Nodes from its memory.
Receive configuration from other controller
Send configuration to other controller
Transfer primary role
Download configuration file
Control Panel
Opens the OpenZWave control Panel with more information.
Plugins for Z-Wave
Using the BeNext Tag Reader 500 EU
First Include the device in the zwave network, you should see this in the node overview of OpenZWave
Important : Make sure the controller (node 1) is associated in the SAME GROUP of the tag reader (See Groups and Network in the OpenZWave setup)
By default no tags are programmed inside the reader.
The reader sends its current codes to OpenZWave when it is awake, to force todo this, press the tamper switch, or press the away button and scan a tag.
You also have todo this after a restart of Domoticz when you want to add/remove tags.
(Best done after all awake-nodes have been queried)
To program a new tag in the reader proceed as follow:
- 1. press the tamper switch on the reader and wait 5 seconds (to force the reader to wake up and sends its current code list)
- 2. go to the hardware setup of OpenZWave
- 3. select the tag reader from the node list.
- 4. from the 'Node Management' select the option 'Start User Code Enrollment'
- 5. press the away button on the reader, when the red light is on, scan the tag.
- 6. the tag should now be included (you can follow this in the log screen)
- 7. press the tamper switch again to force the reader to send the current code
- 8. from the 'Node Management' select the option 'User Code Management'
- 9. you should now see the new tag
- 10. make a note which Code/Value belongs to which tag
After you included a tag you can press the Home/Away button and scan your tag.
When you do this, you will receive a device update for a switch (on/off) that indicates the Home/Away status
To remove a tag from the reader:
- 1. press the tamper switch on the reader and wait 5 seconds (to force the reader to wake up and sends its current code list)
- 2. go to the hardware setup of openzwave
- 3. select the tag reader from the node list.
- 4. from the 'Node Management' select the option 'User Code Management'
- 5. select the tag you wish to remove, and press the 'remove' button
- 6. to force a quick update in the reader (specially for battery operated devices), press the tamper switch again (and wait 5 seconds)
- 7. press the 'Refresh' button, and the tag should be removed
Running Domoticz as a secondary controller
A secondary controller can receive all Z-Wave signals as the master, and thus can act also as a router in 3.20 protocol. A secondary controller can also send orders. This way, a Domoticz Z-Wave box can work as a supplementary box of its own.
To achieve this, the Domoticz version must be superior to 1660. The actually tested configurations are from Vera systems (and fibaro lite to be confirmed) as master in 3.20 version of Z-Wave and Domoticz running the Aeon S2 (given it will work also with other adapters to Domoticz).
Considerations on using a secondary controller
Please remember that Z-Wave device configuration isn't stored in the Z-Wave device so it is the master who has stored device parameters, and thus for Domoticz you'll have to reset all devices parameters.
After some tests, when Domoticz is used as secondary controller, all the parameters in the hardware tab of Z-Wave device are ignored. It's the master controller parameters which are used.
To check this, you can watch Watt consumption on a device on the Vera and on Domoticz. With no modification in Domoticz you can see the same value.
Another test with a Fibaro switch, if you use an "auto-release" you will see that it's the same as the master when using Domoticz.
Despite of those observations, Domoticz will display default value and not the primary controller value.
Steps to make Domoticz a secondary controller
- First you have to put the Master in full inclusion power mode, and then set Domoticz (through Hardware / your Z-Wave adapter) in "receive configuration from other controler" after activating vera to include domoticz.
- For the Vera, the Domoticz Z-Wave adapter is recognized as a scene controller, but not well configured.
- Then the list of device will get transferred to the Domoticz server (Hint: making a heal from Vera may speed-up things).
Generate Security Key
To generate a random security key for your OpenZwave device you can use the following command from Linux, it requires pwgen to be installed apt-get install pwgen
pwgen -s 16 1|od -A n -t x1|sed 's/ /,0x/g'|sed 's/,//'|sed 's/0x0a//'
0x46,0x6e,0x4c,0x75,0x4d,0x6f,0x6e,0x38,0x59,0x6b,0x55,0x6d,0x42,0x70,0x39,0x78
Alternatively you can take the output from this link, prefix it with 0x, remove spaces and separate with commas so it looks like the output above
Please note once you change your key, any devices already securely paired will be unable to communicate.. you should do this BEFORE including secure devices.
Configuring zwave devices through JSON
- Domoticz API/JSON URL's, section 12
Troubleshooting
Zwave nodes with Node ID 0x0000 and Type 0x0000 in the Zwave list
- Wait for re-quering to be finished (this could already solve the issue!)
- delete or rename ozwcache_0x*.xml file in /domoticz/Conf
- restart domoticz and let it finish z-wave initialization (takes longer as usual)
- on the Node tab do a device refresh on the node
- If needed wake up battery powered nodes.