Logitech Harmony Hub

Begonnen von der-Lolo, 07 August 2013, 14:17:16

Vorheriges Thema - Nächstes Thema

justme1968

das kein event kommt ist absicht. ist zwar nur ein event aber nicht wirklich nötig weil  der zeitpunkt immer der gleiche wie bei currentActivity ist.

ich finde es eigentlich gut solche 'sonderfälle' mit selbst gebautem code zu machen und nicht das modul aufzublähen.

du kannst es noch etwas kürzer schreiben:
{ fhem "set wz_harmonyhub activity ". ReadingsVal("wz_harmonyhub","previousActivity","PowerOff") }

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

siggi85

#466
Man bist du immer schnell.  :o :)

Zitat von: justme1968 am 19 Dezember 2014, 11:49:02
das kein event kommt ist absicht. ist zwar nur ein event aber nicht wirklich nötig weil  der zeitpunkt immer der gleiche wie bei currentActivity ist.

ich finde es eigentlich gut solche 'sonderfälle' mit selbst gebautem code zu machen und nicht das modul aufzublähen.

du kannst es noch etwas kürzer schreiben:
{ fhem "set wz_harmonyhub activity ". ReadingsVal("wz_harmonyhub","previousActivity","PowerOff") }

gruss
  andre

Ja das verstehe ich. Bei mir funktioniert es ja auch schon, daher ist es mir nicht so wichtig. Danke noch mal für die kürzere Variante. Ich wusste es muss eine Variante ohne Zwischenvariable direkt mit dem ReadingsVal geben. ;)
Dachte nur, dass vielleicht auch andere eine Funktion wie diese gebrauchen könnten.

Ich schließe aus deinem Text, dass nur Event gesteuerte Readings per longpoll aktualisiert werden. Wusste ich auch noch nicht.

Hast du mein Edit schon gelesen? ( du warst einfach zu schnell beim Antworten). Da geht es noch mal um das potentielle "previousActivity" Event. Ich würde für den beschriebenen Fall (siehe unten in EDIT) auch ein Negativ Notify bauen, allerdings ist das bei RegEx immer sonne Sache mit "alles außer" Bedingungen. Anbei mein EDIT Text des letzten Posts:

EDIT:
Weiterer Feature Request:
Das setzen des Reading previousActivity wird momentan nicht als Event generiert. Könnte man dieses Event generieren lassen?
Am besten sollte das Event bereits generiert werden, wenn die currentActivity noch "starting X" beinhaltet. Ich würde nämlich gerne ein Notify bauen, dass, wenn ich von einer bestimmten Activity weg schalte, die ggf. noch laufende Wiedergabe pausiert.
define n_prevactivity_htpc notify wz_hub.previousActivity:.HTPC { my $playStatus = ReadingsVal("wz_htpc","playStatus",0);;\
if ( $playStatus eq "playing" ) {\
    fhem "set wz_htpc pause";\
  }\
}

siggi85

Hab die Prüfung nun ins Notify selber gebaut und das Notify wird halt bei jedem Activity Wechsel ausgelöst. Finde es eleganter, wenn es nur im konkreten Fall triggert, aber erst mal funktioniert es so.

define n_prevactivity_htpc notify wz_hub.currentActivity:.* { my $playStatus = ReadingsVal("wz_htpc","playStatus",0);;\
my $previousActivity = ReadingsVal("wz_hub","previousActivity",0);;\
if ( $playStatus eq "playing" && $previousActivity eq "HTPC" ) {\
    fhem "set wz_htpc pause";;\
  }\
}

justme1968

das an der activity fest zu machen ist aber unter umständen problematisch wenn du zwischan activitys mit dem gleichen device umschaltest.

warum legst du dir den htpc nicht als device mit dem harmony autocreate an und hängst dein notify dort auf power. dann hast du immer genau den ein oder aus zustand ohne über activity namen gehen zu müssen.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

siggi85

Das ist auch eine Lösung. Da ich den HTPC nur in einer Activity nutze, macht das bei mir aber keinen Unterschied. Allerdings würde so das Notify nicht so oft triggern. Mal schauen ob ich das demnächst umbaue.
Das wäre auch ein Grund mal deine Autocreate Funktion zu nutzen. ;) Bisher habe ich das umgangen, da ich keine Anwendungsfälle hatte und schon genug Devices in FHEM sind. :P
Danke auf jeden Fall für deine Hilfe und Lösungsansätze!

tpm88

Zitat von: tpm88 am 14 Dezember 2014, 12:36:43
hat mal jemand gemessen, wieviel Strom der Hub verbraucht? Wenn ich es richtig verstehe, ist er ja immer an. Gibt es einen Standby Modus mit < 1W Verbrauch?
Ich antworte mir mal selber, da ein Hub unter dem Baum lag...

Der Hub hat im Betrieb eine Leistungsaufnahme von 1,2W - einen StandBy Modus gibt es nicht.

An dieser Stelle noch ___VIELEN DANK___ für das geniale harmony Modul. Jetzt konnte ich auf einen Schlag die gesamte Unterhaltungselektronik in FHEM einbinden.
Test FHEM Server on RPi, CUL_HM
Prod FHEM Server on Odroid HC1, HM-USB, JeeLink
Devices: diverse HM, IT1500, 1wire, LaCrosse, MQTT

f.reddy

Zitat von: Spezialtrick am 02 Dezember 2014, 22:05:49
Vielen Dank für deine Hilfe. Nun läuft alles wie es soll. :)

@Spezialtrick: Würdest du mal deine als gut befundene Konfiguration posten? Habe auch eine Steckdose vorgeschaltet, die erst eingeschaltet und dann mit etwas Verzögerung fürs Mediacenter wieder ausgeschaltet werden soll.
Wäre imho auch etwas für den Wiki Eintrag. Da sind ja noch nicht viele Bespiele drin. Soll / darf ich das dort mit Hinweis auf deinen Post verewigen?

