- Home Assistant OS allows you to centralize all home automation in a single local system, with a high level of privacy and control.
- Virtualizing HAOS on Windows with VirtualBox or VMware offers flexibility, easy backups, and great portability.
- It's key to have a mini PC with good hardware, bridge network and SSD to ensure stability and continued good performance.
- The combination of internal backups and VM snapshots makes it easy to test integrations and updates without fear of breaking the installation.
If you want to try Home Assistant OS on your Windows PC without going crazy with Linux or ProxmoxSetting up a virtual machine with VirtualBox or VMware is one of the easiest and most flexible ways to do this. You can centralize all your home automation, experiment without fear, and if something breaks, simply delete the VM and start over.
The idea is to use Windows as the main operating system and, on top of that, run a virtual machine that runs Home Assistant Operating System (HAOS).This way you can continue using your computer or mini PC for other tasks such as Plex Media Server or other services, while in the background you have your home automation center running 24/7 with moderate power consumption and many backup options.
What is Home Assistant OS and why install it in a virtual machine?
Home Assistant is an open-source home automation system designed to unify and control all the smart devices in your home.Light bulbs, plugs, sensors, cameras, thermostats, speakers, and virtually any smart home gadget you can think of. Everything is managed through a highly visual web interface and a mobile app, with fully customizable dashboards.
One of its great strengths is that all the logic works locally on your home network.without relying on external servers except for specific cloud integrations. This means greater privacy, lower latency, and that your home continues to function even if internet access fails, provided the devices support local control.
Home Assistant OS (HAOS) is the complete, self-contained operating system that includes Home Assistant and all its components.It comes ready to use, with an add-on manager, backups, a database server, and everything you need to automate your home without having to set anything up manually.
Running it in a virtual machine on Windows lets you thoroughly test it without buying dedicated hardware.It's as simple as installing VirtualBox or VMware Workstation, downloading the official HAOS image, and creating a VM with the allocated hardware. If you like it, you can later migrate the configuration to a mini PC, a WALNUT or even a dedicated device like Home Assistant Yellow.
In addition, virtual machines are ideal for experimenting with automations, integrations, and updates.Because you can take snapshots, restore backups, and move the VM to another machine with very little effort. If you break something, you can always revert without any problems.
Recommended hardware requirements for the mini PC or host computer

