Saturday, January 29, 2022

Why should you consider "local" control for your devices?

 


You've heard me speak on it, and there are plenty of other home automation aficionados that talk about it as well... local control of your smart home, or IoT, devices.  But is this just a tin hat conspiracy, or are there really a number of good reasons to favor local devices over those that operate in the cloud?
So let's talk about the "tin foil" reason first... your data and your security.

Your Data and Security




So, do you really care if some company knows how often you turn on your bedroom lamp?  Or open the front door?  Probably not.... I don't.  But this type of data is just the tip of the iceberg.  Nearly every smart home device, be it a smart plug, light bulb, doorbell or thermostat requires you to download and register with a mobile application on your phone.  And to do that, you generally have to provide an email address at a minimum.  More often than not, you are also providing your name and possibly your address and phone number.  Then there are all the permissions that the app might have on your phone... like location tracking.  That's a lot of data beyond just the number of times the door was opened.

Most reputable companies will provide you with "privacy statements" saying how your data will be used.  But how many of us actually read through pages and pages of legalese to understand what is being done with our data.  I'll save you the heartache.  In nearly every case, your data is being sold to advertisers to serve up targeted ads.  This is because the company running those cloud servers to support the thousands, or even hundreds of thousands of clients using their apps need a consistent source of revenue to pay for those servers... and programmers... and system administrators, etc. etc.  None of that comes cheap.  Paying $7.00 once for a smart plug isn't going to cover all that technology and salaries to keep that cloud service up and running.  The device manufacturers NEED your data to continue to generate revenue.  This is why most companies go to extreme measures to prevent you for taking their device and making it local (there are a few notable exceptions, such as Shelly).

Even if the company has the best intentions and clear statements about how your data is used, what happens when a data breach occurs?  Or even if their own employees abuse their privileges and access?


