Step-by-Step Guide: How to Install Home Assistant Supervised on Windows

So I guess you have got here in one of three ways:

  1. You have been scanning the home assistant forms, trying to find out how you can run home assistant supervised on Windows and have been presented with, is some very unhelpful and abrupt “NO” responses without actually giving you some helpful information.
  2. You just can’t get your hands on a Raspberry Pi 4 to run your Home Assistant supervised installation, but you’ve got some old PC hardware that is gathering dust and now you want to utilise it to run Home Assistant Supervised and are looking for some support.
  3. You have found my YouTube Video.

Well if you haven’t found my YouTube Video you can find it here:

The video is a companion to this Step by Step guide and visually covers every step of this process and is designed to run side by side with this so please open it up in a new window and use it the follow along.

Few things before we get into it.  You’re going to need to PC running windows, in my example I’m using windows 10 but windows 11 is also fine.

That PC need to be online and connected to your home network.  

You also need to make sure that virtualisation has been turned on in your computer’s BIOS setting.

There is a detailed Articale over on https://www.simplilearn.com/ that shows you how to do this on Windows 10.

Step 1: Get Your Tools

First, we need to get the tools that we are going to need to get Debian Linux Installed in a VM on Windows.

For these make sure you download the correct version for your computer system.  There is an ARM and AMD/Intel (x64) version of each app.

1.01 Debian: https://www.debian.org

1.02 VirtualBox: https://www.virtualbox.org

1.03 Visual C++: https://learn.microsoft.com/ (Look for the “Visual Studio 2015, 2017, 2019 and 2022 section).

1.04 Once downloaded install “Visual C++” and then “VirtualBox”.  The Debian ISO file is for the next step.

Step 2: Install Debian

Buy Me a Coffee at ko-fi.com

2.01 Open “VirtualBox” and select New.

2.02 Give your VM a name: “homeassistant”.

2.03 Select the pulldown on ISO image and select “Other”.

2.04 Select the download Debian ISO – This will be in your download folder.

2.05 Click on “Skip Unattended Installation” this will stop the installation from setting up a desktop environment that we will not be using.

2.06 Set the base memory.  This will work with 2GB however my advice would be to set it to 4GB or more.

2.07 Processors ideally set this to 2 as a minimum.  If you’re not going to use the PC for anything other than Home Assistant I would set this to 75% of what’s available to you.

2.08 The Virtual Hard Disk is where Home Assistant Supervised will keep all files and history.  I Have Rana system for 6 months with only 64GB however I would recommend that you set it to 120GB as a minimum this way you don’t have to change anything later if you run the system for a long time.

2.09 Click “Finish”

2.10 Click “Setting”, and “Network” and change the Network Adaptor from “NAT” to “Bridged Adaptor”

2.11 Click “OK”

2.12 Now Start the VM

Follow the install process inside of the VM window.  

2.13 Hostname is the name of your computer and could be anything: homeassistant

2.14 For Domain Name if you are already using this in your home set this as you normally would, if not then you can make one or just press return to skip: ha.home

2.15 Your root password and user password should be different.   

2.16 The user name I’m using here is “smlp” you will need to change this where needed.

2.17 For the Partitioning method use: “Guided – use entire disk”.

2.18 Select the disk to partition, you should only see one option

2.19 For the Partitioning scheme you can use any option here but I used: “Separate /home partition”.

2.20 Select “Finish partitioning and write changes to disk”.

2.21 Write the changes to disk?: “Yes”

2.22 For Scan extra installation media? Select: “No”.

2.23 For the Debian archive mirror select your country and then the preselected option that shows. In my example: the United Kingdom, deb.debian.org.

2.24 If you are using an HTTP proxy you will already have the information for “HTTP proxy information” if not just press: “Continue”

2.25 Participate in the package usage survey? This is up to you: “Yes” or “No”

2.26 Under software to install:

Deselect “Debian desktop environment”

Deselect “GNOME”

Select “SSH server”

Select “standard system utilities”

2.27 Install the GRUB boot loader to your primary drive?: “Yes”

2.28 Device for boot loader installation: Select the “VBOX” device listed

2.29 Installation complete: Continue

2.30 The VM will now reboot.

Step 3: Get Ready to Install Home Assistant

First, get the IP address for the system.

3.01 Login user your username and password setup in the installation process.

3.02 Get the system IP address:

ip a

Your address will be shown under the “BROADCAST” section, not the “LOOPBACK” section.

My ip shows as: 192.168.1.186/24

Discard the “/24” so my IP is 192.168.1.186

3.03 Now switch to root and install Sudo.  Having this will help with being able to follow along more easily with guides and tutorials from other websites in case you want to do more with the system at a later date. Enter the commands:

su

(Enter your root password setup in the installation process)

3.04 Install sudo

apt install sudo

3.05 Next, we need to add your user “smlp” to be able to use “sudo”.

nano /etc/sudoers

Under the line:

root ALL=(ALL:ALL) ALL

