LIVEReading: Run a Private Smart Home Hub on Any PC or PiTotal time: 12 minSteps: 6Worked first time: 75% LIVEReading: Run a Private Smart Home Hub on Any PC or PiTotal time: 12 minSteps: 6Worked first time: 75%
CBW
Run a Private Smart Home Hub on Any PC or Pi
Mediumgithub.com/home-assistant/core2026-06-17

Run a Private Smart Home Hub on Any PC or Pi

Home Assistant is free, open-source software that lets you control smart lights, plugs, sensors, and more — all locally, without cloud subscriptions. This guide uses the official installer so you write zero code.

// Build stats

  • Total time12 min
  • Number of steps6
  • DifficultyMedium
  • Worked first time75%
// Before you start

What you need

  • A Raspberry Pi 4/5 (2 GB+ RAM) OR a spare PC/Mac running Linux or Windows
  • A microSD card (32 GB+) if using a Raspberry Pi, OR 32 GB free disk space on a PC
  • Stable internet connection during setup
  • Basic comfort plugging in cables and downloading files
01
Step 1 of 6

Download the official Home Assistant OS image

5 min

Home Assistant publishes ready-made disk images for Raspberry Pi and common PC hardware. You download the image for your device — no compiling, no Python setup. Visit the official installation page to grab the right file.

Terminal · mac
$ # Open this URL in your browser and pick your hardware:
$ https://www.home-assistant.io/installation/
What you should see
A compressed image file (e.g. haos_rpi4-64-13.x.img.xz) downloads to your computer.
This might happen

Downloading the wrong image for your hardware (e.g. 32-bit vs 64-bit Pi)

Check your Raspberry Pi model number on the board itself. Pi 4 and Pi 5 use the '64-bit' image. Pi 3 uses the '32-bit' image.

02
Step 2 of 6

Flash the image to your SD card or USB drive

10 min

Balena Etcher is a free, beginner-friendly tool that writes the Home Assistant image onto your SD card or USB drive in a few clicks. Download it, open it, pick your image file, pick your SD card, and click Flash. That is the entire step.

Terminal · mac
$ # Download Balena Etcher (free) from:
$ https://etcher.balena.io/
$
$ # Then:
$ # 1. Open Etcher
$ # 2. Click 'Flash from file' → select your downloaded .img.xz file
$ # 3. Click 'Select target' → choose your SD card or USB drive
$ # 4. Click 'Flash!'
What you should see
Etcher shows 'Flash Complete!' with a green checkmark. The drive may appear unreadable in Windows Explorer — that is normal.
This might happen

Etcher asks for admin/password permission

This is expected. Writing to a drive requires elevated privileges. Click Allow or enter your system password.

03
Step 3 of 6

Boot your device from the flashed drive

5 min

Insert the SD card into your Raspberry Pi (or the USB drive into your PC), connect an ethernet cable, and power it on. Home Assistant will boot and set itself up automatically. You do not need a monitor or keyboard attached — it runs headless.

Terminal · mac
$ # Physical steps only — no terminal needed:
$ # 1. Insert SD card / USB drive into your device
$ # 2. Plug in an ethernet cable (Wi-Fi can be configured later)
$ # 3. Plug in power
$ # 4. Wait 5-10 minutes for first boot to complete
What you should see
After 5-10 minutes, Home Assistant is reachable on your network. No screen output is required.
This might happen

First boot takes longer than expected or seems stuck

Wait the full 10 minutes. The first boot downloads additional components from the internet. A slow connection can extend this to 20 minutes.

04
Step 4 of 6

Open the Home Assistant web interface

2 min

Home Assistant runs a web dashboard you access from any browser on the same network. Type the address below into your browser. If that does not work, your router's device list will show the IP address of your new Home Assistant device.

Terminal · mac
$ # Type this into your browser address bar:
$ http://homeassistant.local:8123
$
$ # If that doesn't work, find the IP from your router admin page
$ # and use: http://YOUR_IP_ADDRESS:8123
What you should see
A 'Preparing Home Assistant' loading screen appears, then a welcome/onboarding wizard.
This might happen

'Site can't be reached' error in browser

The device may still be booting. Wait 2 more minutes and refresh. If still failing, check your router's connected devices list to confirm the Pi/PC got an IP address and use that IP directly.

05
Step 5 of 6

Complete the onboarding wizard

5 min

The wizard walks you through creating your admin account, setting your home location (used for sunrise/sunset automations), and choosing your preferred units. Home Assistant will also auto-detect many smart devices already on your network and offer to add them.

Terminal · mac
$ # Browser-only — follow the on-screen prompts:
$ # 1. Create a username and strong password (save these!)
$ # 2. Set your home name, location, and units
$ # 3. Review auto-detected devices and click 'Finish'
What you should see
You land on the Home Assistant dashboard (called 'Overview') showing any auto-detected devices.
This might happen

No devices are auto-detected

This is common if your smart devices use a cloud app (e.g. Philips Hue, IKEA). Go to Settings → Devices & Services → Add Integration and search for your device brand to add it manually.

06
Step 6 of 6

Add your first smart device integration

5 min

Home Assistant supports thousands of devices through 'integrations'. You find and add them through the Settings menu — no code required. Search for your device brand (e.g. Philips Hue, TP-Link, Google Cast, IKEA TRADFRI) and follow the prompts.

Terminal · mac
$ # In the Home Assistant browser UI:
$ # 1. Click 'Settings' (bottom-left sidebar)
$ # 2. Click 'Devices & Services'
$ # 3. Click '+ Add Integration' (bottom-right)
$ # 4. Search for your device brand
$ # 5. Follow the on-screen setup steps for that integration
What you should see
Your device appears under 'Devices & Services' and shows up on your dashboard.
This might happen

Your device brand is not found in the integration list

Check the full integration list at https://www.home-assistant.io/integrations/ — some devices require a local hub (e.g. Zigbee USB stick) or a third-party add-on from the HACS store.

// Status

cooked. baked. worked.

A locally-hosted smart home dashboard running 24/7 on your own hardware, accessible from any browser on your network, with no monthly fees and no data sent to the cloud.

// the honest bit

The honest part

Home Assistant is powerful but has a real learning curve beyond initial setup. Automations, scripts, and advanced integrations often require reading documentation. Some smart devices (especially cheap Wi-Fi bulbs) only work via cloud and may have limited local control. Zigbee and Z-Wave devices need a compatible USB stick (e.g. Sonoff Zigbee 3.0, ~$20) to work locally. The Raspberry Pi 4 is the most reliable hardware choice; older Pi 3 models can be slow. Expect to spend several hours over your first week getting everything configured the way you want.