How To Install Home Assistant on Windows Using VirtualBox

Disclosure: Some of the links on this site are affiliate links. This means that, at zero cost to you, I will earn an affiliate commission if you click through the link and finalize a purchase.

How To Run Home Assistant Supervised on Windows the Easy Way

In this article, you will discover how to perform a Home Assistant installation on the Windows Desktop operating system, which includes the supervisor and add-ons store.

This tutorial is tailored for Windows Desktop users who desire to run Home Assistant Supervised directly from their desktop.

If you want to test drive Home Assistant on your Windows PC, or you want to build a Home Assistant server based on Windows so that it can perform other Windows-specific tasks, then this tutorial will guide you through the process step-by-step.

If you’re interested in setting up a dedicated server for Home Assistant, such as one without a monitor or in a “headless” configuration, it is recommended to use Debian Linux directly instead.

You can refer to this tutorial to learn how to install Debian directly on a dedicated PC and run Home Home Assistant Supervised without the need for a virtual machine, however the process is more complicated so if you are looking for an easier method, you are in the right place!

Can Home Assistant Supervised Run on Windows?

Home Assistant Supervised cannot be run natively on Windows. However, it is possible to run Home Assistant Supervised using freely available virtualization software like VirtualBox.

The solution involves creating a virtual machine that can run one of the supported operating systems within Windows. Home Assistant can then be installed on the virtual machine.

In this configuration we refer to Windows as the host operating system and the virtual machine operating system as the guest operating system.

The virtualization software when provides a link between the host and guest, allowing the guest to access resources on the host such as it’s USB ports and network connection.

The end result provides a seamless experience no different to running Home Assistant natively on supported hardware.

Can I run Home Assistant Core Natively on Windows?

Yes it is possible to run the Home Assistant Core natively on Windows, without using a virtual machine. However this method of running Home Assistant will not give you the full set of features.

Running the Home Assistant Core without the Supervisor element will leave you without the add-ons store and without the ability to easily manage essential add-on tools such as the File Editor.

For further information about the key components of Home Assistant, including the Core and Supervisor, take a look at this article.

Therefore it is recommended to follow the method in this article instead as it will be the right method for mostly all users.

Prerequisite

To run Home Assistant Supervised on Windows, we will utilize a pre-installed disk image that contains the Home Assistant Operating System (OS). This OS is a streamlined version of Linux specifically designed for running Home Assistant.

In this setup, your primary operating system, Windows, will act as the host OS, while Home Assistant will function as the guest OS.

To proceed with the installation, you will need a computer running Windows 8, 10 or 11.

Your system should meet the following minimum requirements:

  • 4GB of RAM or more: It is recommended to allocate at least 2GB of RAM to the virtual machine to match the minimum requirement for the Home Assistant. Additionally, it is advised to have double that amount on the host system to accommodate both the host and guest operating systems.
  • 32GB of disk storage space or more.
  • At least 2 processor cores.

If you are using a relatively modern computer from the past decade, it is highly likely that you won’t encounter any issues meeting the system requirements. However, these requirements may become more significant when running Home Assistant on hardware such as a single board computer (SBC).

You will also need to have your Windows computer connected to your network and with internet access, which is required for downloading the necessary files.

Can I Use WiFi to Connect my Home Assistant Virtual Machine to the Network?

Yes, you can connect your Home Assistant Virtual machine to your external network using WiFi when using VirtualBox.

There is some confusion surrounding this topic, as the official website states that VirtualBox does not support WiFi.

However my own tests show that WiFi does in fact work with bridged networking, therefore it is possible that the information on the official site is out of date at the time of writing.

Installing VirtualBox on Windows

The first thing we need to do is download and install VirtualBox. You can download VirtualBox for Windows directly from the official site. Make sure you choose the correct version, the one for Windows hosts.

Once VirtualBox has downloaded, double-click the downloaded file and follow the installation procedure.

Downloading the Microsoft C++ Redistributable Package

Upon loading the installer, you may encounter an error that states that the Microsoft C++ Redistributable package is required. These packages are grouped by year.

If you encounter this error, make a note of the year required (at the time of writing, the 2019 package is required), head on over to the Microsoft website and download the package.

