home-assistant

🏠 My Home Assistant backup πŸ€–

APACHE-2.0 License

Stars
2

home-assistant

🏠 My Home Assistant backup πŸ€–


πŸš€ Β  TL;DR

cp .env.tmpl .env
# Update .env
# Update .sop.yaml to include the age public key id
docker compose up -d

πŸ”Œ Β  Ports

Container Port
Home Assistant 8123
ESPHome 6052
Node-RED 1880
Code Server 8443
Uptime Kuma 3001
Portainer 9443
Dozzle 8081

πŸ”‘ Β  SOPS

SOPS is used to encrypt files that contain secrets. The encrypted copy of the file ends in *.enc.

# sops-age = lpass entry name
# att-2571789250549588435-38084 = lpass attach id of keys.txt in sops-age entry
mkdir -p ~/.config/sops/age
lpass show sops-age --attach=att-2571789250549588435-38084 -q > ~/.config/sops/age/keys.txt
# or
age-keygen -o ~/.config/sops/age/keys.txt
sops -e --input-type yaml --output-type yaml ./ha/secrets.yaml > ./ha/secrets.yaml.enc
sops -d --input-type yaml --output-type yaml ./ha/secrets.yaml.enc > ./ha/secrets.yaml

πŸ“ Β  Notes

  • My setup is using the UI Lovelace Minimalist theme.
  • Remove unwanted entities - Development tools β†’ Services β†’ recorder.purge_entities
  • Remove ZHA device
    • Copy Settings β†’ Devices & services β†’ Zigbee Home Automation β†’ <Device> β†’ Device info β†’ Zigbee info β†’ IEEE
    • Development tools β†’ Services β†’ zha.remove
  • Debug rtl_433 - Settings β†’ Devices & services β†’ MQTT β†’ Configure β†’ Listen to a topic β†’ rtl_433/# β†’ Start listening
  • List all entities Template β†’ {{ states | map(attribute='entity_id') | list | join('\n') }}

rtl_433

lsusb
Bus 001 Device 003: ID 0bda:2838 Realtek Semiconductor Corp. RTL2838 DVB-T
# /etc/udev/rules.d/99-rtl433.rules
SUBSYSTEM=="usb", ATTRS{idVendor}=="0bda", ATTRS{idProduct}=="2838", SYMLINK+="rtl433"
# compose.yaml
...
services:
  rtl433:
    devices:
      - /dev/rtl433:/dev/bus/usb/001/003
...

πŸ› οΈ Β  Hardware


β€‹βš–οΈβ€‹Β β€‹ License

​​Apache License 2.0


β€‹πŸ“β€‹Β β€‹ Author

​This project was started in 2023 by ​Nicholas Wilde​.

Badges
Extracted from project README
pre-commit task