Choosing a Z-Wave Controller
Choosing a Z-Wave controller can be difficult, they all do similar things, but in different ways. So it's a very subjective decision - depending on the user's needs. This guide is our attempt to explain the choices available and the differences between the Z-Wave controllers offered by Vesternet. In the process, we explain the various features and points to consider when choosing your controller. It's very subjective, so there are no right and wrong answers, and no "one size fits all" approach. You may disagree with our thoughts - and that's fine as it really is subjective.
What does the Controller do?
Before we go too far, lets just cover what the Z-Wave controller does.
The controller, sometimes called the hub or gateway, controls your Z-Wave system. It enables you to add and configure devices and to create and run 'scenes' that enable the system to do things automatically, such as turn on lights based on motion or time. The controller also allows remote access via the Internet or smartphone even when you are away from home.
There are two general types of Z-Wave controller - software-based systems that run on a PC, Mac or server, and dedicated 'Gateway' hardware units. So the first thing to consider, is which of these types will most suit your requirements.
These are also know as a 'Hub' or 'Bridge'. A Gateway is a physical unit that connects to your router using an Wi-Fi or an Ethernet cable. This allows you to control the system from a smartphone, tablet or computer (via the Wi-Fi router) and allows remote access even when you're away from home, via the Internet. In order to control the system from your Smartphone/tablet you install an app for that controller, this gives you control whether you're in the lounge or sitting on the beach.
A Gateway offers you an easy to install system as they include all software in a self contained unit - just plug-in, boot it up and in a few minutes you're ready to build your home automation system.
The full range of Vesternet gateways is at - Vesternet Home Automation Gateways
A software controller is a dedicated software program that runs on a PC, Mac or small single-board computer like RaspBerry Pi.
You will need a computer that is running 24/7 as the home automation will need to run scenes at different times of the day. You also need a USB adapter (sometimes called a 'stick' or 'dongle') - this enables the computer to talk wirelessly to the home automation system.
Popular software controllers are HomeSeer (PC), Indigo (Mac), Domoticz (free) and OpenHab (free).
A software based system makes sense if you already have a computer acting as a server for other things in your home, or acting as a media server. Otherwise it makes sense to use a dedicated Gateway as your controller as it will be easier to install, less expensive and probably use less power.
The full range of software and adapters is at - Vesternet Home Automation software & adapters
The Vesternet Controller Line-up
The controllers we're going to look at are:
- VERA Gateways
VERA offers the lowest cost full Z-Wave controller gateways available, they may be low cost but they can keep up with all other controllers. VERA offer two controllers. The VERA Edge is the lowest cost and gives you all the features and functions you need. The VERA Pro has the same features as its smaller brother but also adds support for other technologies such as ZigBee and Bluetooth.
- Fibaro Gateways
Fibaro controllers include an intuitive User Interface (UI) and dedicated 'panels' for controlling heating, alarms etc. Fibaro also offer two controller options. The full featured Home Center 2 (HC2) and the smaller, less featured Home Center Lite (HCL), the main difference is that the HCL does not support advanced scripting and has less flexible programming capabilities.
- Athom Homey Smart Hub
Homey is a versatile controller with a really easy-to-use interface (UI). It features 7 other wireless technologies (like zigbee and LightwaveRF) next to Z-Wave, and has an open platform for extended capabilities.
- Homeseer Gateways and Software
Homeseer offer the most advanced home automation software and gateways available. The HS3 software is available to run on a Windows PC and is also included in all the Homeseer hardware gateways.
- Zipabox Gateways
Cloud-based controller featuring an intuitive user interface and 'rule-creator' scene builder and unique range of expansion modules.
- Indigo Software
Indigo is the advanced smart home Software for Mac OS X, compatible with hundreds of Z-Wave, INSTEON and other smart devices. Over 100 plugins to other devices make it the most powerful software solution available for Mac.
In day to day use, there is little difference between a software or hardware gateway solution, as you will be interacting with the system's User Interface (UI). This guide looks at the UI and software features for our main controller solutions.
Things to consider
As I said earlier, most controllers do similar things but in different ways, or some are more easy to use than others. Which one's best for you will depend on what you want from a controller, how technically minded you are, and what type of Z-Wave system you're looking to create. A simple system for controlling a few lights will be suited to all controllers, but may make sense for you to select the one that is easy to use. For more complex systems where you want a lot of things happening automatically, or controlling multi-zoned heating, then a more advanced controller will be a better option. Below are the things we feel are important and our opinion on how each controller meets these requirements.
User Interface and Ease of Use
Each of the controllers has their own User Interface (UI), you use this when you 'log-in' to the controller. This is the normal way you will use the controller when adding devices, configuring the system and creating automation scenes. All the controllers use a browser to access the system, Indigo also offer a dedicated Mac App that can run on sever Macs, giving different users access to the system from their Mac.
Some UIs are deigned to be more easy to use - they typically are more graphical and some have wizards for common tasks. Others are less easy to use and require you to do more behind the scenes work to make things work the way you wish. In general, the controllers we sell have worked hard to make their UIs easy to use, there is actually very little difference between them regarding ease of use.
Remember, other than configuration and housekeeping tasks, you will spend most of the time controlling the system from a phone or tablet app. So whilst the UI is important, the apps are just as important, especially for the people who will not be accessing the controller directly but controlling it from their phone (probably everyone else in the family).
Fibaro Home Center UI v4
Device support is important for all controllers. In theory all Z-Wave devices will work with any controller, but the reality is that some devices use different parts of the Z-Wave specification, or omit the less common Z-Wave classes. This throws up the occasional issue where particular devices don't work well with some controllers, or some types of device (such as locks) aren't supported at all by a controller. This doesn't mean there is an issue with the controller, just that the controller vendor chose not to support particular Z-Wave classes (such as security) or they've not released firmware to catch up with the latest versions of Z-Wave commands.
There are two ways that controllers enable support for devices. The first is to have a template for each and ever device, this makes adding devices very easy but does rely on the controller vendor adding support for particular devices. The other way is to have generic support and then the user (you) add specific device parameters which are usually available in the device user guides.
The first option (template driven) is used by Fibaro, Homey, Indigo, VERA and Zipato. Although with the exception of Zipato, you can easily add specific device parameters - this enables advanced users to add support for complex devices and features that may not be supported by default. Homey have a slightly different approach in that the Homey community members can create device support apps - this way you do not have to wait for Homey to release a new firmware version with support for your device.
Scenes are what bring your Z-Wave system to life, they enable you to control various devices with one single command. The scene can be activated manually by you, from a sensor or other device on the network, or by a timer, so things happen at particular times or even sunset/sunrise. For instance a scene can be activated by a motion sensor to automatically turn several light on (at different brightness levels) as well as an appliance, and then after a set period of time turn the lights off. Other lights can turn on at sunset and then off again at sunrise.
Scenes are created and edited in the Controller's UI and can then be triggered by other devices or manually from within the UI or an App running on your phone or tablet. Each of the controllers has a graphical scene editor which enables you to build scenes varying in complexity, however, there are differences in capabilities between the controllers. For more complex scene control, it is generally better to use scripting such as LUA (see next section).
- Fibaro Scene Builder
The Fibaro Scene Builder is an intuitive 'block' editor that allows you to easily create scenes in an 'IF/THEN' style. It can take inputs from timers, devices, weather, variables and even other scenes, allowing it to control devices, virtual devices and scenes. The Scene Builder is fairly flexible, it's main limitations are that not all parameters are available for some devices (some multi-sensor devices) and it cannot use 'Else' conditions (you need to use a second scene). The Scene Builder is available in the HC2 and HCL.
More information is available in our guide Creating Scenes in the Fibaro Home Center.
- VERA Scene Editor
The VERA Scene editor has been updated in the latest UI7 firmware, so that it includes guided wizards to create common scenes. The scene editor can easily manage 'IF/THEN' conditions but has limitations in that it can only do 'OR' conditions, it cannot do 'AND' conditions. However, this can be easily extended by using plugins such as PLEG or Combination Switch.
More information is available in our guide Creating Scenes in VERA UI7.
- Homey Flow Editor
Homey’s Flow Editor focuses on ease of use. It is a clean interface which is less technical/'programmy' than other controllers. In it, you are presented with a list of all your devices and services, and three columns: WHEN, defining a trigger (like a sensor, time, song change, sunrise, etc.), AND, allowing conditions (such as ‘it is raining’, ‘I’m not at home’) and THEN, where you define the actions Homey should run. Flows are made by dragging devices or services into the desired column, and scrolling through the different options. It’s a fun and fairly easy experience.
- Zipato Rule Creator
The Zipato Rule Creator is an extremely flexible editor where you select and drag 'puzzle' blocks to create a scene or rule to control your system. It supports 'When' and 'IF/THEN/ELSE' style logic and all device types supported by the Zipabox platform. The main limitation with the Rule Creator has been it's reliability and as Zipabox is a cloud -based system, you need Internet access (to the Zipato servers) to create and edit rules.
More information is available in our guide Guide to using the Zipato Rule Creator.
- Indigo Scene Control
Indigo supports numerous scenes that and can be triggered by a 'Triggering Event' from a device or plugin, or a 'Timed Event' which is based on a scheduled time. The user then specifies the conditions for the event (using rules or even a script for more advanced logic), and then specifies the actions to execute (this bit is the "scene"). The user can also create reusable "scenes" - these are called 'Action Groups' that can be called from any event.
Fibaro Home Center Scene Builder
VERA Scene Editor
Homey Flow Editor
Zipato Rule Creator
Most of the controllers offer advanced scripting capabilities so that advanced users can program more efficient or complex scenes.
Advanced scenes in the VERA and Fibaro controllers are programmed in LUA (a common home automation scripting language), while Indigo supports Python (the very popular general purpose scripting language).
Almost all automation in a Z-Wave system is controlled by 'Scenes'. For instance these can make lights turn on when motion is detected at particular times of the day or make several things happen from one simple button press of a remote control. Most of these scenes can be created in the standard scene editor, but some more complex scenes are actually much easier to create using a scripting language, and in some extreme cases could only be created using a script. This is especially true for complex multi-zoned heating systems or more advanced motion activated lighting control.
LUA is available in the Fibaro HC2 and VERA controllers, but is not available in the Fibaro HCL, Homey or Zipabox. Python is only available in Indigo.
Apps and Plug-ins
Apps and Plug-ins are slightly different, but we've put them into one section as they are both optional software components.
Apps run on your Smartphone and Tablet, allowing you to monitor and control the system whether you're home or away. All controllers have their own (free) apps available for Android, iOS and Windows mobile. Additionally, some vendors have allowed 3rd party developers to create apps or incorporate support into an existing app such as:
- VERA - VeraMate, Homewave, Imperihome, Control Cube, Roomie & Open Remote
- Fibaro - Imperihome & Roomie
- Homey - HomeyDash
- Zipato - no 3rd party apps
- Indigo - Demopad, Home Remote & Roomie
Plug-ins are similar to apps, but are downloaded and installed directly onto the controller. These enhance the controller's capabilities such as allowing more complex scenes without using scripting and support for other technologies or appliances such as Sonos and other multimedia systems.
Plug-ins are a great way to have the controller work with other systems and allow it to become the center of your home's systems (just as it should be).
- VERA - has a huge range of Plug-ins available from MIOS Marketplace and most of them are free.
- Fibaro - expanding range of plugins available for download within the Home Center User Interface.
- Homey - plug-ins enable device integration and ensure a good user experience - all are free from Homey App Store
- Zipato - There are no plug-ins available for Zipabox
- Indigo - more than 200 Plug-ins available from Indigo , and they are all free.
Fibaro Home Center Plugins Section
VERA MIOS Marketplace
Homey App Store
Cloud-based or Stand-alone
We get used to having more of our resources available "in the cloud", but there is a strong debate amongst users whether this is a good or bad thing when it comes to your home automation system - especially when the controller forms the central and critical part of the whole system.
Zipato is a cloud-based system, this means that any change you wish to make to it (adding devices, changing a scene) has to be done using an Internet connection to the Zipato servers. Once you have made the changes, the new setup is copied (synced) to your Zipabox and will then run on the actual controller. The issue with is approach is that if the servers are not available, then you cannot make any changes to your system, which is really frustrating. It also means that your whole system is reliant on an external service that you have no control over.
Fibaro and VERA run everything on the controller. To make changes you log-in directly to the controller on your network (usually using its IP address), there is no need to access it via an Internet or external server. These systems put you more in control and you have very little reliance on the controller vendor's servers or services.
Homey takes a hybrid approach: everything is ran on the controller, but services like remote login and user authentication use cloud services. These systems put you more in control and you have very little reliance on the controller vendor's servers or services.
Note that I say "very little reliance". Most Z-Wave controllers need some level of access to the Internet and the vendor's servers. Even though VERA and Fibaro effectively run in a stand-alone mode, they still need occasional access to the the servers for firmware updates, remote access, time checks and in VERA's case backups (Fibaro stores backups locally).
Indigo is the exception, as they are running on a powerful Mac platform with plenty of processor power and memory. Indigo runs everything locally, including backups which are simply part of the normal Mac backup process. It also provides a seamless remote access (which is also secured using TLS). Indigo's view is that requiring a call-out to the cloud is bad for the customer.
Generally the Z-Wave controller will be used to control a Z-Wave network, but most of them can be used to control other types of equipment and even other types of home automation systems, such as 433MHz and LightwaveRF. There are two ways to do this, depending on what types of system/device you're looking to control. Some controllers also allow you to use external systems to control the controller and the Z-Wave system via an API.
- Control via your IP Network (Ethernet & Wi-Fi)
Many modern multimedia appliances connect to your Ethernet or Wi-Fi network (IP network); appliances such as Smart TVs, AV Receivers, Sonos etc. Other technology hubs also do the same, for instance ZigBee, LightwaveRF, Philips Hue and many more. If the appliance or hub is on the IP network, then in most cases, the Z-Wave controller will be able to control it by sending HTTP or UDP commands via your Wi-Fi (IP) router.
- VERA - can use LUA scripts or plug-ins to control IP appliances.
- Fibaro - also has new plug-ins available for IP control, plus you can always use LUA if you wish.
- Homey - has integrations for webhooks, as well as plug-ins for almost all popular IP devices, like SmartTVs, Sonos and internet services.
- Zipato - has sketchy HTTP support, so think carefully if you want to control IP equipment.
- Indigo - wide range of plug-ins available or users can use Python scripts for bridges/hubs, smart home systems or internet services.
- Adapters and Expansion Modules
The Z-Wave controllers are designed to work with Z-Wave devices, so if you want them to directly control devices of another technology, then you'll need an adapter or expansion module that can communicate using the right frequency and protocol.
- RFXtrx433E - The RFXtrx433E Transceiver can plug into the USB port of the VERA, Zipabox's Battery Back-up, or a Mac running Indigo and allows you to control LightwaveRF as well as a huge range of 433MHz devices from the likes of HomeEasy, Oregon Scientific, Owl... The Fibaro controllers can also use RFX, but it is a more convoluted process using a RaspBerry PI board, so not a quick solution.
- Zipato Expansion Modules - Zipata have a unique range of expansion modules to allow it to control systems such as LightwaveRF, 433MHz, ZigBee, KNX, as well as a dedicated security module to interface into alarm systems.
- Indigo - because Indigo runs on a Mac, any device that can connect to the Mac can interface with Indigo. Plugins exist for the RFXtrx433E, various alarm panels, I/O devices, etc. Having Indigo on a general-purpose computer removes some restrictions placed on dedicated hardware.
- Native Support
As well as supporting Z-Wave, some controllers also have native support for other technologies:
- VERA Plus has native support for Wi-Fi, ZigBee (Home Automation Profile) and BlueTooth products
- Homey has native support for 7 different wireless technologies, including Wi-Fi, Zigbee, Bluetooth, Infrared and 433MHz (incluidng LightwaveRF), allowing direct control of other devices without Expansion Modules.
- External Control
External control enables you to use external systems or services to control the Z-Wave controller and network. This allows you to have far greater integration with other systems, or use other things as inputs to the system (such as external weather services etc). Indigo provides several well documented APIs that allow it to be easily integrated into your environment. A simple RESTful API allows any service that allows REST integration (HTTP) to connect to the server, a Python-based API enables simple to complex scripts as well as plugins which directly integrate devices, events, actions into the Indigo UI, and a full-featured client API that allows the development of robust control client integrations.
For most technical questions Vesternet's support staff will be able to provide you with guides, suggestions and solutions. Only if the actual controller has an issue or fault will we advise you to contact the controller vendor. This means that we can quickly resolve your question and get you moving ahead with your Z-Wave home automation.
As I said at the beginning of this guide, it is subjective. What I prefer in a controller, you may hate. So we've tried to keep this guide as factual and as balanced as possible. It's not designed to select the controller for you, but to highlight all the things to consider when choosing a controller. I hope we've helped clarify the controller mystery, if you have any comments, please email us at firstname.lastname@example.org.
Copyright Vesternet 2017