Once the package has downloaded, double click the file and install the package. Once complete, run the VirtualBox installer again and complete the installation.

Create a New VirtualBox Virtual Machine for Home Assistant

Before we can create a new virtual machine to run Home Assistant, we need to download the Home Assistant OS disk image. This image contains Home Assistant Core and Home Assistant Supervisor pre-installed within the Home Assistant Operating System.

Download Home the Assistant OS Drive Image

  1. Navigate to the latest releases page for Home Assistant OS: https://github.com/home-assistant/operating-system/releases/latest
  2. Scroll down and locate the file haos_ova-x.x.vdi.zip, where x.x is the number of the current latest release. Click the file to download it.
  3. Once downloaded, navigate to the download folder and double-click the file to extract the disk image haos_ova-x.x.vdi.
Extract the disk image

Create a new VirtualBox VM

Next, we can create a new virtual machine for running Home Assistant:

  1. Open VirtualBox
  2. Click the new button in order to create a new virtual machine
Create a new virtual machine
  1. Name the new VM something like Home Assistant.
  2. Choose Other Linux (64-bit) for the version.
  3. Click Next to continue.
Name the VM and select the operating system
  1. Choose a minimum of 2GB RAM to meet the Home Assistant OS minimum requirement.
  2. Choose a minimum of 2 processor cores to meet the Home Assistant OS minimum requirement.
  3. Make sure Enable EFI (special OSes only) is checked.
  4. Click Next to continue.
Configure the VM hardware
  1. Choose the option to Use an Existing Virtual Hard Disk File.
  2. Select the haos_ova-x.x.vdi file that you downloaded and extracted earlier.
  3. Click Next to continue.
  4. On the summary page, click Finish to complete the setup.
Configure the VM disk

Configure the VirtualBox VM

Once you have finished the setup wizard, you should see a new VM in the left-hand sidebar. Next, we need to complete some further configuration:

  1. Right-click the new VM and click settings.
  2. In the Audio section, change the Audio Controller to Intel HD Audio.
Configure the VM audio
  1. If you are using a wired network connection (ethernet), in the Network section, change the attachment to Bridged Adapter. If you are using WiFi to connect your computer to the network, leave the setting as default and follow the steps in this section before continuing.
  2. Click OK to accept the changes.
Configure the VM network

How to Use the Home Assistant Virtual Machine

Now that we have completed the virtual machine configuration, we are ready to launch the virtual machine.

  1. With the Home Assistant VM selected in the left-hand sidebar, click the Start button.
  2. A new window will open and Home Assistant OS will begin the boot process. Once complete, you will arrive at the ha> command prompt.
Configure the VM hardware
  1. In order to access Home Assistant, open a new browser window and navigate to http://homeassistant.local:8123
  2. In some cases this does not work, so you can use the IP address given instead. Your IP address is given in the system information (under the large “Home Assistant” text, for example http://192.168.88.146:8123 for my system shown here.

Note that you must use HTTP and not HTTPS as Home Assistant does not support SSL out of the box. You can learn more about how to set securely access Home Assistant in this tutorial.

Home Assistant running on Ubuntu

Conclusion

The Home Assistant Operating System disk image simplifies the setup process of Home Assistant on various systems. In this tutorial, we have configured VirtualBox to enable the running of Home Assistant Supervised on Windows Desktop.

Please keep in mind that Windows may not be the most optimal choice of operating system for a dedicated Home Assistant server. If you intend to build a Home Assistant server, it is recommended to use Debian Linux instead.

Thanks so much for visiting my site! If this article helped you achieve your goal and you want to say thanks, you can now support my work by buying me a coffee. I promise I won't spend it on beer instead... 😏

1 thought on “How To Run Home Assistant Supervised on Windows the Easy Way”

  1. Hello,

    The following link is not working!

    “If you are using WiFi to connect your computer to the network, leave the setting as default and follow the steps in THIS SECTION before continuing.”

    Could you please update it or tell me the steps that should be made to use WiFi?

    Thanks!

Leave a Comment

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

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

The reCAPTCHA verification period has expired. Please reload the page.

Scroll to Top