4 Great Ways to Setup Offline Home Automation
Home automation is really awesome. Who doesn't want things to happen automatically around the house? One of the common questions about home automation is if it can be used offline. The answer is a resounding, yes! There are a lot of ways to do this, and they vary significantly in cost and difficulty, so I encourage you to really dig into each option to decide which is right for you.
Table of Contents
Why are so many devices online only?
First, to answer the question that many probably have, why does searching for smart devices yield hundreds of results for online-only systems? The reason is trivial, it results in far superior user experience for those with less experience in the matter. The difference between a complete newcomer setting up a cloud-based smart plug and the same person trying to set up a smart hub-based system will be huge when it comes to how easily they get the system going.
Devices must be controlled by something
This sounds obvious, but any smart device needs to have some sort of controller that will tell it what to do and act as a bridge between a user's mobile app and the raw commands being sent to a light bulb (as an example). It follows then that whatever software will be responsible for doing all of these things must run somewhere, and depending on what kind of automations or protocols are involved, running the program might require some expensive hardware.
The historical solution to this problem was to require consumers to purchase a "smart hub" which will end up being a box that sits somewhere on the property that does nothing in the eyes of the buyer. That couldn't be further from the truth. Often these little boxes are doing a lot of work keeping all your devices in check and dispatching commands to the right place at the right time.
At some point, device manufactures discovered that they could instead get the smart device to connect, over the internet, to a server that they will host. This eliminates the need for a smart hub and saves the consumer money and time that would otherwise be spent setting up a hub. It's important to realize that these devices still have a hub, it's just not one that you own or have any control over.
Reduces the barrier to entry
At one point in time, setting up a smart home was quite a complicated ordeal. Sorting out the compatibility requirements of one device to another was often very confusing, and many hubs were closed off to anything but that company's own line of products. This walled-garden approach made it difficult for consumers that weren't sure which hub or device type they wanted yet to justify the cost of trying it out.
With hubless devices trying out a brand or device type is as easy as ordering one, giving it a go, and deciding if it's a good fit or not. The required infrastructure to get going is so much lower with cloud devices, and this has had the direct result of driving sales much higher than they were before, at the expense of losing the ability to use these systems offline.
Smart home privacy considerations
While the user experience of cloud-based smart systems is indisputably superior to any other smart home technology, the most significant impact they can have is on your privacy. Regardless of what company runs the backend server that controls the device you've purchased, the second any of the data used to control these systems leaves your local network, it becomes vulnerable to all sorts of nasty things.
Consider the concerns that surfaced when it was revealed that most smart speakers actually store the recordings they make on a remote server indefinitely and that in some cases employees will listen to these recordings! Who knows what kind of sensitive information could be found in such data. This is not isolated to smart speakers, any device that is used on a day to day basis can potentially reveal information about you to a third party.
Things like when you turn off the lights, lock the door, go to sleep, leave for work, make coffee in the morning, are all the kinds of information cloud-based smart devices can store during regular use. None of this is malicious, it's just the way the device functions as it must contact a remote server to function, but the issue becomes one of potential risk. By having this information stored somewhere out of your control, you are now subjected to whatever might happen to that data, which is certainly something to consider.
Options for offline automation
One good thing that's come out of the massive move to the cloud is that devices that operate using a smart hub have had to up their game by considerable margins to keep up. Many smart hubs can be found now that will support a massive list of other brands, as this interoperability is the only way they can stay in the race. Here are a few options for running offline automations with all this in mind.
Using an off the shelf smart hub
This is perhaps the easiest solution. It requires very little technical knowledge and will instead usually cost more money than the options that follow. There is a lot to be said about some of the available devices such as Wink, Echo hub, Insteon, Smart Things, Home Kit, etc.
Most of them now offer much more freedom than they once did while still maintaining an enjoyable user experience for less tech-savvy individuals. Honestly, even the most knowledgable users can appreciate a system that's well-integrated and easy to install, as long as it doesn't compromise the feature set too much. All of these hubs will work entirely offline as they will usually rely on some wireless protocol like Z-Wave or Zigbee, although they can sometimes also make use of WiFi.
Home Assistant is a beautiful system that is entirely free and open source. It is nowhere near as easy to set up as the options before this, but it also offers so much additional potential that if you are willing to learn, it will be gratifying. It can be run on a relatively cheap Raspberry Pi single-board computer which makes it more accessible to the general public, while still packing a feature set that beats almost everything else.
In addition to its rich core, HASS includes a plugin system called "integrations" that allow developers to write Python code to interface with anything they want. As a result of this, if the core project doesn't include a way to interface with a device you own chances are someone else has already written code to handle it! If not, you can always take a stab at it your self and follow the well-written documentation on how to develop an integration.
It runs completely offline and has the possibility of remote access, allowing external services to interface with your other devices. Finally, it also has a mobile app that will work within your WiFi by default, and with a bit of proxy, setup can also work anywhere in the world over the internet.
OpenHAB is a very similar project to Home Assistant in that its goals are to be open and free for everyone. It also suffers from an inferior user experience when compared to commercial products, but that's par for the course with DIY. Just like HASS, it can also run on a Raspberry Pi and will be quite easy to set up and get going using this technique.
The choice between HASS and OpenHAB comes down mostly to preference as they are both great projects with their own merits. If you are interested in using an open-source controller definitely investigate both of these and decide which fits your use case best.
As a final mention, there is Hubitat. The purpose of Hubitat is to do precisely what the title of this post is about, doing offline home automation. The difference is that it is a commercial solution that comes as a box that must be purchased and that can interface with many other devices.
For someone who doesn't want to deal with the Raspberry Pi, burning and SD card, Linux setup, ssh and all of the other things that a DIY installation may entail, Hubitat is an excellent option. It is essentially the same as the DIY setup but with the hardware and controller setup already taken care of. It includes an impressive list of compatible brands, and there is always the option to write your own driver to add an additional one.
There are going to be some limitations though as the core software is closed source and not available for editing or viewing. In most cases, this shouldn't be a problem, but it can certainly make the development of some things more complicated. Overall though, Hubitat is an excellent choice for someone who wants the kind of benefits of a DIY option like openHAB or Home Assistant without the hassle of setting everything up.
It is perfectly reasonable to want offline automation support, and as we saw, there are many good options available to accomplish this goal. Overall I recommend having a look at Home Assistant/OpenHAB if you are interested in taking power into your own hands. If doing that is not your cup of tea, taking a look at either a commercially available smart hub or Hubitat will be an excellent second option.
Do you use one of these systems? Why did you pick your particular system? Let me know in the comments!