PickleHome runs on a Intel NUC living in my media cabinet, running Ubuntu Server. Services are managed by Docker and docker-compose (ie the heart of this repo is its docker-compose.yml
).
Home Assistant is the (other) heart. picklehome-homeassistant-config contains all the configuration for it (less secrets). The services are either in support of Home Assistant configuration, or provide Home Assistant integration to other platforms.
These are some ideas I try to keep in mind while designing and automating. I just don't always succeed at doing so 😂
- Build for convenience, comfort, and security of the entire household, not just myself
- Design for voice control as the primary interface, with any visual interactions being secondary or backup
- Try to keep Home Assistant as the central hub and source of truth
- Backup everything
- Prefer devices with local control to cloud control
- Prefer devices that have open APIs
- Prefer APIs over HTTP or MQTT, and in their absence, build wrappers that expose it that way
- Amazon Echo and Echo Dot
- Hue
- Sonos
- Vera
- Schlage Connect Touch
- Ecobee 3
- Broadlink RM Pro
- Nest Cam
- Etekcity outlets
Check out the wiki.
script/test
runs yamlint on the YAML files for prettiness, and uses docker-compose config
to validate the config.
Run screen
on the NUC, edit stuff, and run script/deploy
to apply home-assistant changes or or do stuff with docker-compose
😅