About me Contact

Home Assistant on a PC, mini PC or laptop – installation and setup from scratch

An old computer, efficient mini PC or laptop can become a capable Home Assistant server. First choose between Home Assistant OS installed directly on disk, HAOS in a virtual machine and Home Assistant Container in Docker.

The main procedure covers the option recommended for most people: Home Assistant OS Generic x86-64 on a dedicated computer. Separate sections explain when a VM or Container is appropriate.

Is a PC, mini PC or laptop a good choice?

Mini PC

Usually the best balance: small, quiet and efficient, often with an SSD and Ethernet. A used x86-64 office computer can cost less than a new single-board setup.

Old desktop PC

It can work well if it supports 64-bit operation and UEFI. Check energy use, fan noise and disk condition because the server will run continuously.

Laptop

It includes a screen, keyboard and short battery backup, but must not suspend when the lid is closed. Remove a damaged or swollen battery rather than leaving it unattended.

Requirements and preparation

  • a 64-bit Intel or AMD computer that can boot using UEFI,
  • a healthy SATA, SSD, M.2 or eMMC drive dedicated to Home Assistant,
  • an 8 GB or larger USB flash drive for Live Ubuntu,
  • Ethernet and internet access for the first boot,
  • another computer to prepare the USB drive and access the web interface,
  • a backup of every file on the target computer.

Check the hardware first: review disk SMART data, cooling, Ethernet and the firmware option to power on after an outage. The hardware need not be new, but it must run reliably around the clock.

Home Assistant OS, a virtual machine or Container?

Method Best suited to Main characteristics
HAOS on disk A dedicated HA computer Simplest maintenance, Supervisor, apps and UI updates. Recommended for most users.
HAOS in a VM A host running other workloads Full HAOS features, but you maintain the host and hypervisor and configure networking and USB passthrough.
Container Experienced Linux and Docker users You maintain the host and updates. No Supervisor or HAOS apps; supporting services run separately.

Home Assistant OS and Home Assistant Container are the two currently supported installation types. The former Home Assistant Core Python-environment and Home Assistant Supervised installation methods became unsupported with release 2025.12 and are not sensible choices for a new system.

A direct installation erases the operating system and all data

Warning: writing Home Assistant OS overwrites the selected disk. Windows, Linux, recovery partitions and files on it will be deleted. Disconnect other drives where practical, back up your data, then verify the target model and capacity. Do not use this procedure on a disk from which you still want to boot the existing system.

Prepare BIOS/UEFI

  1. Start the computer and enter firmware settings using F2, Del, F1, F10 or the key specified by its manufacturer.
  2. Enable UEFI boot. Do not use Legacy BIOS or CSM.
  3. Disable Secure Boot.
  4. Allow USB boot. If available, consider enabling Power on after AC loss.
  5. Save and exit. Option names differ between manufacturers.

Boot Live Ubuntu from USB

  1. Download the current Ubuntu Desktop image and create a bootable USB drive using Ubuntu’s instructions.
  2. Insert it into the target computer and choose its UEFI entry in the boot menu.
  3. On the Ubuntu screen select Try Ubuntu, not Install Ubuntu.
  4. Connect the live environment to the internet and open the official Generic x86-64 guide.

Ubuntu is running from the USB drive and is used only to write the HAOS image to the internal disk.

Download and write the Generic x86-64 image

  1. Download the current Generic x86-64 image from the official installation page. Do not copy a fixed release number from a third-party guide.
  2. Open Disks in Ubuntu.
  3. Select the internal target disk on the left. Verify its model and capacity; do not select the Ubuntu USB drive or a disk containing needed data.
  4. Open the three-dot menu and select Restore Disk Image….
  5. Choose the downloaded HAOS image, start restoring and confirm the target disk again.
  6. Wait until it finishes. If swap on the target disk is active, unmount that partition in Disks and retry.
  7. Shut down from Ubuntu and remove the USB drive after the computer is fully off.

Final check: selecting “Restore” starts overwriting the entire target disk.

Write the target drive on another computer

If the target drive is removable or can be connected through a suitable adapter, the official guide also allows writing the extracted HAOS image with Balena Etcher on another computer. Choose Flash from file, verify the target drive and start writing. For a non-removable laptop drive, use the Live Ubuntu method instead.

First boot of Home Assistant OS

  1. Connect Ethernet to a router or switch with internet access.
  2. Power on the computer. If it still boots from USB, remove the drive or change the boot order.
  3. A connected display should show the Home Assistant console. A monitor and keyboard are not needed for normal use afterwards.
  4. From another device on the same network open http://homeassistant.local:8123, http://homeassistant:8123 or http://IP_ADDRESS:8123.
  5. Find the IP address in your router’s DHCP client list.

The first boot needs internet access because HAOS downloads the latest Home Assistant Core. Preparation can take time; do not turn the machine off while it is running.

Complete initial setup

  1. Create a new smart home or upload a backup from an earlier installation.
  2. Create the owner account and set a strong, unique password.
  3. Set the home location, time zone, units and currency.
  4. Choose whether to share anonymous analytics, then finish the wizard.
  5. Review discovered devices and open the main dashboard.

Home Assistant OS in a virtual machine

A VM makes sense if the computer must run other services too, or if you already manage VirtualBox, KVM/Proxmox or VMware. Download the official VDI, QCOW2 or OVA image for your hypervisor.

  • the official minimum is 2 GB RAM and 2 vCPUs; allocate more according to workload,
  • enable EFI/UEFI for the virtual machine,
  • use bridged networking so HA is reachable on the local network,
  • start the VM automatically with the host,
  • configure persistent USB passthrough for Zigbee or Z-Wave radios.

