MHC - Magic Home Controller

Version Version Version Version Actions

IP-Symcon Modul für die Ansteuerung von WiFi LED Controller der Firma Magic Home.

Inhaltverzeichnis

  1. Funktionsumfang
  2. Voraussetzungen
  3. Installation
  4. Einrichten der Instanzen in IP-Symcon
  5. Statusvariablen und Profile
  6. WebFront
  7. PHP-Befehlsreferenz
  8. Versionshistorie

1. Funktionsumfang

Das Modul dient zur Ansteuerung von LED Stripes mittels eines WiFi LED Controllers des Herstellers Magic Home.

Folgende Controller werden unterstützt:

  • Original LEDENET
  • UFO LED WiFi Controller
  • RGBW Controller
  • RGBCW Controller
  • RGB Controller with MIC
  • CCT Ceiling Light
  • Smart Switch 1c
  • Floor Lamp
  • Christmas Light
  • Magnetic Light CCT
  • Magnetic Light Dimable
  • Plant Light
  • Smart Socket 2 USB
  • Christmas Light
  • Spray Light
  • Table Light CCT
  • Smart Bulb Dimmable
  • RGB/WW/CW Controller
  • RGB Controller
  • Smart Bulb RGBCW
  • Single Channel Controller
  • Smart Bulb RGBW
  • Smart Bulb CCT
  • Downlight RGBW
  • CCT Controller
  • Smart Switch 1C
  • Smart Switch 1c Watt
  • Smart Switch 2c
  • Smart Switch 4c
  • Smart Socket 1c
  • RGB Symphony v1
  • RGB Symphony v2
  • RGB Symphony v3
  • Digital Light
  • Ceiling Light
  • Ceiling Light Assist

Erfolgreiche Test wurde mit den Controllern 'RGB Controller', 'RGB Symphony v1' und 'RGB Symphony v2' durchgeführt. Weiterführende Möglichkeiten und Funktionen wie Warmweiß, Music usw. konnten aus Mangel an Hardware noch nicht implementiert werden. Aufgrund der technischen Einschränkung von 128 Profilassoziationen werden bei den 'Adressierbaren Effekten' nicht alle 300 Modi unterstützt.

2. Voraussetzungen

  • IP-Symcon ab Version 6.0

3. Installation

  • Über den Modul Store das Modul 'Magic Home Controller' installieren.
  • Alternativ Über das Modul-Control folgende URL hinzufügen.
    https://github.com/Wilkware/IPSymconMHC oder git://github.com/Wilkware/IPSymconMHC.git

4. Einrichten der Instanzen in IP-Symcon

Magic Home Discovery

Die Gerätesuche ist über die Glocke oben rechts in der Konsole aufrufbar. Dort über "SYSTEM AUSWÄHLEN" kann das 'Magic Home Discovery'-Modul ausgewählt und installiert werden.

Magic Home Controller

Unter "Instanz hinzufügen" ist das Magic Home Controller-Modul (Alias: LED Wifi Controller, LED Strips Controller) unter dem Hersteller 'Magic Home' aufgeführt.

Konfigurationsseite:

Die Konfiguration beinhaltet die Anzeige der Geräteinformationen (IP-Adresse usw.) und die Auswahl der Farbkanal-Reihenfolge (RGB-Pins).
Die Reihenfolge der Pins beginnt immer ausgehend vom GND-Pin (12V Pin).

Einstellungsbereich:

Geräteinformationen ...

Name Beschreibung
Controller-Typ Typbezeichnung des Conrtolers (27 mögliche Typen)
Controller-Modell Modellbezeichnung des Conrtolers
Controller-IP IP-Adresse des Controlers im lokalen WLAN (zb. 192.168.0.10)
Controller-ID ID des Controlers (MAC-Adresse des Controlers)

Erweiterte Einstellungen ...

Name Beschreibung
RGB Pin Belegung Reihenfolge der Farb-Kanäle(Pins), Standard ist RGB

Aktionsbereich:

Aktion Beschreibung
SYNCRONISIEREN Auslesen des internen Controler-Setups und Abgleich der betroffenen Statusvariablen.

5. Statusvariablen und Profile

