What is Home Assistant, how does it work, and what do you need to get started?


For years, we’ve been hearing about the Internet of Things and how it’s going to revolutionise our lives. Our fridges will be able to tell us when we’re running out of cheese and automatically order some more for us. And yet for many of us, the smart home extends to a couple of smart light bulbs and a smart plug or two and that’s it.

One of the biggest hurdles to building a genuinely smart home is the frustrating lack of standardisation among smart home devices. Every gadget you buy seems to need its own smart hub and dedicated app, and you can soon find your router is running out of Ethernet ports. With all of these different ecosystems and protocols, it’s impossible to get your smart home gear to work together to make your home truly smart.

Thankfully, there is another way. Home Assistant allows you to take control of all of your smart home tech from a single location and create powerful automations that finally get your smart home to feel genuinely smart. Learn more about Home Assistant, how it works, and what you’ll need to get it up and running.

What is Home Assistant?

Home Assistant is home automation software that allows you to create a single control system for a huge range of smart home devices. The software is free and open-source, and is continually being developed both by the core development team and by the Home Assistant community. It allows you to set up what is in effect a smart home hub, but one that can communicate with devices from a staggering number of different brands that would normally not communicate with each other at all.

A Home Assistant dashboard showing smart home controls

When a new smart device hits the market, members of the community who own that device may write code to try to integrate it into Home Assistant. They can then submit their integrations to Home Assistant which can eventually become part of the official Home Assistant platform. In this way, the list of devices that Home Assistant supports is continually growing.

Home Assistant isn’t the only option out there. Similar software, such as openHAB, can provide much of the same functionality. Home Assistant has a significantly larger community than most of its rivals (the Home Assistant subreddit has over 230,000 members, compared to about 6,000 on the openHAB subreddit) so you’re more likely to find help with your problems as a Home Assistant user.

Why does Home Assistant exist?

Home Assistant was founded by a software engineer named Paulus Schoutsen. He wanted to find a way to automate his newly purchased Philips Hue lights and wrote a script that would automatically turn the lights on when the sun set. Since this automation would run even when he wasn’t home, he then added presence detection which stopped the automation from running when he was away.

This is the key to Home Assistant. It allows you to take your smart home devices and use them in the ways that you want, even if that functionality isn’t possible through the native apps or controllers.

Why can’t I just use the Hue app?

One huge issue with the smart home world is that each manufacturer creates its own control systems for its devices. To control Hue lights, you need the app to control your lights, and the Philips Hue Bridge, a proprietary hub, to send the signals from your phone to your lights. That’s because Hue light bulbs connect via Zigbee, a wireless communication protocol that your phone doesn’t speak.

You might also have some Wemo bulbs, that are also Zigbee compatible. The trouble is, the Hue hub won’t talk to the Wemo bulbs, so you need to buy and set up the Wemo hub too. You then need to use two different apps to control your different bulbs.

Until 2022, there was no industry standard for smart home connectivity, so you could quickly end up with a house filled with hubs and a phone full of apps. Whilst the development of the Matter smart home standard has improved things a little, there are still far too many smart home devices that are locked to their own ecosystems.

What makes Home Assistant so powerful is that it allows you to integrate devices that usually require their own proprietary apps or smart hubs under one roof. With the right hardware, Home Assistant can talk to your Hue lights and your Wemo lights, and you can turn them all on or off at once from within a single app.

Not only that, but you can create automations that pull data from any other smart home devices in your home too. You can get all of your lights to flash red if a water sensor detects a leak in your plumbing, or use presence detection to have your smart speakers play your favourite song as you walk in through the door. You can create automations that are impossible to achieve with the native apps, and the possibilities are almost limitless.

How does Home Assistant work?

When you run Home Assistant software for the first time, it will automatically detect many of the most popular smart home devices or ecosystems. For example, if you have a Philips Hue hub, or a Sonos speaker, or an LG smart TV, or a Nest thermostat, or a Ring doorbell, your devices will automatically be discovered. You can then install and configure the integration for that specific device.

smart home devices discovered by home assistant on the integrations page

If you want to control your Hue bulbs, you can configure the Hue integration by pressing the button on your Hue bridge, and it will pair with Home Assistant. Once the Hue integration is running in Home Assistant, any light bulbs that are connected to your Hue hub will appear in Home Assistant as individual devices which you can add together into groups. For each bulb, a switch will be created in the Home Assistant dashboard that allows you turn the light on or off, change the brightness, or set its colour, in the same way that you would with the Hue app.

If you have Wemo bulbs, they should be discovered in a similar way. Install the Belkin Wemo integration, and your Wemo bulbs will also appear in your dashboard. By combining all your lights into a single group, you can turn off both your Philips bulbs and your Wemo bulbs with one switch, instead of having to open two separate apps each time.

