Private DIY Smart Home Beginners Guide (Self-Hosted) – Jargon… EP1
|I don’t know about you, but the idea that my lights or central heating might stop working because they can’t connect to the internet and phone home to a remote server is terrifying and not something I would pay my own money to allow. On top of that, I have no interest in letting companies store my security camera footage or data on when I’m at home, away or even asleep.
But, on the flip side, the idea of having properly “smart” heating control, colour temperature adjusting lights that can help wake me up in the morning and make getting to sleep at night easier, and a voice assistant I don’t have to worry if anyone is listening in, that all sounds fantastic, but I really don’t want to trade my security and privacy for essentially minor conveniences. But luckily I don’t have to, and you don’t either.
That’s where this whole series comes in, I’m adding a whole load of smart home tech to my house, with zero compromises on functionality, privacy and security, with the only catch being a tiny bit more effort getting it set up. This video is the first in the series, dedicated to giving you the foundations to understand all the jargon and concepts we will be using in the rest of the series. I’ll also be filling you in a little more on my biases that will be shaping how I go about doing this.
I’ll start with a bit of a glossary of terms, the jargon you may have heard but may not know what it all means.
- Home Assistant / HASS – The core software we will be using to connect and control everything. It’s free and open source, has a massive community of people using and creating for it, and has lots of plugins/addons/extensions to do almost anything you can think of.
- Zigbee – an open source wireless protocol similar to WiFi but completely separate, conceived in 1998 and has generally remained the same with the last change being the introduction of Zigbee 3.0 in late 2015. It’s a low power mesh network meaning your devices don’t need to directly connect to your controller, so long as they can connect via one of your devices it’s all good. I’ll explain this in more detail later in this video.
- Z-Wave – a proprietary low power wireless protocol, similar to Zigbee but with a few key differences again I’ll explain in a moment.
- Thread – another low power wireless protocol, much newer but has a few key advantages, but currently a lot less popular and available.
- WiFi – hopefully you’ve heard of this one, but this is a ‘star network’, as in all the devices have to connect directly to an access point, rather than ‘hopping’ between other devices.
- Bluetooth – the final wireless protocol I’ll mention, this is direct, peer to peer, short range connectivity.
- Open Source – I’ve mentioned the term ‘open source’ a few times, but some may not know what that fully means or its significance. Open source means the program’s source code, the original code the author(s) wrote to make it do everything it does, is all publicly available for you to view, download and modify. This is the absolute golden standard, as it means not only can you vet the code yourself to make sure it is safe (if you can), but also that anyone can contribute to fixing bugs, adding features and generally improving the project. If you want to add something, tweak a setting or remove something that gets on your nerves, you can. Plus, it’s almost always free to use which is a clear advantage – although always check the licence to see what you are allowed to do with it.
- Github – Github is a website that hosts code, and where you will find the vast, vast majority of open source projects. It’s owned by Microsoft, but is free (with some paid additional features mostly for businesses) and you don’t need to be logged in to browse, clone or download released versions of projects.
- Repo / repository – Repos, or repositories, are the name for the folders each project uses to contain everything. The “bucket” you fill with code, or the one you go looking in for the final product. Each project will normally have its own repo, often on Github, like my OSRTT project with its repo.
That’s not an exhaustive list, there will always be more terms to explain, but I think that will do for now.
Next I want to walk you through a couple of key things, namely all those wireless protocols I mentioned, WiFi, Zibgee, Z-Wave, Thread and Bluetooth. They all have their own uses and quirks, interoperability, and popularity, too much to go into crazy detail on them all in this video – but I do want to explain a couple of things.
First, you can effectively split these into three groups, WiFi, Bluetooth, and the low power mesh networks. Only WiFi directly connects to the internet – the rest all need to be bridged to the internet, hence why Philips calls their Hue lighting hub the “bridge”. That generally means that anything that uses WiFi can, at least by default, connect to the internet and may be designed to require internet connectivity to set up, use and control. There is also a limit to the number of devices you can connect to your WiFi network, and even if you don’t add that many you can still make your network slow, unresponsive or prone to disconnections and failure. All devices have to be within range of your router (or any extra access points you’ve set up), and generally need to be wall-powered as WiFi is fairly power hungry in comparison to the ‘low power’ options.
By comparison, the mesh networks are designed as a separate low power network which means that by default they can’t connect to the internet and phone home, nor can they congest your normal WiFi network. They can still interfere though, as Zigbee often uses the same 2.4GHz band as WiFi so they can get a little messy, but generally the tech can account for that automatically for the most part. One of the key differences is the word “mesh” network. That means instead of needing to connect directly to the router, like you do with WiFi, the devices themselves act like waypoints or stepping stones, so even if they can’t connect directly to the access point, as long as they can relay their message through a device they can connect to, it’s all good. On Zigbee this can be over an unlimited number of “hops”, but Z-Wave is limited to 4 hops total. For home use though that’s unlikely to be a real limitation.
Between the three options, Zigbee is the main one I’ve picked for my setup. It strikes the best balance for me of compatibility, price and ease of use. Being an open source standard, there are countless options both for the main controller/dongle/router, and for devices to use them with. Z-Wave, by comparison, is a proprietary standard, meaning it doesn’t have as much support and potentially more difficult for us enthusiasts to get working in our DIY smart homes. The two aren’t cross-compatible, you need a specific Z-Wave controller to use Z-Wave devices, they can’t be part of the same mesh network, nor can Z-Wave and Zigbee devices interact with each other directly (although via home assistant they should be able to).
Thread is the newest standard, and therefore doesn’t have many devices that work with it, but does offer a few features (like each device is individually addressable) over the older options and is also open source. In theory it can also integrate with Zigbee networks and devices, although I think that’s a little ways off useful reality yet. I’d generally agree with the idea that Thread will be the standard in a few years time, but for the time being Zigbee will do me fine.
And I should mention Bluetooth – this is generally the worst option as you need to be pretty much in the same room to connect, and it’ll generally only work with their smartphone app so I’d pass on any of those devices unless I really needed them.
One final thing to note here is why using WiFi devices is something I’m so against. Letting cheap, unregulated, insecure devices connect to your home network is always a bad idea – but devices that are designed to be permanently powered, to know if you are home, and accept incoming and outgoing connections over the internet is top-shelf terrible. Even if you assume that the cheap no-name-brand smart bulb you bought off of Amazon, eBay or Aliexpress isn’t pre-loaded with some form of malicious data collection, ransomware or other malware – which isn’t a given – the devices are chock full of security vulnerabilities that can allow an endless number of attack vectors for anyone to exploit from anywhere on the globe. A fake firmware update is all it takes to wreak havoc.
While there are steps you can (and should) take to limit those issues, using a separated network like Zigbee makes that sort of issue significantly less likely and generally means you can cut out the whole ‘device phones home’ thing I detest so much.
So, that’s a brief start on smart home tech, my thoughts on how to set things up and a few of the key jargon buzzwords I’ll be dropping like mad over the course of the series. The next video will be actually setting up Home Assistant, Zigbee and some Philips Hue White Ambient bulbs – I’ll put the playlist on the end cards so you can keep watching.