USB Zigbee and Z-Wave can work in a VM, but the radio must be assigned exclusively to it. Verify the assignment after restarting the host.

Home Assistant Container in Docker

Container is a supported route for people who want to maintain Linux and Docker Engine themselves. It has no Supervisor or HAOS apps. MQTT, Zigbee2MQTT, Z-Wave JS and other supporting services are separate containers that you maintain and update.

The current official guide requires Docker Engine 23.0.0 or later and says Docker Desktop will not work. Persist the configuration at /config, set the time zone and expose any required host devices deliberately.

Choose Container because you are prepared to manage it, not merely because Docker sounds familiar. You are responsible for the host OS, container networking, updates, backups and USB access.

Move Home Assistant to a PC or mini PC

  1. On the old device, open Settings → System → Backups and create a current full backup.
  2. Download the backup to another computer or save it to a configured external location. Do not leave the only copy on the old device.
  3. Download the backup emergency kit and keep its encryption key safe. Current encrypted backups need that key for restoration.
  4. Check used storage on the source system. The new device needs more free space than the source installation uses; backup file size alone is not a reliable measure.
  5. Install HAOS on the new computer. On the welcome screen, choose Upload backup, select the file and restore the required parts using the emergency-kit key.
  6. Do not refresh the page while restoration is running. Afterwards, sign in with the credentials from the old installation.
  7. Reconnect Zigbee/Z-Wave coordinators and other USB hardware, then verify device paths, integrations, network storage and unavailable entities.

From Raspberry Pi: a Raspberry Pi backup can be restored to x86-64 during onboarding. If you also replace the Zigbee radio, follow the radio-migration procedure for the integration you use.

Zigbee, Z-Wave, Bluetooth and USB devices

InstallationDevice access
HAOS on diskConnect the coordinator directly and verify the selected device after migration.
HAOS in a VMConfigure USB passthrough, assign the radio exclusively to the VM and test it after a host restart.
ContainerMap the host device into the container, preferably through a stable device path, and grant the required permissions.

The same principles apply to Zigbee/Z-Wave coordinators and USB Bluetooth adapters. Integrated Bluetooth depends on hardware support and the installation method.

What should you configure immediately?

  1. Updates: check HAOS, Core, Supervisor and app updates.
  2. Backups: under Settings → System → Backups, set a schedule, download the emergency kit and keep at least one copy away from the server.
  3. Stable address: create a DHCP reservation in the router.
  4. Power: enable automatic startup after an outage and consider a UPS.
  5. Laptop: verify lid-close and power-return behaviour. The server must not suspend.
  6. Remote access: do not expose plain port 8123 directly to the internet. Use Home Assistant Cloud or a properly configured VPN.

Common problems

No bootable device

Confirm UEFI and disabled Secure Boot. Some systems need a manual EFI entry for \EFI\BOOT\bootx64.efi; the official guide also documents an efibootmgr method.

The page does not open

Check Ethernet, DHCP and internet. Use the IP from the router instead of homeassistant.local. Ensure the phone is not on mobile data or an isolated guest network.

The computer suspends

Disable sleep, hibernation and lid-close suspension in the relevant host or firmware settings. A Home Assistant server should stay on.

USB disappears after a VM restart

Assign the radio by a stable device identifier, check the hypervisor’s USB filter and ensure that the host has not claimed the device.

Frequently asked questions

Can Home Assistant run on an old laptop?

Yes, if it is x86-64 capable, boots with UEFI, has supported storage and networking, and can run without suspending. Check cooling and battery condition first.

Does Home Assistant run on a mini PC?

Yes, when the computer meets the Generic x86-64 requirements and its storage and network hardware are supported.

Will Home Assistant OS erase Windows?

Yes. A direct HAOS installation overwrites the entire selected drive, including Windows and its data.

Can I keep Windows and run Home Assistant?

Yes, by running Home Assistant OS in a virtual machine. You then maintain Windows, the hypervisor, VM autostart, networking and any USB passthrough.

Can I move Home Assistant from Raspberry Pi to a mini PC?

Yes. Create a current backup, keep the emergency kit and restore it during onboarding on the new HAOS installation. Then verify USB hardware and device integrations.

Is a mini PC better than Raspberry Pi?

It often provides a faster CPU and SSD at a good price. Raspberry Pi is efficient and has a simple official route. Consider the hardware you own, power use and expected workload.

Can I keep Windows and install HAOS beside it?

The main procedure does not create a dual-boot system; HAOS overwrites the selected disk. If Windows must remain, consider HAOS in a VM on a deliberately maintained host.

Do I need a monitor after installation?

No. Normal administration uses a browser or app. A display is only useful for boot troubleshooting.

Can Zigbee USB work through a VM?

Yes, provided the hypervisor reliably passes the USB radio to the VM and retains that assignment after restarts.

Can a laptop run with its lid closed?

Yes, if closing the lid does not suspend it, cooling remains adequate and the battery is safe. Test the behaviour before leaving it unattended.

Must Home Assistant stay connected to the internet?

Many local integrations, automations and dashboards work offline. Internet is required for the initial HAOS boot and is needed for updates, cloud services and integrations that use external APIs.

HAOS or Docker?

Choose HAOS for a dedicated appliance and simpler maintenance. Choose Container when you intentionally want to manage Linux, Docker and supporting services yourself.

Do you need help with installation or migration?

If the computer will not boot HAOS, networking does not work, backup restoration failed or the procedure is simply too complex, you do not have to diagnose everything alone. I can assess the problem and help with installation, migration from Raspberry Pi or another device, backup restoration, networking and further troubleshooting. I will first check whether remote assistance is appropriate.

Contact me.The initial assessment of your request is free and without obligation. → click here

Sources and currency