Skip to content

Saboti215/dirigera-scene-controller

Repository files navigation

IKEA Dirigera Stream Deck Controller

Dieses Projekt ermöglicht es, Szenen des IKEA Dirigera Hubs lokal und ohne Cloud-Abhängigkeit (wie Alexa oder SmartThings) direkt über das Elgato Stream Deck zu steuern.

Es generiert automatisch fertige Windows-Verknüpfungen (.lnk), die vom Stream Deck nativ und fehlerfrei als Programme akzeptiert werden.

🛠 Voraussetzungen

  • Ein Windows-PC oder Mac mit installiertem Python 3.x
  • Die Elgato Stream Deck Software
  • Ein IKEA Dirigera Hub im selben lokalen Netzwerk wie der PC

📦 Installation

  1. Lade dir dieses Projekt in einen Ordner deiner Wahl herunter.
  2. Füge der Datei requirements.txt das Modul pywin32 hinzu, falls du Windows nutzt. Sie sollte so aussehen:
    dirigera
    python-dotenv
    pywin32
    
  3. Öffne die Windows-Eingabeaufforderung (CMD) oder das Terminal in genau diesem Ordner.
  4. Installiere die benötigten Python-Bibliotheken mit folgendem Befehl:
    pip install -r requirements.txt
    

---

## ⚙️ Schritt 1: Token erzeugen und Hub verknüpfen

Damit deine Skripte den Hub steuern dürfen, müssen sie sich authentifizieren. Dafür benötigst du die IP-Adresse deines Hubs und musst einen sogenannten **Token** (einen digitalen Schlüssel) generieren.

1. **IP-Adresse finden:** Öffne die IKEA Home smart App auf deinem Handy. Gehe auf das Profil/Zahnrad-Symbol -> *Hub-Einstellungen* und notiere dir die angezeigte IP-Adresse (z.B. `192.168.178.50`).
2. **Token generieren:** Das installierte `dirigera` Paket bringt ein eingebautes Werkzeug dafür mit. Tippe im Terminal folgenden Befehl ein (ersetze die IP mit deiner!):
   ```bash
   generate-token 192.168.178.50
  1. Hub bestätigen: Auf dem Bildschirm erscheint nun die Aufforderung, den physischen Aktions-Knopf an deinem IKEA Dirigera Hub (die kleine Taste am Gerät) zu drücken.

  2. Token speichern: Sobald du den Knopf gedrückt hast, spuckt das Terminal eine lange Zeichenkette aus. Das ist dein Token.

  3. Die .env Datei anlegen: Erstelle in deinem Projektordner eine neue Datei namens .env (ohne Dateiendung) und trage deine Daten so ein:

    DIRIGERA_IP=192.168.178.50
    DIRIGERA_TOKEN=dein_langer_generierter_token_hier

🚀 Schritt 2: Stream Deck Skripte automatisch generieren

Da das Stream Deck keine direkten Argumente an Python-Skripte übergeben kann, nutzen wir ein Generator-Skript. Dieses erstellt für jede deiner IKEA-Szenen vollautomatisch eine klickbare Verknüpfung.

Führe dieses Skript in deinem Terminal aus:

python generate_streamdeck_scripts.py

Was dieses Skript macht:

  1. Es verbindet sich mit deinem Hub und lädt alle deine erstellten Szenen herunter.
  2. Es erstellt (oder leert) automatisch einen Ordner namens streamdeck_scripts in deinem Projektverzeichnis.
  3. Es generiert für jede Szene eine saubere .lnk Windows-Verknüpfung (bzw. .sh für Mac). Diese Verknüpfungen enthalten bereits den perfekten Code, um stumm im Hintergrund (pythonw.exe) ausgeführt zu werden, ohne dass ein störendes Konsolenfenster aufblitzt.

🎮 Schritt 3: Skripte ins Stream Deck einfügen

Das ist der einfachste Teil, da das Stream Deck .lnk Dateien nativ unterstützt:

  1. Öffne die Stream Deck Software.
  2. Ziehe aus der rechten Seitenleiste unter der Kategorie System die Aktion Öffnen auf eine leere Taste.
  3. Klicke bei der Aktion auf den Button mit den drei Punkten (...).
  4. Navigiere in deinen neuen Ordner streamdeck_scripts und wähle einfach die .lnk Datei für die gewünschte Szene aus (z.B. Gaming_Licht.lnk).

Fertig! Ein Knopfdruck auf dem Stream Deck aktiviert nun verzögerungsfrei deine IKEA-Szene. Wenn du in der IKEA App neue Szenen hinzufügst, führe einfach Schritt 2 erneut aus.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages