HomeTwin3D
Mein Zuhause als interaktiver digitaler Zwilling in 3D für Home Assistant
Das Projekt
HomeTwin3D zeigt jedes Gerät dort, wo es wirklich ist. Licht, Rollos, Türen, Haushaltsgeräte, Medien und Energiefluss werden direkt im dreidimensionalen Modell der Wohnung bedient und live aktualisiert, auf Tablet, PC oder als Dashboard an der Wand.
Die Wohnung ist in Blender modelliert, ein Assistent verbindet die Objekte des Modells mit den Entitäten in Home Assistant. Das Projekt ist aus 3Dash hervorgegangen, wird unabhängig weiterentwickelt und läuft als App in Home Assistant auf meinem Raspberry Pi 5, neben Zigbee, MQTT, Hue, QNAP und Kaffee per Sprachsteuerung.
Quellcode auf GitHubFunktionen
- Licht Dimmen, Farbe, Gruppen, Hue Sync
- Rollos & Öffnungen Positionen sowie Kontakte an Türen und Fenstern
- Geräte & Medien Waschen, Kaffee, TV, Steuerung der PCs und NAS
- Energiefluss Verbrauch aus Home Assistant direkt am Modell
- Umgebung Sonnenstand, Wetter, Tag & Nacht
- Warnungen Wasserleck & Batterie am Gerät
- Begehbar Orbit, Rundgang und Flug
- Überall Tablet, PC, Wanddisplay, PWA
Architektur
Erstellen
Blender
- Export als GLB
- feste Gerätekennungen
- Lichter & Animationen
Browser
Webapp
- React · TypeScript
- Babylon.js · WebGL 2
- PWA · IndexedDB
Steuern
Home Assistant
- Zustände live
- Dienstaufrufe
- Energie & Ereignisse
Ausliefern
HA App · Pi 5
- Docker AMD64 / ARM64
- nginx & Medienproxy
- Abgleich aller Geräte
Geräte
Smart Home
- Zigbee · Matter · Thread
- WiFi · MQTT · Hue
- SHIELD · TV · Echo
- QNAP · Synology
Technik
- Läuft flüssig: auf modernen Tablets 30 bis 50 Bilder pro Sekunde, auf dem Desktop deutlich mehr.
- Gerendert wird nur, wenn sich etwas bewegt; Schattenkarten werden pro Bild begrenzt aktualisiert.
- Zuordnungen bleiben bei jedem neuen Import des Modells erhalten; Uploads werden atomar gespeichert, mit Rückfallebene.
- Automatische Prüfung mit 186 Tests, Typprüfung und Datenschutzcheck; neue Versionen werden bei jedem Push gebaut.
- React 18
- TypeScript
- Babylon.js 9
- Vite
- PWA
- Home Assistant API
- Docker
- nginx
- GitHub Actions
- Blender
- Raspberry Pi 5
Basiert auf 3Dash von Kdcius und Mitwirkenden (Apache 2.0). Die Szenen der Demo sind simuliert, das Modell der Wohnung ist nicht Teil des Repositorys.