In this case, it was Ring's own employees that were accessing customer's camera feeds without a justifiable cause (or with the customer's knowledge or consent).

Now your data is out there in the wild... no longer subject to any privacy policies or protections... available to the highest bidder.  Again, so what, you might say.  But do you really know what data that is?  You might think it's just your email address.  But is it?  Does it also contain details like your address and what time each day your garage door opens and the thermostat goes into "away" mode?  From that, it's pretty easy to guess when your house is empty each day... and since your address is also a part of that data...

I can already hear the counter-arguments.  Thieves aren't that smart... it's a lot easier and quicker (and doesn't cost anything) to just toss a rock through your window after ringing your doorbell and finding no one at home.  This is true.  But the point is, you don't really know what data might be out there or how it might be used.

The only real way to protect against this is to not give out your personal data in the first place.  And the only real way to avoid this and enjoy the benefits of smart devices is to keep those devices local.  Remember, the "cloud" is really just someone else's computer.

But there are many more reasons, other than these "tin hat" reasons, for keeping your devices local.

Internet and Service Outages



So what happens when your Internet service goes down?  For one, all those cloud dependent devices that rely on an Internet connection simply cease to function.  You can yell at your Google or Amazon speaker all you want (well, these devices won't work without Internet anyway) or smash the button on that app all you want, but that lamp connected to a smart plug isn't going to turn on (or off).  You're going to have to dig behind the couch where that smart plug is located and either push the physical button on the smart plug (if it has one) or plug the lamp directly into the outlet to get it to turn on.  And this is MORE convenient than a manual lamp?  Tell that to others in your household!

And it's not just your local Internet.  If any of the "cloud" services go down, then all devices that use that cloud service will not function.  They will remain non-functional until service is restored.  This could be minutes, hours or days.  Wink experienced an outage that lasted for 9 days in January of 2021, rendering all devices that used the hub useless... but more on Wink in a minute.

Local devices don't have this problem.  They do not require an Internet connection and most will continue to fully function as long as they have power and a local wifi connection (your local wifi remains up even when an Internet outage occurs).

Holding your home hostage









This is one of the primary reasons (along with the next one) that I opt for local control of nearly all my smart home devices.  Remember in the "tin hat" section that I mentioned that running all these cloud services cost money... a lot of money.  If the company cannot sustain the business with a "free" cloud service, they may suddenly decided to stop giving these services away for free and start charging a monthly or annual subscription.  The most famous example of this is from a company called Wink.


Wink made a capable and feature-rich smart home hub.  They took the approach that they would charge a bit more upfront, but would not require any subscriptions or fees.  Heck, it was even printed right on the box and used in their promotional materials.  Until they ran out of money...

They then contacted users and initially gave them one week to pony up or their hub would be disabled and most devices that relied on this hub would cease to function.  They eventually extended this deadline due to pressure, but did follow through with requiring a monthly payment to keep using the hub.  This is what started me down the path of local-only devices.  Yep, I had a Wink hub and devices that relied on it.  Upon this 'ransom' notice, I ripped the Wink hub and all reliant devices out of my home and replaced them with local-only solutions.  I have two Wink hubs (gen 1 and gen 2) currently sitting in boxes in the closet... all but worthless to me at this point.

To be completely fair, Wink isn't the only company to do this. Cloud automation service IFTTT started charging for anything more than a handful of free automations. Even Wyze has starting offering a subscription model.  The difference is that neither of these companies threatened to "brick" a device you paid for and both also still offer some form of free service.  

And a company can "get you" in ways other than a subscription fee.  They can require you to buy new versions of hardware you've already paid for to keep using their services.  Here's looking at you Philips Hue!  They ended support for their original bridge that controlled their smart home lighting.  While the original bridge would continue to function "in a limited manner", the truth of the matter was to keep all the existing functionality of your expensive lighting system, you had to buy a new bridge and throw the old one in the heap of other smart home devices that no longer work.

The point is, you are beholden to the company that makes your devices if those same devices rely on their services.  We don't accept this from other consumer devices... would you accept having to pay Ford or GM a monthly subscription or they would "shut down" your car and it would refuse to start if you didn't pay the fee?

Going out of business










And if a company can't find a way to raise enough revenue through a combination of all the above (selling your data, charging subscriptions or selling new hardware), they may simply turn off the lights and close up shop.  There is a long list of companies where customers were simply left out in the cold and the devices they paid for no longer worked.  Iris by Lowes and Insignia by Best Buy are just two examples.  When they closed up their smart home device divisions, anyone who paid for their products had to toss them in the recycle bin as they became useless.

Speed












A local device, operating on your local wifi network is always going to respond faster than any cloud-based service.  In some instances, this will be critical to your automations, in others it may not matter.  For example, if there is a 3-5 second delay in receiving a notification about your garage door opening, that may be entirely acceptable.  However, if you are using a motion detector to turn on the lights when you walk into a dark room, a 3-5 second delay (while you stand in one spot waiting) is probably not going to be OK.  Here's a brief video where I compare the response times between local and cloud with the same device:




And again, here are the results from the end of the video comparing local vs. cloud:


Different cloud services may have different response times and can be impacted by current Internet speeds and other factors.  But the fact remains that a local device is always going to be faster than any cloud service the relies on an Internet connection.

Your devices, your control.


When your devices are local, they are yours (as they should be when you purchased them). No third party can tell you what to do, how to use it, or suddenly bully you into paying a subscription or force you into upgraded hardware under the  threat of disabling your device(s).  And of course, all your data stays where it belongs... with you.

How to go local


I ain't gonna' lie... moving to local devices is going to take a little work, and you're probably going to have to learn a thing or two.  Having a little tech knowledge is helpful, but by no means required.  If you can follow along with a video or written instructions on a web site, you can make the transition... or if just starting out, begin the process from the start.

I'm not going to go into full details on every option for going local, or setting up a new system that is local from the start, as there are many, many variables depending on what you want your smart home to be.  But here are some basics you are going to need:

Smart Home Hub


First, you are going to need some sort of "hub" or centralize system to allow all these devices to talk to one another and to do automations (or routines as they are sometime called).  Custom firmware like Tasmota and ESPHome are getting better all the time and they already do some basic automation with other devices running the same custom firmware, but at some point you're going to want to do more, or have different devices communicate with one another (or at least react to each other... think motion sensor and a light).

There are many options out there.  But assure that whatever system your select, the system itself runs locally and doesn't require a cloud connection to fully function.  If this isn't the case, then you whole home goes down with an Internet or service interruption anyway, so having local devices does you little good.

Now, it should come as no surprise if you've watched any of my related YouTube videos or read any other of my blog articles, but I'm partial to Home Assistant.  Home Assistant has the big advantage of not only working with your local devices but has a large catalog of integrations for cloud based devices as well (currently more than 1,000).  This give you the option of slowly moving over or converting your existing cloud devices to local versions without losing any existing functionality along the way.

But Home Assistant does come with a bit of its own baggage.  First, you need to supply the hardware (e.g. computer) for it to run on.  This can be something as basic as a Raspberry Pi, but as your smart home grows and more devices are added, you will probably outgrow the Pi and need something a bit "beefier".  Home Assistant has dabbled in selling prebuilt "hubs", but the first one 'Blue' has been discontinued (although a few are still available) and the next iteration 'Yellow' is still in crowdsourcing and isn't set to be released until November, 2022.  So, yeah, you're going to need to supply at least a Raspberry Pi or an always-on computer to run the hub.  And while it has improved substantially, it still often requires messing with text configuration files to do more advanced things (or to fix something that breaks), so expect to have a learning curve.  But it also has a very large, robust and helpful community to get you through those rough spots.

The other common option out there is Hubitat.  The advantage here is that is it an actual hardware hub, so no separate computer (or Raspberry Pi) is needed.  The disadvantage is that it is primarily (although not completely) dependent upon Zigbee and Z-Wave devices, which are generally more expensive and in some cases very limited in device choices.

You may have also heard of Samsung SmartThings or are already doing some home automation with your Google Home or Amazon Alexa smart speaker.  But again, all three of these options are primarily Internet/cloud based, and will have limited functionality (if any) with your custom local devices without some sort of intermediate hub like Home Assistant or Hubitat.  Amazon has added a Zigbee radio to their latest hub, and if the emergence of the new "Matter" initiative ever comes to pass, local control of your devices with these hubs might change, but for now, they are anything but "local".

Devices

Z-Wave and Zigbee

Beyond your hub, the smart devices themselves are also going to need local control.  There are some devices, like Z-Wave and Zigbee mentioned above, that are local by their nature... the work locally over-the-air much like WiFi.  You are still going to need a hub that will "talk" to these devices, but the devices themselves will be local (and local only) when you take them out of the box.  Note however, that both of these protocols can be sensitive to certain types of interference.  And certain types of devices may not be available, or have a severely limited selection, 

Custom Firmware

Next, is taking an existing cloud-based device and replacing the firmware with custom firmware that is local only.  In the not-to-distant past, many smart home devices all used a particular type of chip (ESP8266) that was easy to replace with custom firmware (such as Tasmota and ESPHome, but these aren't the only choices).  But manufactures don't like this!  Remember, they want your data (or your subscription fee.. or both) and depend upon it for their survival.  When you replace their cloud-based firmware with your local version, they lose that revenue.  So many manufacturer's have switched to different chips that make is very difficult or impossible to replace the firmware... for now at least.  

In response to this, a couple of companies have sprung up (or existing companies have pivoted) to support the idea of local control of your devices.  Shelly is an established company that has always supported the option of local control by making many of their devices easily flashable with custom firmware and no soldering.  And now, most of their devices support a local control option out-of-the box (no custom firmware) through a communication protocol called MQTT.  Other companies, like Athom, have begun selling devices preinstalled with the custom (and local) Tasmota and ESPHome firmware.  So, options are out there if you really want to search for them

Build Your Own
Yep... this is definitely possible... and really not that difficult.  Remember that ESP8266 chip I mentioned above that most smart home devices used to use?  Well, you can buy a development board with an ESP8266 (or it's more powerful brother, the ESP32) that have built-in WiFi for only a few dollars.  Connect a broad range of sensors, outputs or other things like relays and flash Tasmota or ESPHome (or even write your own Arduino code) and you have a truly local device you built yourself.  There's a whole category of YouTube videos and web sites dedicated to building your own smart home devices... even things like garage door openers and video doorbells.  I even cover how to build a few of these yourself in my YouTube channel and in other articles in this same blog.

A willingness to tinker, learn... and ask for help!

To build a true local, automated smart home is going to take some work.  You should be willing to try and try again, not get frustrated and take advantage of the many sources of online help to get you there.  Remember that we all started at the beginning.  And most of us learned from others and are more than willing to pass it along to others.  YouTube, blogs, Reddit and Discord are all great sources for home automation projects and assistance.

The Payoff


Be forewarned... home automation can be an addictive, deep rabbit hole!  Even without "going local".  But once you've moved or created the first couple of local devices and realize all the advantages listed above, I think it is safe to say you'll want to move more and more.  I started out with dozen or so of cloud-based devices (and the dozen or so of mobile apps installed that were required for them).  But after service outages, Internet outages and "ransom" demands, I now have close to a hundred devices and only two that are still cloud based.  This doesn't mean that I don't use the cloud... nearly all of my devices are voice-enabled via Google Home... and I still get data, like the current weather from the cloud.  But the devices themselves are all local.  They, and their related automations, work without reliance on the Internet or any manufacturer's cloud service.  And I didn't have to share any of my personal information with all these other manufacturers... nor can they ever charge me a fee or remotely disable (or access) my devices.

Ultimately, the choice is yours in terms of what you are willing to trade (privacy, security, reliability and money) for the convenience of "plug-and-play" smart devices in your home.  But hopefully this article at least provided you with some thought-provoking ideas about the possibility of making your smart home truly yours... and only yours.

No comments:

Post a Comment

To help eliminate spam and to keep all conversations civil, submitted comments are moderated. Therefore your post may not show up immediately. Please be patient as most reviews are completed within a few hours.