At the time of writing, there are almost 2,500 supported integrations, covering all manner of smart tech, from alarms and cameras to smart locks and robot vacuum cleaners. When you add more smart tech to your home, just install the relevant integration, and your gear will now work with Home Assistant and be controllable from the Home Assistant app.

Will I still need my smart hubs?

If you want to use your Philips Hue smart hub to control your lights, you can do so. One of the key features of Home Assistant, however, is that you don’t need to. As long as your Home Assistant server can communicate over Zigbee, which usually just involves purchasing and connecting a Zigbee dongle, you can control your lights directly from Home Assistant without the need for your Hue hub. This is important for two key reasons.

Firstly, it removes the need to have a huge collection of smart hubs clogging your home. You can remove all of your proprietary hubs and just let your Home Assistant hub control everything.

Secondly, it means that you can now have local control. Many smart home devices use cloud services to operate; when you use your app, the information is sent to the cloud, where it is processed, and then the relevant data is sent back to your hub to send to the smart home device. There are two big issues with this system; if your internet goes down, you may lose functionality, and your data is also exposed to the outside world. For a light bulb that may not be a huge concern, but what about the cloud-based camera that you’re using as a baby monitor?

Home Assistant allows you to take local control of devices that usually require cloud-based access. You can talk directly to your lights or view your baby monitor without any data ever leaving your home network.

What can you do with Home Assistant?

The possibilities are almost endless. So far, we’ve only really looked at Home Assistant being a smart home hub, but the reason that Paulus Schoutsen first started was Home Assistant was because he wanted to be able to automate his lights.

There is a key difference between smart home control and smart home automation; you can use the Home Assistant app to manually turn lights on and off, but home automation allows you to make your lights come on by themselves based on conditions you define.

The first use of Home Assistant was to turn on the lights at sunset, and that’s still something you can set up in just a few clicks in Home Assistant. It’s a simple automation, but one that you can make as complex as you wish. The next addition was presence detection, so that the lights will only turn on automatically when someone is actually home. But what about turning them off?

You can add further automation that will turn the lights off once you’re detected as being in your bedroom and you plug your phone in to charge, indicating that you’re going to bed. You can set this automation to only work past 9pm so that it doesn’t fire if you charge your phone in the bedroom during the day. You can add as many or as few conditions as you wish, but ultimately, you should be able to have you lights work entirely by themselves, without you ever needing to control them directly.

This is a simple example, but really the only limit is your imagination and the smart home devices that you own. Some further examples include:

  • Opening your blinds or curtains in the morning to wake you with natural light
  • Motion activated lights in the hallway and bathroom that come on at low level if you visit the bathroom in the night
  • An alert on your phone if a door or window in your house is opened when nobody is home
  • Dimming the lights and setting your phone to Do Not Disturb when you start watching a movie on Plex
  • Notifications when your home energy usage exceeds a set level
  • Announcing over an Echo smart speaker when other household members are returning home

My personal favourite home automation detects the first time I enter the kitchen on the morning that the bins need to go out. My Echo Show 5 in the kitchen then reminds me that it’s bin day and tells me which colour bin I need to put out that day. Like all good home automations, once it’s up and running it requires no effort or input from me. It also solves a real-world problem: my inability to remember to put the bins out or to keep track of which colour it is each week.

Why isn’t everyone using Home Assistant?

If Home Assistant is so powerful, removes the need for proprietary hubs, and allows you have secure local control over your devices, then why isn’t everyone using it? The simple answer is that the price of the incredible adaptability and flexibility of Home Assistant is a much steeper learning curve than you’d find with a commercial smart home app. The software has been developed by tinkerers, and you’ll need a reasonable level of tech know-how to be able to take full advantage of the software.

That being said, there has been a concerted effort to make the process as simple as possible for beginners. There is a dedicated operating system that you can install, and a graphical interface that you can use to help you create automations. You can even purchase a ready-made Home Assistant hub that comes with the software pre-installed. There’s also a very helpful forum where you can ask for help or find someone else who has already faced and solved the same problem that you’re having. There’s also a thriving Home Assistant subreddit where you can ask for help or get inspiration from other Home Assistant users.

Even if you’re not hugely technical, there are helpful guides to get you started, and all the included integrations have their own documentation.

What do you need to get started with Home Assistant?

You really only need two things to get started. You need something run Home Assistant on, and you need some smart home gear to connect to it. Depending on the protocols that your smart home products use, you may need a few accessories too, such as Zigbee, Z-Wave, or Bluetooth dongles.

It’s possible to get started with Home Assistant without the need for any additional hardware. You can install the Home Assistant software on a virtual machine running on your desktop or laptop.

This isn’t ideal, however; you’ll mostly likely want to keep Home Assistant running 24/7, and a laptop or desktop will have significantly higher power usage than some of the other popular options for running Home Assistant. These include the Odroid N2+, small form factor PCs such as the Intel NUC, and network-attached storage such as a Synology NAS. However, if you’re looking for a low-cost way to start your Home Assistant journey, then you can’t go far wrong with a Raspberry Pi. Here’s what you’ll need.

