Harmony
harmony | |
---|---|
Zweck / Funktion | |
Anbindung Logitech Harmony Hub basierter Fernsbedienungen | |
Allgemein | |
Typ | Gerätemodul |
Details | |
Dokumentation | EN / DE |
Support (Forum) | Multimedia |
Modulname | 37_harmony.pm |
Ersteller | Andre (Forum / Wiki) |
Wichtig: sofern vorhanden, gilt im Zweifel immer die (englische) Beschreibung in der commandref! |
Das Fhem-Gerätemodul harmony bietet die Möglichkeit Logitech Harmony Hub basierte Fernbedienungen an Fhem anzubinden und so von Fhem aus Aktivitäten zu starten und zu stoppen, in Fhem auf das starten und stoppen von Aktivitäten über eine der mit dem Hub verbundenen Fernbedienungen zu reagieren oder auf Geräteebene jedes im Hub konfigurierte Gerät über IR, Bluetooth und/oder einen Smart Keyboard USB Dongle zu steuern.
Unterstütz werden zur Zeit die Modelle Ulitimate Hub, Ultimate Smart Control, Ultimate, Smart Keyboard sowie alle darauf basierenden Kombinationen mit Smart Control und Smart Keyboard Add-On.
Define
define <hub> harmony <ip>
Allgemeines
Aktivitäten und Geräte lassen sich an allen Stellen entweder als ID oder als Name angeben. Wenn der Name angegeben wird müssen hierbei Leerzeichen durch einen Punkt ersetzt werden. Dies kann auch für eventuell andere im Namen vorhandene Sonderzeichen gelten.
Aktivität
Das Reading currentActivity
enthält die gerade laufende Aktivität. Beim Wechsel zwischen Aktivitäten erzeugt es Events auf die in Fhem über notify reagiert werden kann. Das Reading previousActivity
enthält die davor laufende Aktivität sofern diese bekannt ist. Diese Reading erzeugt keine Events.
In den Inernal currentActivityID
und previousActivityID
stehen die dazu gehörenden IDs der Aktivitäten.
Innerhalb einer laufenden Aktivität kann mit
set <hub> command <command>
ein IR Kommando an eines der Beteiligten Geräte gesendet werden.
Geräteebene
Innerhalb und außerhalb einer laufenden Aktivität kann mit
set <hub> command <id|name> <command>
ein IR Kommando an eines der im Hub bekannten Geräte gesendet werden. Hierbei ist darauf zu achten das innerhalb einer Aktivität keine Kommandos verwendet werden sollten die den Smart-State betreffen.
Fhem Devices auf Geräteebene
Es ist möglich sich für einzelne oder alle im Hub konfigurierten Geräte ein zugehöriges FHEM-Device anlegen zu lassen:
set <hub> autocreate [<id|name>]
Beim Umschalten zwischen Aktivitäten wird in diesen FHEM-Devices wird im Reading power den in der Aktivität konfigurierten Einschaltzustand: on,off oder manual. Mit einem Notify auf power
Events lässt sich in Fhem auf einzelne Geräte reagieren.
Wichtig: Diese FHEM-Device spiegeln nicht den tatsächlichen Gerätezustand wieder sondern den innerhalb einer Aktivität beabsichtigen Zustand. Der tatsächliche zustand kann z.b. auf Grund von Empfangsproblemen abweichen.
Das get commands
sowie die set command
, hidDevice
, text
, cursor
und special
Kommandos auf Hub Ebene stehen hier direkt und ohne Angabe von Device-ID oder Name zur Verfügung.
Smart Keyboard
Der Harmony Hub kann über Bluetooth oder die zum Smart Keyboard gehörenden USB-Dongel mit einem Rechner, Media PC oder sonstigem Gerät das Tastatureingabe unterstütz verbunden werden. Fhem kann diese Verbindung nutzen um beliebige Tastendrücke an ein solches Gerät zu senden. Das können Texte sein, Cursorbewegungen oder die Power-, Multimedia oder sonstigen Funktionstasten die das Gerät unterstützt.
Alle gesendeten Tastendrücke beziehen sich normalerweise auf das zur gerade laufenden Aktivität gehörende Tastatureingabegerät. Mit dem hidDevice
Kommando lässt sich die Tastatureingabe auf jedes im Hub dafür konfigurierte Gerät umschalten.
Wichtig: Dieses Umschalten kann einige Sekunden dauern da hierbei die bestehende Bluetooth-Verbindung getrennt und eine neue aufgebaut wird.
Es stehen die Kommandos text
, cursor
und special
zur Verfügung.
Beispiele:
Gehe in PLEX auf die Library Musik und spiele das erste Item in der OnDeck Liste:
set <hub> text M set <hub> cursor right set <hub> text p
Beispiele
Vorgeschaltete Funksteckdose ansteuern
Vorbereitung Harmony
Nachdem die Geräte mit Strom versorgt werden benötigen Sie einige Sekunden, bis Sie ihre Einschaltsignale verarbeiten können. Diese Verzögerung wird duch ein Dummy Gerät in jeder Aktion erzeugt.
1) In MyHarmony einen Amazon Fire TV anlegen und ihm einen passenden Namen geben (z.B. Pause)
2) Unter "Geräte" diesen markieren und per "Ändern der Betriebseinstellungen" die Einstellungen aufrufen
3) Punkt "Ich möchte dieses Gerät eingeschaltet lassen, wenn Aktionen gewechselt werden und nur durch Drücken der Off-Taste ausschalten" auswählen
4) Einen harmlosen Befehl einfügen ("Search") danach eine Verzögerung von 5000ms einbauen und dann noch einen Befehl ("Search"). Dies bewirkt eine Verzögerung von 5 Sekunden beim Ein- & Ausschalten
5) Unter Aktionen die Aktion auswählen und per "Einstellung ändern" das neue Gerät hinzufügen
6) Per "Diese Aktion anpassen", das neue Gerät an die erste Stelle schieben
7) Schritte 5-7 für alle Aktionen wiederholen
Konfiguration in FHEM
1) Der Harmony Hub muss existieren
#Harmony Hub Wohnzimmer definieren define wz_harmonyhub harmony 192.168.123.123
2) Ihr benötigt eine fertig konfigurierte Funksteckdose (hier "wz_Multimedia")
3) Ihr baut eine Bedingung, die auf den Ein- und Ausschaltvorgang des Harmony Hub (hier wz_harmonyhub) reagiert und die Steckdose (hier wz_Multimedia) schaltet. Es wird eine zusätzliche Pause genutzt von 0 Sekunden bei der ersten Bedingung (wäre kontraproduktiv) und 10 Sekunden bei der zweiten Bedingung (DOELSEIF). Bei der Nutzung eines Beamers lässt sich hierüber die Abkühlzeit einstellen. Im Beispiel bleiben den Geräten somit 15 Sekunden zum Ausschalten und 5 Sekunden um die Empfangsbereitschaft herzustellen.
#Auf den Schaltvorgang des Hubs reagieren define wz_Multimedia_Automatik DOIF ([wz_harmonyhub:currentActivity] ne "PowerOff") (set wz_Multimedia on) DOELSEIF ([wz_harmonyhub:currentActivity] eq "PowerOff") (set wz_Multimedia off) attr wz_Multimedia_Automatik wait 0:10
Weblinks
- myHarmony Logitech Harmony Hersteller
- Harmony Remote Forum deutsches Harmony Forum
- Thread im FHEM Forum Weitere Infos im FHEM Forum Thread