Running Home Assistant Inside a Hyper-V VM on Windows 11 Home

Windows 11 Home doesn't ship with Hyper-V enabled by default. It never has. Microsoft locks that feature to the Pro and Enterprise editions as a way to push people toward paid upgrades. But Home Assistant runs on Linux under the hood, and the Docker-based installation method is the most common path for people who don't want to deal with a full virtual machine. The problem is that Home Assistant OS, the complete appliance image that handles everything in a single package, needs either KVM on Linux or Hyper-V on Windows. If you're on Windows 11 Home and you want to run HAOS, you have options, but they aren't obvious from the surface. The straightforward route involves using the Unlock Windows 11 Homes Power How Hyperv And Home Assistant Converge Seamlessly through a set of PowerShell commands that expose the Hyper-V role on Home edition. This isn't officially supported by Microsoft, which means it can break after a major feature update. I've watched it work on a machine for fourteen months without issue, and I've also watched it quietly unregister itself after a November cumulative update pushed through. Don't treat it as permanent infrastructure without monitoring.

How to Unlock Hyper-V on Windows 11 Home

Open an elevated PowerShell session. You need administrator privileges or nothing below this point will work. Run the following command: dism.exe /online /enable-feature /featurename:Microsoft-Hyper-V-All /all /norestart Then run this one to turn on the Windows hypervisor platform:

bcdedit /set hypervisorlaunchtype auto Reboot the machine. After it comes back up, open Turn Windows features on or off from the Control Panel and verify that Hyper-V is checked. It should be. If it isn't, the DISM command silently failed, usually because a third-party virtualization product is holding the hypervisor lane. Check for WSL, Docker Desktop, or any Android emulator before retrying. Those tools register their own hypervisor and conflict with Hyper-V. Once Hyper-V is active, open the Hyper-V Manager and create a new virtual machine. You'll want to allocate at least 2 virtual processors and 4 gigabytes of RAM for Home Assistant OS. The appliance image idles around 600 megabytes of RAM usage under normal conditions, but giving it breathing room prevents memory pressure during add-on updates. Storage is where people get tripped up. Home Assistant writes a lot of small logs and database changes. Use a dynamically expanding VHD on an SSD, not a fixed-size VHDX on a mechanical drive. I learned this the hard way when my first installation took forty-five seconds to respond to a simple entity state change because the spinning disk couldn't keep up with the SQLite write pattern.

Get the Full Details

Install Home Assistant on Windows 11 as an App ! The BEST Way to ...
Install Home Assistant on Windows 11 as an App ! The BEST Way to ...

Installing Home Assistant OS

Download the HAOS Hyper-V image from the official Home Assistant website. The file is a Virtual Hard Disk, not a standard installer. In Hyper-V Manager, attach the VHD to your new VM's IDE controller. Boot the VM. The first startup takes longer than you expect because HAOS is building its internal filesystem. Give it about ten minutes before you assume it hung. Once it finishes, the web interface becomes available at http://homeassistant.local:8123 or at the VM's assigned IP address. The DHCP lease comes from the Hyper-V virtual switch, so make sure your switch is set to External if you want the VM reachable from your LAN. Creating a virtual switch in Hyper-V is where most home lab guides gloss over the details. Go to Virtual Switch Manager, choose External, select your physical network adapter, and check Allow management operating system to share this network adapter. Without that checkbox, your host machine loses internet access while the VM is running. I spent two hours troubleshooting a no-internet situation on my workstation before I remembered that setting existed. It's easy to miss.

Networking Gotchas That Actually Matter

Hyper-V implements NAT by default on its virtual switches, which means the VM sits behind an extra translation layer. Home Assistant's addon stores and some integrations that rely on mDNS discovery don't traverse NAT well. You'll see addons fail to install and devices that appear and disappear from the network map. The fix is to assign the VM a static IP outside your router's DHCP pool and set your router to forward port 8123 to that IP. Then disable the Hyper-V internal NAT and use a bridged configuration where the VM appears as its own device on the physical network. This changes the security model slightly. Your VM is now directly exposed to the LAN rather than hidden behind Hyper-V's private network stack. That's fine if you're running this on a trusted home network, but it's worth noting if you're exposing anything beyond your local environment. I keep Home Assistant on a separate VLAN for exactly this reason. It costs nothing to set up on a managed switch and removes the ambiguity about whether your automation server is truly isolated.

What This Setup Does Not Solve

Using Hyper-V on Windows 11 Home to run Home Assistant OS does not give you hardware pass-through. You cannot plug a Z-Wave USB stick or a Zigbee coordinator into the VM and expect it to survive a suspend-resume cycle. Hyper-V's USB redirection is experimental at best, and Home Assistant's supervisor doesn't support it. If your automation depends on a physical dongle, plan to run the coordinator on the host and use the Network Z-Wave or ESPHome integration to bridge it into HAOS. This is the workaround I use, and it works reliably after the initial pairing confusion settles down. Performance is another area where the reality diverges from the marketing. A Hyper-V VM running HAOS will feel responsive for basic automation. Lights, switches, scenes, and most Zigbee devices respond within acceptable latency. But if you're doing heavy video analysis through Frigate or running multiple memory-intensive addons simultaneously, the virtualization overhead adds up. I've seen FRigate's object detection drop frames noticeably on a VM with 4 cores compared to the same workload on bare metal Linux. The difference is measurable, not theoretical. Sixteen percent frame loss is enough to make real-time detection unreliable. The biggest practical limitation is that this whole approach depends on a Windows edition workaround that Microsoft can disable at any time. There is no contractual guarantee. I check the Hyper-V feature status on my machine once a month as a habit. If it disappears after an update, you can rerun the DISM command and restart, but you've just lost an hour of your evening to something that should work out of the box. If you need production stability, the alternative is running Home Assistant Container on a Linux machine or paying for Windows 11 Pro to get Hyper-V officially supported. The upgrade costs roughly the price of a few pizzas, but it removes the uncertainty entirely.

How to Enable and Install Hyper-V in Windows 11 Home [v24H2] - YouTube
How to Enable and Install Hyper-V in Windows 11 Home [v24H2] - YouTube

For people who just want to experiment or run a small smart home setup on a machine they already own, the Hyper-V route on Windows 11 Home gets the job done. It's not elegant. It's not guaranteed to persist across updates. But it works, and it lets you run the full Home Assistant OS appliance without dual-booting or buying additional hardware. That trade-off is reasonable if you're aware of what you're signing up for.