64 lines
2.9 KiB
Markdown
64 lines
2.9 KiB
Markdown
# AI-Managed Smart Home
|
|
|
|
Local-first, open-source smart home: Home Assistant + Zigbee + RuView (CSI presence)
|
|
+ Bermuda (BLE identity) + local LLM (Ollama) + Frigate (peephole face recognition)
|
|
+ Grocy (kitchen kiosk) + Nextcloud calendar sync.
|
|
|
|
See [`docs/project-plan.md`](docs/project-plan.md) for the full hardware list,
|
|
software stack, and phased implementation plan.
|
|
|
|
## Repo layout
|
|
|
|
```
|
|
docs/ Project plan and design notes
|
|
hosts/
|
|
container-host/ Docker Compose stack: HA, Mosquitto, Zigbee2MQTT,
|
|
Frigate, Grocy, Node-RED, monitoring, etc.
|
|
configs/ Per-service config files (mosquitto.conf, etc.)
|
|
scripts/ Host setup / bootstrap scripts
|
|
llm-host/ Ollama + GPU host setup (separate physical machine)
|
|
firmware/
|
|
ruview/ RuView ESP32-S3 CSI presence node configs
|
|
esphome-ble-proxy/ ESPHome configs for Bermuda BLE proxy nodes
|
|
identity/ Face<->MAC<->name correlation logic (Node-RED flow
|
|
export once stabilized, or a Python service)
|
|
```
|
|
|
|
## Status
|
|
|
|
- [x] Project plan drafted
|
|
- [x] Container host setup script v1 (HA, Mosquitto, Zigbee2MQTT USB, Frigate, Grocy)
|
|
- [x] Node-RED + monitoring (Netdata) + dashboard (Homepage) + ntfy + Portainer added to compose stack
|
|
- [x] Backup (restic) setup — scripted, off by default until a backup target is picked (`ENABLE_BACKUPS`)
|
|
- [ ] Bermuda / ESPHome BLE proxy configs
|
|
- [ ] RuView node configs
|
|
- [ ] Frigate peephole camera config (real RTSP details)
|
|
- [ ] Grocy kiosk (Pi + touchscreen) setup
|
|
- [ ] LLM host (Ollama) setup script
|
|
- [ ] CalDAV / Nextcloud calendar integration notes
|
|
- [ ] Identity correlation flow (Node-RED)
|
|
|
|
## Quick start
|
|
|
|
```bash
|
|
cd hosts/container-host/scripts
|
|
sudo ./setup-container-host.sh
|
|
```
|
|
|
|
Edit the variables at the top of the script first (timezone, Zigbee USB device
|
|
path, Mealie/hardware-accel toggles, and whether to enable Node-RED/Netdata/
|
|
Homepage/ntfy/Portainer and restic backups — all but backups are on by
|
|
default). See `docs/project-plan.md` for the full phased rollout order — don't
|
|
skip straight to Phase 4+ automations before the Phase 2 reactive baseline
|
|
(presence -> light, no LLM in the loop) is working.
|
|
|
|
The script brings up everything that runs on this one Debian host: Home
|
|
Assistant, Mosquitto, Zigbee2MQTT, Node-RED, Frigate, Grocy, Netdata, a
|
|
Homepage dashboard, ntfy, and Portainer, plus an optional scheduled restic
|
|
backup timer. What it can't do for you, because they need separate hardware,
|
|
credentials, or physical setup: pairing Zigbee sensors, flashing
|
|
RuView/ESPHome/Bermuda BLE proxy boards, pointing Frigate at a real camera
|
|
RTSP URL, the Grocy kiosk touchscreen, the separate LLM/GPU host, and wiring
|
|
up the Nextcloud CalDAV integration — see the Status checklist above and
|
|
`docs/project-plan.md` for those.
|