Ident Name Typ Profil Beschreibung
Brightness Helligkeit Integer ~Intensity.100 Helligkeitswert von 0 bis 100%
Color Farbe Integer ~HexColor Farbwert
Mode Modus Integer MHC.Preset, MHC.Original oder MHC.Addressable Manueller Farbmodus oder vordefinierter Funktionsmodus (Pattern/Effekte)
Power Aktiv Boolean ~Switch An/Aus Schalter
Speed Geschwindigkeit Integer ~Intensity.100 Geschwindigkeitswert von 0 bis 100%

Folgende Profile werden angelegt:

Name Typ Beschreibung
MHC.Preset Integer Voreingestelltes Muster (0=Farbmodus, 37 ... 56 = 19 Muster)
MHC.Original Integer Original Muster (0=Farbmodus, Werte zwischen 1 ... 300 => 126 ausgwählte Effekte)
MHC.Addressable Integer Adressierbare Muster (0=Farbmodus, 1 ... 102, 255 => 103 Effekte)

6. WebFront

Man kann die Statusvariaben direkt im WebFront verlinken.

7. PHP-Befehlsreferenz

void MHC_SetBrightness(int $instanzID, int $brightness);

Setzt die Helligkeit auf $brightness. Die Funktion liefert keinerlei Rückgabewert.

void MHC_SetColor(int $instanzID, int $color);

Setzt den Farbwert auf $color. Die Funktion liefert keinerlei Rückgabewert.

void MHC_SetMode(int $instanzID, int $mode);

Setzt den Anzeigemodus auf auf $mode. Die Funktion liefert keinerlei Rückgabewert.

void MHC_SetPower(int $instanzID, bool $power);

Schaltet den Controller Ein(true) bzw Aus(false). Die Funktion liefert keinerlei Rückgabewert.

void MHC_SetSpeed(int $instanzID, int $speed);

Setzt die Geschwindigkeit auf $speed. Die Funktion liefert keinerlei Rückgabewert.

8. Versionshistorie

v3.0.20221231

  • NEU: Discovery Modul hinzugefügt
  • NEU: Erkennen von 27 verschiedene Controllern
  • NEU: Neues Profilehandling für Effekte (Mode)
  • NEU: Auslesen des aktuellen Controller-Setups (Sync)
  • NEU: Kompatibilität auf IPS 6.4 hoch gesetzt
  • FIX: Pinbelegung der Farbkanäle erweitert und systemweit angewendet
  • FIX: Controller Modul umbenannt

v2.0.20210701

  • NEU: Konfigurationsformular vereinheitlicht
  • FIX: Berechnung der Geschwindigkeit bei Programmen
  • FIX: Code optimiert und Übersetzungen nachgezogen
  • FIX: Interne Bibliotheken überarbeitet und vereinheitlicht
  • FIX: Debug Meldungen überarbeitet
  • FIX: Dokumentation überarbeitet

v1.2.20190812

  • NEU: Anpassungen für Module Store
  • NEU: Vereinheitlichungen, Umstellung auf Libs
  • FIX: Fehler in Profilen korrigiert

v1.1.20190225

  • NEU: Umbenennungen, Vereinheitlichungen, StyleCI uvm.

v1.0.20180415

  • NEU: Initialversion

Danksagung

Ich möchte mich für die Unterstützung bei der Entwicklung dieses Moduls bedanken bei ...

  • @Spoosie : Für die Basisarbeit in seinem Modul (KH_LEDWiFiController)
  • @Thorsten79 : Für die Unterstützung und Bereitstellung der 2 Controler ('RGB Symphony v1' & 'RGB Symphony v2')
  • @Brutus, @lcnrookie und @uwer : Als die Unterstützung als Tester

Vielen Dank für die hervorragende und tolle Arbeit!

Entwickler

Seit nunmehr über 10 Jahren fasziniert mich das Thema Haussteuerung. In den letzten Jahren betätige ich mich auch intensiv in der IP-Symcon Community und steuere dort verschiedenste Skript und Module bei. Ihr findet mich dort unter dem Namen @pitti 😉

GitHub

Spenden

Die Software ist für die nicht kommerzielle Nutzung kostenlos, über eine Spende bei Gefallen des Moduls würde ich mich freuen.

PayPal

Lizenz

Namensnennung - Nicht-kommerziell - Weitergabe unter gleichen Bedingungen 4.0 International

Licence