Raspberry Pi 3 B+

The official Home Assistant documentation recommends the Raspberry Pi 4 as the most suitable Raspberry Pi for Home Assistant. And whilst the better CPU, 4 or 8 GB of RAM, and USB 3.0 ports are useful, they’re not strictly necessary for many beginner Home Assistant setups. If you’re looking to start your Home Assistant adventure on a budget, then a Raspberry Pi 3 B+ will do just fine.

Raspberry Pi 3 B+

$63.99 $89.99 Save $26

If you’re just getting started with Home Assistant, then the Raspberry Pi 3 B+ is one of the most cost-effective options. With 1GB of RAM, Gigabit Ethernet, and on-board Bluetooth, you can create a low power Home Assistant server with a tiny footprint.


Since the Raspberry Pi is a single-board computer that doesn’t come with any additional accessories, you’re going to need something to put it in. The official Raspberry Pi case is often one of the cheapest options, but supply issues mean that you can currently get a case that includes cooling for a similar price.

iUniker Raspberry Pi 3 Case

$14.99 $15.99 Save $1

This case has everything you need to keep your Raspberry Pi 3 B+ running smoothly. The heat sinks and fan ensure that your Pi doesn’t run hot, and the included power supply includes over voltage protection, over current protection, over temperature protection, and short circuit protection.

Power Supply

If your case doesn’t come with a power supply included, you’ll also need to add one of these to your list. Be careful when you’re shopping; the Raspberry Pi 3 B+ requires a micro USB power supply, whereas the Raspberry Pi 4 uses a USB-C power supply.

SD Card

In order to install Home Assistant, you’ll need a microSD card that can fit into your Raspberry Pi. When you’re getting started, running Home Assistant from the SD card shouldn’t be an issue. However, SD cards aren’t designed for the constant reading and writing that takes place when using Home Assistant. Eventually you’ll want to upgrade to an alternative option, such as an SSD. A card size of 32 GB or higher is recommended; 64 GB should be enough for many setups.

Samsung EVO Plus microSD card
Samsung EVO Plus microSD

$9.99 $18.99 Save $9

The Samsung Evo Plus 64GB microSD card has Class 10 rated transfer speeds reaching up to 130MBps. Samsung microSD cards are also known for their reliability.

SD card reader

In order to install the Home Assistant Operating System (HAOS) you’ll need to write to your microSD card. You’ll want to choose a card reader that fits the USB ports on your computer. If in doubt, a card reader that offers both USB-A and USB-C can be a lifesaver.

Beikell Dual Connector USB C USB 3.0 Memory Card Reader Adapter

$8.99 $16.99 Save $8

The Beikell Dual Connector card reader is a jack of all trades. It fits both USB-C and USB-A ports and can read both SD and microSD cards. You can even attach it to your keyring. What’s not to love?

Ethernet cable

The Raspberry Pi 3 B+ includes on-board Wi-Fi, so ultimately you can run Home Assistant over Wi-Fi, although a wired connection is highly recommended. An Ethernet cable is required for installation, however; without one you won’t be able to get Home Assistant up and running.

UGREEN Cat 7 Ethernet Cable

$6.99 $7.99 Save $1

The UGREEN Cat 7 Ethernet cable is fast and reliable with speeds of up to 10Gbps. The three feet length is usually sufficient if you’re setting up your Home Assistant server next to your router, but longer options are available.

Zigbee dongle (optional)

Philips Hue lights were the smart home devices that led to the creation of Home Assistant, and they’re still hugely popular. You can connect your Hue lights to Home Assistant through the Philips Hue Bridge, but if you want to control them locally, you’ll need a Zigbee dongle to allow Home Assistant to talk to them directly. There is a wide range of Zigbee smart home devices, including many low-cost sensors that can help when automating your home, so a Zigbee dongle can be a very useful addition to your Home Assistant setup. Many users find that using a USB extension cable between their Pi and their Zigbee dongle can reduce interference.

Sonoff Zigbee 3.0 USB Dongle Plus Gateway

$28.95 $32.4 Save $3.45

Not all Zigbee dongles are created equal. One of the most popular options among Home Assistant users, the Sonoff Zigbee 3.0 USB Dongle Plus Gateway can be plugged into your Raspberry Pi to allow Home Assistant to communicate with any Zigbee devices in your home.

This is everything you’ll need to get Home Assistant up and running on a Raspberry Pi. Using the kit listed above, you can start to take more control of your smart home and build powerful automations that work almost like magic. Be warned, however. You may find that you lose hours of your life tinkering away with your automations or designing your perfect dashboard. And as you start to install more add-ons to the system, there may come a time when your current set up just won’t cut it. Upgraditis is constant danger with Home Assistant.

Once you’ve got all the equipment you need, you’re ready to take leap to install Home Assistant and start building your smart home.