Setup Guide¶
How to stand up this configuration on a fresh HAOS install.
Prerequisites¶
- Home Assistant OS running (HAOS recommended for full add-on support)
- SSH access enabled (Settings → Add-ons → Terminal & SSH)
- All hardware connected (Zigbee dongle, Z-Wave dongle, etc.)
Step 1 — Clone the Repo¶
On your local machine:
Step 2 — Create secrets.yaml¶
Edit secrets.yaml and fill in all values. Required keys:
| Key | Description |
|---|---|
nabu_casa_security_url | Your Nabu Casa URL + /lovelace/security |
nabu_casa_climate_url | Your Nabu Casa URL + /lovelace/climate |
influxdb_password | InfluxDB password you set up |
home_street | Your street address |
home_city | City |
home_state | State |
home_zip | ZIP code |
Step 3 — Push Config Files to HAOS¶
# Replace 192.168.x.x with your HA instance's local IP
HA=root@192.168.x.x
scp configuration.yaml $HA:/config/configuration.yaml
scp configuration_tou_addition.yaml $HA:/config/configuration_tou_addition.yaml
scp automations.yaml $HA:/config/automations.yaml
scp scripts.yaml $HA:/config/scripts.yaml
scp homekit.yaml $HA:/config/homekit.yaml
scp influxdb_ha.yaml $HA:/config/influxdb_ha.yaml
scp secrets.yaml $HA:/config/secrets.yaml
ssh $HA "ha core restart"
Step 4 — Install Required Integrations¶
Install these via HA Settings → Integrations:
- Ring — cameras, chimes, doorbell
- Ecobee — thermostats
- Sonos — speakers
- Mobile App — on each iPhone
- ESPHome — garage door openers
- InfluxDB — time-series storage
Step 5 — Install Required Add-ons¶
Settings → Add-ons:
- Mosquitto broker — MQTT for Thingino camera
- InfluxDB — time-series database
- Grafana — analytics dashboards
- Studio Code Server — browser-based file editor
- Terminal & SSH — SSH access
- File editor — simple file editing
Step 6 — Install Custom Dashboard Components (HACS)¶
Install HACS, then install these integrations:
button-card— used extensively on Climate tabmushroom— thermostat controls, chipsapexcharts-card— temperature chart
Step 7 — Restore the Dashboard¶
The live dashboard is stored in HA's .storage/ directory, not as a YAML file:
# The reference copy in the repo is a starting point
# Push it to the live location
scp dashboard.yaml root@192.168.x.x:/config/.storage/lovelace.home_command_dashboard
ssh root@192.168.x.x "ha core restart"
Step 8 — Configure Zigbee (ZHA)¶
- Plug in ZBT-2 USB dongle (via USB hub + extension cable — keep away from WiFi radio)
- Settings → Integrations → Add → Zigbee Home Automation
- Select the ZBT-2 device
- Channel: 25
- Pair devices in order: mains-powered first (switches, plugs), then battery sensors
Day-to-Day Workflow¶
Update automations¶
scp automations.yaml root@192.168.x.x:/config/automations.yaml
# Then: Developer Tools → YAML → Reload Automations (no restart needed)
Update dashboard¶
# Always pull fresh first
ssh root@192.168.x.x "cat /config/.storage/lovelace.home_command_dashboard" > /tmp/lovelace_dashboard.json
# Edit /tmp/lovelace_dashboard.json
scp /tmp/lovelace_dashboard.json root@192.168.x.x:/config/.storage/lovelace.home_command_dashboard
ssh root@192.168.x.x "ha core restart"
Update other config files¶
scp configuration.yaml root@192.168.x.x:/config/configuration.yaml
ssh root@192.168.x.x "ha core restart"
Secrets Backup¶
secrets.yaml is gitignored and lives only on the HAOS box and your local machine. Back it up separately — it cannot be reconstructed from the repo (only the template can).