Add the line

smlp ALL=(ALL:ALL) ALL

Remember you will need to change “smlp” to your user name.

Hold “Ctrl X”, and then “Y” to save and return to confirm the file.

Step 4: Install Dependencies and Home Assistant

4.01 In the Windows search bar type CMD and “RETURN” to open the command prompt.

4.02 Now connect via SSH but remember to use your user name and IP address.

ssh [email protected]

Type “yes” to confirm “Fingerprint”

Enter you user password.

4.03 You are now connected to the system via SSH and we are going to use this to install Docker that runs Home Assistant the dependencies that make everything work as well as Home Assistant Supervised.  Simply copy and paste the command into the command prompt in the order listed:

4.04

sudo su -

4.05

apt-get update
apt-get upgrade -y
apt-get dist-upgrade -y

4.06

apt-get install \
apparmor \
jq \
wget \
curl \
udisks2 \
libglib2.0-bin \
network-manager \
dbus \
lsb-release \
systemd-journal-remote -y

4.07

curl -fsSL get.docker.com | sh

4.08 For the following commands, you first need to make sure that version “1.4.1” is the correct and latest version of Home Assistant before entering the command.  You do this by heading over to the Home Assistant Github first to check the listed version number then edit the “1.4.1” to the latest version for the next two commands.

Home Assistant Github: https://github.com/home-assistant/os-agent/releases/

4.09

wget https://github.com/home-assistant/os-agent/releases/latest/download/os-agent_1.4.1_linux_x86_64.deb

4.10

dpkg -i os-agent_1.4.1_linux_x86_64.deb

4.11

wget https://github.com/home-assistant/supervised-installer/releases/latest/download/homeassistant-supervised.deb

4.12

dpkg -i homeassistant-supervised.deb

4.13 Home Assistant Supervised is now installed close down the Virtual Machine Window and select “send the shutdown signal”.

Step 5: Additional Setup

5.01 In the left-hand panel on VirtualBox right click on your VM and select “Create Shortcut on Desktop”

5.02 Now hold down the Windows Key and “R” on the keyboard.

5.03 Enter the command “shell:start” this will open a folder.

5.04 Copy the new VM shortcut on the desktop into the “Start-up” folder, next time Windows starts it will auto-open your new Home Assistant VM.

5.05 If you have a Zigbee USB Dongle like the two listed below you can set these up by plugging them into your Windows PC then in Setting, USB on VirtualBox you can link them to your Home Assistant VM.

Debug Point has an article showing you how to do this: https://www.debugpoint.com/enable-usb-virtualbox/

5.06 Windows Remote Desktop allow you to connect to your Window PC from any other computer or iOS or Android mobile phone via the Remote Desktop App when you are on your home network.  This is not available on Windows Home 10/11.

To set up Remote Desktop click on Windows/Start, Setting and search for Remote Desktop and Enable.

5.07 Also, you can set Windows up so that if it has been restarted or accidentally turned off it will Auto start without the need for entering your Windows username and password when it first boots up.  You can enter your Windows username and password to get VirtualBox going again after a shutdown via Remote Desktop from another computer but if you want to set it without doing this:

Click on Windows/Start, Setting and search “Sign-in option” and change Requires sign-in to “never”

This will not always work but there is a more detailed article on Help Desk Geek on how to do this: https://helpdeskgeek.com

5.08 If you want to keep a copy of your new Home Assistant VM before you fully set it up so that you have a fallback in case something goes wrong you can do this from VirtualBox by right-clicking on your VM and selecting “Clone”.  Remember if you switch to using this Clone you will also need to add a shortcut for it to the windows “Start-up” folder and remove the old one if it’s no longer needed.

Step 6: Home Assistant Supervised

Buy Me a Coffee at ko-fi.com

If Everything has gone to plan you are now done.  Start your new Home Assistant VM and wait for it to boot.

6.01 You can now access Home Assistant using your VM’s IP address followed by the Home Assistant Port.  For me this would be:

http://192.168.1.186:8123 


Thank you for taking the time to follow along with my guide.  If you have any feedback or additional pointers please let me know in the comments here or on my YouTube Channel.

If you found it helpful and want to support me you can buy me a coffee on Ko-Fi or just help promote the guides that I am making by sharing this post, liking or subscribing to my video on my Youtube Channel.

Other Links:

Setting up Home Assistant Supervised on Debian: https://mathesonsteplock.ca

Setting up HACS on Home Assistant:  Smart Home Junkie

3 thoughts on “Step-by-Step Guide: How to Install Home Assistant Supervised on Windows”

  1. Outstanding guide, however in step 14 you say login at port 8132 and I think it should be 8123. I waited 20 minutes and refreshed and couldn’t login until I caught the mistake. now it works great!

    1. Thank you… and great spot that is the kind of typo that could waste a lot of time. I have already updated and thank you for flagging it 👍🏻

Leave a Reply

Your email address will not be published. Required fields are marked *