For Home Assistant OS to run smoothly in a virtual machine on Windows, the physical computer (host) must meet certain minimum hardware requirements.Keep in mind that you'll have the main operating system (usually Windows 10/11) and, in addition, a VM running 24/7, so it's not a good idea to fall short.
The most common approach is to use a mini PC that is always on as the "brain" of the home automation system.It's lightweight, quiet, and you can leave it running all day. The idea is to have Windows as the base system, and then run the VM with HAOS on top, along with any other services you want (for example, Plex Media Server).
One piece of hardware that is being highly recommended for this type of use is the platform Intel N100 or similar low-consumptionWith a processor of this type, the system is more than capable of running Windows, Home Assistant in a VM, and some additional services, while maintaining very low power consumption and fairly quiet operation.
In terms of RAM, ideally you should have at least 16 GB on the host.With less, everything might work, but if Windows 11 And when the VM with Home Assistant starts competing for RAM, you'll notice stuttering, disk swaps, and an overall sluggish experience. With 16 GB, you can allocate about 4 GB to the virtual machine and still have enough space for the main system.
As to storageAn NVMe SSD with at least 64 GB of usable space for the VM is recommended.Home Assistant itself doesn't take up too much space, but the databasesLogs and backups will increase with use. Having the virtual machine's disk on a fast SSD greatly improves performance. Boot, restart and general interface response.
For networking, it's best if the mini PC or host computer is connected by cable to your router or switch.Although Home Assistant can work over WiFi, if you want stability, low latency, and good device discovery on your local network, a Gigabit Ethernet cable is the most reliable option.
Examples of devices that fit well in this scenario often include mini PCs such as the GEEKOM Mini Air12 or the GEEKOM Mini IT12.The first, with a low-power processor and good USB connectivity, is sufficient for one or more lightweight services and a VM with Home Assistant; the second, with an Intel Core i7 CPU, 32 GB of RAM and 1 TB NVMe, is designed to run several virtual machines at once with plenty of power.
Download Home Assistant OS for VirtualBox and VMware on Windows
Once you have determined the hardware and have a Windows system ready, the next step is to download the official Home Assistant OS image. suitable for the type of virtualization you are going to use: VirtualBox or VMware Workstation, mainly.
On the Home Assistant website you will find an installation section with all the available optionsImages for Raspberry Pi, specific platforms, containers, bare metal installation, and, of course, images for virtual machines. On that page, you should look for the section corresponding to your system, and within it, the download for VirtualBox or VMware.
When you select the Windows option, you will see the specific links for the preconfigured HAOS images.Ideally, if you want to try both platforms, you should download both the VirtualBox and VMware images and save them in a specific folder on the SSD where you will run the VMs.
Images are usually compressed (for example, in ZIP format)So you'll need to extract them and leave the resulting virtual disk file (VMDK, VDI, etc.) ready for the virtualization tool to use. That folder where you extract the files will, in practice, be the "home" of your virtual machine.
It is highly recommended that this folder be located on a high-speed SSD drive.If you leave it on a mechanical hard drive or a slow external drive, you'll notice significantly worse performance, especially during startups, restarts, internal HA backups, and intensive database operations.
Home Assistant OS Installation and Configuration with VMware Workstation
If you choose VMware Workstation on Windows, the process of creating the virtual machine with Home Assistant OS is quite straightforward.However, there are several important details (such as the use of UEFI) that need to be adjusted for everything to start correctly.
After installing and opening VMware Workstation, the first step is to create a new virtual machine using the “Create a New Virtual Machine” option.Select the advanced mode “Custom (Advanced)” to better control all the hardware and compatibility options you will need.
On the hardware compatibility screen, you can choose VMware Workstation 17.X or the latest available versionThen, instead of telling it to install an operating system from an ISO, choose the "I will install the operating system later" option so that VMware does not attempt to perform a conventional installation.
In the operating system type step, select “Linux” and, as version, “Other Linux 5.X kernel 64-bit”Home Assistant OS is based on a modern Linux distribution, so this option is a perfect fit and avoids problems with drivers virtual and compatibility.
Now is a good time to give the VM a descriptive name and choose the same folder where you have the downloaded HAOS disk as the storage path.This way, all the virtual machine's files will be grouped together, making it easier to back up or move the VM to another computer.
In terms of hardware resources, it is generally recommended to allocate at least 4 logical CPU cores and about 4 GB of RAM to the virtual machine.If your host computer has some headroom, you can give it a little more, but with that initial configuration Home Assistant usually runs very smoothly for normal home use.
For the network, it is key to select “Use bridged networking” or bridged networkThis makes the Home Assistant VM appear on your local network as if it were just another device with its own IP address, which is essential for home automation devices to discover it and communicate correctly.
In the storage section, leave the default controller type values (SCSI, LSI Logic, etc.) and choose the option “Use an existing virtual disk”That's where you'll tell VMware to use the Home Assistant virtual disk file you downloaded from the official website.
When you select the disk, VMware will ask if you want to convert it to the native format used by Workstation.. Accepts (“Convert”) to optimize compatibility and performance, especially in snapshot operations and disk space management.
Before booting for the first time, it is essential to change the VM firmware type to UEFIFrom “Edit virtual machine settings”, on the “Options” tab, locate the firmware section and select “UEFI” instead of BIOSWithout this change, HAOS will not start correctly.
With everything ready, you can now start the virtual machine.On the initial startup screen, you'll usually see the option to choose "Slot A"; you can select it or wait a few seconds and it will start automatically. After a couple of minutes of internal processing, you'll see the IP address HAOS has obtained on your local network (IPv4 and even IPv6) displayed on the console.
To access the Home Assistant web interface, simply go to the displayed IP address followed by port 8123 in your browser.Something like that http://192.168.X.X:8123On the first start, it is normal for it to take several minutes: the system finishes preparing the database, basic integrations, and initial configuration.
Installing and configuring Home Assistant OS with VirtualBox
If you prefer to use VirtualBox instead of VMware, the procedure is similar: create a new virtual machine, allocate resources to it, and "plug in" the Home Assistant OS virtual disk.The key, again, is to enable EFI and use bridged network mode so that the VM has its own IP address on your LAN.
After installing VirtualBox, click on “New” to create a VM and choose an identifiable name, such as “Home Assistant”.In the operating system type, select “Linux” and in version “Linux 2.6 / 3.X / 4.X / 5.X (64-bit)”, which is the generic option for modern kernels.
In the wizard, uncheck or leave blank any unattended installations and any ISO imagesSince you won't be installing an operating system from scratch, but rather using a disk already prepared by the Home Assistant team.
In the hardware section, allocate at least 2 GB of RAM and 2 CPU cores.However, to be on the safe side and avoid bottlenecks, it's recommended to upgrade to 4 GB and 4 cores, provided your host computer can handle it without problems.
Very important: check the box “Enable EFI”If you miss this detail, Home Assistant won't start, because the HAOS image is configured to boot in UEFI mode. If you don't do it now, you can change it later in the VM settings, but it's more convenient to configure it during the wizard.
In the virtual hard disk section, select the option “Use an existing virtual hard disk file”A window will open where you should click on "Add" and navigate to the folder where you extracted the Home Assistant for VirtualBox image (VDI, VMDK, etc.). Select it and link it to the VM.
With the machine created, it's time to adjust some details in the configuration before starting.In "Network", under "Adapter 1", choose "Bridged adapter" and select your physical network card (usually the Ethernet one). This will give your VM its own IP address on the same network as the rest of your devices.
If for some reason you did not enable EFI during the creation of the virtual machine, go to “System” and check “Enable EFI (special OS only)”Again, without this change, Home Assistant OS will not get past startup.
In the audio section you can choose “Intel HD Audio” as the driverThis is usually useful if you plan to use sounds or notifications that pass through the VM, although it is not essential for purely home automation use.
Once the changes are saved, you can start the virtual machine and wait a few minutes.You'll see HAOS boot up in the console, and at the end, the assigned IP address will be displayed. Similar to VMware, you'll need to access that IP address using port 8123 in your web browser to begin the initial setup.
If you start the VM with the network in NAT, Home Assistant will continue to function internally, but it won't be easily accessible from the rest of your home devices.That's why bridge mode is so important: it allows the VM to participate as another device in your home network, and device discovery works as it should.
Initial setup of Home Assistant OS
The first time you enter the Home Assistant web interface, you will see a very guided welcome assistant.From there you will define the basics of your installation: administrator user, home location, privacy preferences, and initial device detection.
The first step is to click on “Create my smart home” to start the setup wizardIf you already had another instance of Home Assistant with backups, you can also restore them from this same flow, recovering automations, integrations, and dashboards.
You will need to create a primary administrator user with a name, username, and password.It's good practice to have at least two accounts: one for "heavy" administration (for example, admin) and another for daily use with fewer permissions, to avoid accidentally touching delicate things.
Next, you will be asked to locate your house on the map.This location is used to display local weather information, calculate sunrise and sunset times, and enable geolocation-based automations (for example, turning on lights when you arrive home). Your location is stored on your server and is not shared publicly.
On the next screen, you can decide whether to share anonymous usage statistics with the Home Assistant developers.Everything is disabled by default for privacy reasons; you decide if you want to collaborate by sending some telemetry.
Once the assistant finishes, Home Assistant will scan the local network for compatible devices and services.Smart speakers, lighting hubs, WiFi plugs, cameras, apps streamingetc. What it finds will appear as suggestions for integrations ready to add.
The main panel you'll see at the end of the process is fully customizableFrom the three-dot menu you can enter "Edit control panel", start with an empty panel if you want and create your own views, cards and buttons to control lights, scenes, weather and everything you integrate.
Device management, integrations, and automations
The true power of Home Assistant lies in how it integrates hundreds of manufacturers and thousands of different devices under a single panel.All of this is organized into several key sections of Settings: “Devices and services”, “Automations and scenes”, “Plugins”, “Control panels” and “System”.
In “Integrations” you will see the list of services that Home Assistant has automatically detected on your network or that you have manually configuredFor example, your lighting system, your router, Chromecast, voice assistants, cloud services, etc. From there you can add new integrations using the "Add integration" button.
The catalog of official integrations is huge and covers most common brands.But there is also the possibility of installing an unofficial integration store (such as HACS) to further expand support, always at your own risk.
The “Devices” section displays a list of all physical or logical devices linked to the integrations.Each device can expose multiple entities (for example, a light bulb can offer power, brightness, color temperature, energy consumption...).
The “Entities” section allows you to view and filter all these pieces of information in detail.A single device can generate anywhere from a few entities to dozens, depending on its capabilities and associated sensors.
Thanks to this organization, it is very easy to set up automations: rules that react to events, states, or times.For example, turning on certain lights when movement is detected and it is also nighttime, or lowering blinds when the outside temperature exceeds a certain threshold.
Advantages of running Home Assistant OS in a virtual machine
Installing Home Assistant OS on a virtual machine in Windows has several clear advantages over installing it directly on a single dedicated device.Depending on your needs, it can be the most convenient way to start and, in many cases, a perfectly valid long-term solution.
One obvious first advantage is the cost.Both VirtualBox and VMware Workstation Player are free for personal use, and if you already have a PC or mini PC available, you don't need to buy a dedicated Home Assistant machine just yet. It allows you to experiment, learn, break things, and rebuild them without spending a penny on additional hardware.
Safety is another big plus.If you test integrations, plugins, or even accidentally install something potentially dangerous within the virtual machine, the main system (Windows) remains isolated. Any problems are confined to the virtual environment, which you can shut down, restore from a backup, or completely erase.
Virtual machines also excel in portabilityThe VM disk can be exported or copied to another computer relatively easily: you move the file, import it into another VirtualBox or VMware, and you have your Home Assistant with all the settings ready on the new host.
Resource scalability is another interesting aspectInitially, you can allocate a limited amount of CPU and RAM to Home Assistant. If with There If you see your installation growing, the database getting large, or you add many automations, simply turn off the VM, give it more cores or more memory, and restart.
Furthermore, since the VM does not depend directly on the hardware, long-term compatibility is very good.You can switch from a mini PC or a tower, upgrade from an Intel N100 to a more powerful machine, and keep the exact same Home Assistant virtual machine, without reinstalling or reconfiguring everything from scratch.
Disadvantages and limitations of using a virtual machine
Of course, it's not all advantages; running Home Assistant in a VM on Windows also has some drawbacks that need to be considered.especially if you plan to use it as the main home automation system and not just as a testbed.
The performance, while good, will never be exactly the same as a native installation on the hardware.Virtualization has improved significantly, but there's always a slight overhead. For home automation, this isn't usually a major problem, although you'll notice that startup and restarts are somewhat slower.
Another major drawback is the host computer's hardware requirements.Not only do you have to meet Home Assistant's requirements on its own, but you also need headroom for Windows and the other applications to continue running smoothly. If the mini PC is struggling, the whole system can feel sluggish.
The issue of licenses must also be taken into account.Just because something runs inside a VM doesn't mean that the licenses of the OS or certain programs stop applying. Windows, Plex, or any other licensed software must be properly activated according to their terms.
Network configuration can be somewhat more delicate than if you were installing HAOS directly on a dedicated machine.To ensure Home Assistant can properly see all devices, it's best to use a bridged network and make sure the VM obtains a valid IP address on your subnet. If you leave it behind NAT or with restrictions, many local discoveries and integrations won't work correctly.
Finally, the dependence on the main team is total.If your Windows PC or mini PC shuts down, restarts due to an update, or experiences a crash, your Home Assistant installation will also shut down. To mitigate this issue, you can configure the VM to start automatically with Windows, but you'll still be dependent on the stability of the host system.
Common questions when running HAOS on a Windows VM
A very common question is whether Home Assistant can be used on a virtual machine without a continuous internet connection.The system can operate many home automation functions locally, but the reality is that you will need a connection at least during the initial setup, for updates, cloud integrations, and firmware updates for many devices.
Another common question is whether it's feasible to install all of this in a mini PC with less than 16 GB of RAMIt's possible, especially if you use Windows lightly and allocate at least 2 GB of RAM to the Home Assistant VM, but it's not ideal. With 16 GB, you'll have a much smoother experience and enough headroom for Plex or other services to run without lag.
People also often ask what happens if the mini PC or host computer restarts or shuts down.In that case, the virtual machine shuts down and Home Assistant stops working. To have the system restart automatically, you'll need to configure your virtualization software to have the VM start with Windows or to reactivate after an unexpected shutdown.
It is perfectly possible to install and use other applications on the same mini PC that hosts the Home Assistant VMFor example, Plex Media Server on Windows itself. The only thing you need to watch out for is resource consumption: if you start doing heavy transcoding in Plex while HAOS is handling a lot of automations, you might notice a drop in performance.
Regarding backups, you have two levels: internal Home Assistant backups and external backups of the entire virtual machine.From “Settings > System > Backups” you can create backups of your configuration, automations, integrations, and data, which you can then restore to the same installation or a different one.
In addition, there is the possibility of using snapshots of the VM itself.They are very useful before making major changes or delicate updates, because if something goes wrong you can "travel back in time" to a working state of the system in a matter of seconds.
In recent versions of HAOS (from branch 11 onwards) compatibility with virtualization systems such as Proxmox and KVM has been greatly improved with regard to snapshots.Now, when internal backups are generated, the database logging is properly paused to prevent corruption, which also reduces risks when using external snapshots.
Running Home Assistant OS in a virtual machine on Windows is a very flexible way to centralize your home automation without giving up using the computer for other things.With a well-sized mini PC, a bridged network, regular backups, and by automatically starting the VM with the system, you can have a stable and powerful home automation server while still enjoying Plex. downloads or other services on the same hardware.
Passionate writer about the world of bytes and technology in general. I love sharing my knowledge through writing, and that's what I'll do on this blog, show you all the most interesting things about gadgets, software, hardware, tech trends, and more. My goal is to help you navigate the digital world in a simple and entertaining way.