Home Assistant¶
Home Assistant Operating System (HAOS) provides a complete home automation platform with supervisor, add-ons, and easy management.
Features¶
- 2000+ integrations
- Powerful automations
- Add-on ecosystem
- Mobile apps
- Voice assistant support
- Local processing
Prerequisites¶
- Foundation complete
- VLAN 200 configured for IoT (recommended)
- DNS record (optional)
System Requirements¶
| Resource | Minimum | Recommended |
|---|---|---|
| vCPU | 2 | 4 |
| RAM | 2 GB | 4 GB |
| Storage | 32 GB | 64 GB |
Installation¶
Deploy Using Proxmox Helper Scripts¶
The easiest method uses community-maintained Proxmox scripts:
Configuration During Install¶
| Setting | Value |
|---|---|
| Hostname | homeassistant |
| VLAN | 200 (IoT network) |
| Start on boot | Yes |
Get IP Address¶
After installation, the VM will obtain an IP via DHCP:
- Check DHCP leases in OPNsense
- Or view the VM console
Initial Setup¶
Access Web Interface¶
Navigate to:
Replace xxx with your assigned IP.
Create Account¶
- Create owner account
- Set home location
- Configure basic settings
Enable Advanced Mode¶
For full functionality:
- Click your profile (bottom left)
- Enable Advanced Mode
Add-ons¶
Install Terminal Add-on¶
For command-line access:
- Navigate to Settings → Add-ons
- Click Add-on Store
- Search for "Terminal & SSH"
- Click Install
- Start the add-on
Recommended Add-ons¶
| Add-on | Purpose |
|---|---|
| Terminal & SSH | Command-line access |
| File Editor | Edit configuration files |
| Samba Share | Access files from network |
| InfluxDB | Time-series database |
| Grafana | Dashboards and visualization |
Remote Access¶
Option 1: Reverse Proxy¶
Configure Caddy in OPNsense:
Option 2: Pangolin/VPN¶
For secure remote access without exposing to internet:
- Access Pangolin web UI
- Create new site "homeassistant"
- Apply configuration in Home Assistant terminal
Integrations¶
Add Integrations¶
- Navigate to Settings → Devices & Services
- Click Add Integration
- Search and configure
Common Integrations¶
| Integration | Setup |
|---|---|
| Philips Hue | Auto-discovered |
| Zigbee | Requires coordinator |
| Z-Wave | Requires controller |
| Google Home | Cloud account |
| Alexa | Cloud account |
Automations¶
Create Automation¶
- Navigate to Settings → Automations
- Click Create Automation
- Define trigger, conditions, actions
Example: Motion Light¶
alias: "Motion Light"
trigger:
- platform: state
entity_id: binary_sensor.motion
to: "on"
condition:
- condition: sun
after: sunset
action:
- service: light.turn_on
target:
entity_id: light.living_room
n8n Integration¶
Connect Home Assistant to n8n for complex workflows:
Generate Long-Lived Token¶
- Click your profile
- Scroll to Long-Lived Access Tokens
- Create token
- Save securely
Configure n8n¶
In n8n, use HTTP Request node:
URL: http://homeassistant.mgmt.internal:8123/api/services/<domain>/<service>
Headers:
Authorization: Bearer <your-token>
Content-Type: application/json
Backup¶
Built-in Backups¶
Home Assistant includes automatic backups:
- Navigate to Settings → System → Backups
- Configure automated backups
- Download backups for off-site storage
Proxmox Backup¶
The VM is also backed up via PBS for full system recovery.
Troubleshooting¶
Cannot Access Web Interface¶
- Verify VM is running
- Check IP address
- Confirm network connectivity
- Check firewall rules
Integration Not Found¶
- Ensure device is on correct network
- Check mDNS/discovery settings
- Try manual configuration
Slow Performance¶
- Increase VM resources
- Review integrations (disable unused)
- Check database size
Security Best Practices¶
- Use strong passwords
- Enable MFA
- Keep HAOS updated
- Isolate IoT network
- Review automation rules
- Limit cloud integrations