Files
home-bro-brain/PLAN.md
T

58 lines
2.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Projekt: Home-Bro Der nervige Mitbewohner
## 🎯 Vision
Ein KI-basiertes Überwachungssystem mit Persönlichkeit. Home-Bro beobachtet Räume über verschiedene Kameras (Satelliten) und kommentiert den Zustand (z. B. Unordnung) auf sarkastische und proaktive Weise.
## 🏗 Architektur (Distributed System)
### 1. Das Gehirn (Brain) - Repository: `home-bro-brain`
- **Hardware:** AMD Ryzen 7500 (PC)
- **Umgebung:** Docker-Container (FastAPI + YOLOv11)
- **Aufgabe:** Zentrale Bildanalyse, Objekterkennung (Tassen, Teller, Flaschen) und Generierung sarkastischer Sprüche.
### 2. Die Satelliten (Clients) - Repository: `home-bro-client`
- **Primär-Satellit:** Raspberry Pi 4 mit Logitech C922 Webcam.
- **Input:** Wake-Word "Porcupine", Audio-Aufnahme, 1080p Snapshots.
- **Output:** Audio-Wiedergabe über Bluetooth-Speaker (CSL).
- **Video-Satelliten:** - TP-Link Tapo C220 (Anbindung via RTSP/OpenCV).
- ESP32-CAM Module (OV3660/OV2640) für Nebenräume.
## 🛠 Tech-Stack
- **KI:** Ultralytics YOLOv11 (Objekterkennung).
- **Backend:** FastAPI (Python) für die zentrale API.
- **Kommunikation:** REST (Push vom Pi) & RTSP (Pull von Tapo).
- **Editor:** Antigravity (Gitea-Anbindung).
- **Doku:** NotebookLM für Strategie & Projekt-Gedächtnis.
## 📋 Aktueller Entwicklungs-Fahrplan
### Phase 1: Brain-Fundament (Lokal auf Mac/PC)
- [x] Repository-Struktur anlegen.
- [x] `requirements.txt` definieren.
- [x] `app/vision.py` mit YOLO-Inferenz und Sarkasmus-Logik implementieren.
- [x] `app/main.py` als API-Endpunkt fertigstellen.
- [x] Lokaler Test via FastAPI Swagger-UI (`/docs`) oder Test-Script.
### Phase 2: Client-Anbindung (Pi & Webcam)
- [ ] `home-bro-client` Repository erstellen.
- [ ] Snapshot-Logik auf dem Pi implementieren (`fswebcam` oder `libcamera`).
- [ ] Wake-Word Trigger mit Bild-Upload an das Brain verknüpfen.
### Phase 3: Erweiterung & "Nerv-Faktor"
- [ ] "Gedächtnis"-Funktion (Status-Tracking: Wie lange steht die Tasse schon dort?).
- [ ] Sprachausgabe (TTS) der sarkastischen Sprüche am Pi.
- [ ] (Optional) Tapo C220 via RTSP integrieren (sobald Hardware vorhanden).
## 📝 Notizen für NotebookLM
- **Persönlichkeit:** Sarkastisch, leicht passiv-aggressiv, fokusiert auf Ordnung.
- **Hardware-Hack:** Bluetooth-Speaker am Pi benötigt stabilen Akku/Stromversorgung, um Lastspitzen bei Speaker-Nutzung abzufangen.
- **Workflow:** Coding in Antigravity -> Push zu Gitea -> Deployment auf Ryzen/Pi.