Danke & Gruß
Stefan

f.reddy

So konnte nicht warten und habe selbst etwas gespielt.
Hier das Ergebnis inkl. kleinem HowTo

Vorbereitung der Harmony:

Dies gibt den Geräten ein paar Sekunden Zeit, bevor der HUB die Einschaltbefehle sendet. Viele Geräte sind nicht sofort empfangsbereit, wenn der Strom eingeschaltet wird.

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"
3) "Ich möchte dieses Gerät eingeschaltet lasen, wenn Aktionen gewechselt werden und nur durch Drücken der Off-Taste ausschalten"
4) Einen harmlosen Befehl einfügen (z.B. "Search") darauf eine Verzögerung von z.B. 5000ms einbauen und dann nochmal einen Befehl. Dies gibt beim Ein- / Ausschalten eine Verzögerung von 5 Sekunden
5) Unter Aktionen den 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 Funksteckdose (hier "wz_Multimedia")
3) Ihr baut eine Bedingung, die auf den Ein- und Ausschaltvorgang des Harmony Hub (hier wz_harmonyhub) reagiert
#Auf den Schaltvorgang des Hubs reagieren - Vor dem Ausschalten der Steckdose 10 Sekunden warten. Diese werden zum Wert des oben definierten FireTV dazu addiert, da dieser beim Ausschalten an letzter Stelle steht.
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


Grüße
Stefan

chr2k

Hallo Leute,

klasse Unterhaltung und Brainstorming hier.

Kann mich aber bitte jemand aufs Pferd heben - ich komm nicht klar...

Eine so "große" Szene oder Abhängigkeiten wie Ihr möchte ich nicht. Ich möchte mit meiner Harmony Fernbedienung (die ich auch mit dem Hub benutze)  lediglich eine Funksteckdose schalten können. Am besten mit einer Taste auf der Fernbedienung (also im Toogle Modus) oder, wenn das nicht geht mit einem Eintrag im Touch Display. Wie stelle ich es an, dass FHEM Kommandos der Fernbedienung bzw des Hubs annimmt und damit dann eine bereits eingebundene Funksteckdose schaltet?
Bisher konnte ich es nur in die andere Richtung realisieren: IR Gerät das in der Harmony/auf dem Hub konfiguriert ist per FHEM-Kommando bzw. Floorplan-Button ein- und ausschalten. Aber anders rum?  ???

Dankeschön.

justme1968

so rum ist es (zur zeit) ohne extra ir empfänger nicht möglich. der hub kann keine tasten (oder empfangene ir signale) an fhem senden.

du brauchst also einen ir empfänger den du an fhem anbindest (fs20, raspberry, panstamp,...) und sendest diesem einen normalen ir befehl.

du findest zu allen lösungen (mit mehr oder weniger bastelanteil) diverse threads hier im forum.

gruss
  andre
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

chr2k

Dann hab ich wohl diesen Thread absolut falsch verstanden!?  :o ??? ::)

Was genau setzt ihr hier um? Für mich liest es sich genau so, wie ich es brauche - nur eben mit mehr Features.

chr2k

Zitat von: justme1968 am 07 Januar 2015, 10:50:33
so rum ist es (zur zeit) ohne extra ir empfänger nicht möglich.

Hallo Andre,

im ersten Posting im Thread unter http://forum.fhem.de/index.php/topic,7361.msg33778.html#msg33778 beschreibt der Gast-User eine Methode. Auch eine Fehlinterpretation meinerseits, oder gar ein Irrtum des Gast-Users?

justme1968

in dem beispiel oben geht es darum eine funksteckdose in eine aktion einzubinden und automatisch zu steuern. das geht weil fhem nachrichten auf aktionsebene vom hub bekommt.

es kommen aber  keine nachrichten auf device oder tsten ebene. dazu ist (zur zeit) ein extra ir empfänger nötig den fhem direkt auswertet.

in dem von dir verlinkten thread wird ein fs20 iru als ir empfänger verwendet und das ir kommando gelangt per fs20 nach fhem. nicht per harmony modul.

gruß
  andre

ps: ich glaube der hub könnte das eigentlich. aber es hat noch niemand rausgefunden wie. leider bin ich beim firmware auslesen noch nicht weiter. wenn  jemand damit erfolg hat könnte man glaube ich einiges machen. auf dem hub läuft ein linux und die harmony software besteht glaube ich aus lua scripten...
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

chr2k

Zitat von: justme1968 am 07 Januar 2015, 10:50:33
du brauchst also einen ir empfänger den du an fhem anbindest (fs20, raspberry, panstamp,...) und sendest diesem einen normalen ir befehl.


Hallo Andre,

sorry, wenn das ein wenig OT ist...

Wenn ich mich in diese IR Empfänger Geschichte richtig eingelesen habe (besonders zum Thema fs20 http://www.fhemwiki.de/wiki/IRE8_IR-Remote-Empf%C3%A4nger), kann ich dieses "Workaround" (wenn ich es mal so nennen darf) so verstehen, dass der IR Empfänger, logischerweise, die Singale der Fernbedienung empfängt, verarbeitet und dann die Schaltbefehle über die Ausgangsports an einen FS20 Funksender weiter gibt. Sobald der FS20 Funksender einen Schaltbefehl erhält funkt er diesne Schaltbefehl raus und der CUL Empfäng diesen. Habe ich das das Prinzip so richtig verstanden und wiedergegeben?

justme1968

ja. genau so. der fs20'empfänger leitet aber nicht alles weiter sondern nur die dort angelernten ir kommandos die du dann bestimmten zu senden fs20 kommandos zuorden musst
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968