FHEM Forum

Verschiedenes => Bastelecke => Thema gestartet von: olwaldi am 05 September 2026, 14:57:47

Titel: Migration Logitech Harmony activities --> fhem
Beitrag von: olwaldi am 05 September 2026, 14:57:47
Ich nutze schon seit einigen Jahren fhem, um einige Dinge in meinem "Heimkino" zu automatisieren. Z.B. hat mich immer gestört, daß mein Denon AVR die Lautstärke in 0.5dB-Schritten verstellt. Daher nutze ich das Modul 70_DENON_AVR, um die Lautstärke in 5dB-Schritten zu ändern. Mein Raspberry hat einen TSOP-IR-Empfänger, der vom Logitech Device mce Tastatur gesteuert werden kann. So kann ich die Lautstärketasten der Fernbedienung via mce an fhem weiterleiten.

Dann gab's einen neuen Denon AVR, der für TV und Beamer verschiedene HDMI-Ausgänge hat. Natürlich sollen die automatsch umgeschaltet werden - wieder eine Aufgabe für fhem. Damit das gehen kann, muß fhem den Ein/Aus-Status von TV und Beamer kennen. Dazu nutze ich den 12V-Triggerausgang des Beamers (bzw. den 5V-USB-Anschluß des TV) via Optokoppler an je einem GPIO. Dann können fhem-notifies den HDMI-Ausgang des Denon AVR automatisch umschalten.

Logitech hat ja schon seit einigen Jahren die Produktion von Harmony-Fernbedienungen eingestellt, so daß ich langfristig meine Logitech-Fernbedienungen ersetzen werden muß. Nun ist vor einiger Zeit die Sofabaton U3 auf den Markt gekommen - viele Tasten, schönes Display, kein(!) Touchscreen (für mich ein Pluspunkt), hervorragend geeignet, um die Harmonys zu ersetzen. Aber keine Aktivitäten a la Harmony.

Mein Lösungsidee: Wenn ich eh' schon viele Dinge im Heimkino via fhem steuere,warum nicht auch die Aktivitäten? Bei mir sind die Aktivitäten 1:1 mit der Media-Quelle (Blueray-Player, SAT-Receiver, ..) und dem Ausgabegerät (TV oder Beamer) verknüpft. Die Quelle kann 70_DENON_AVR am gewählten Input erkennen, das Ausgabegerät am Power-Status der beiden GPIOs. Die "neue" Fernbedienung muß somit nur Makros auf der Power-Taste je Media-Gerät erlauben, um den Denon AVR einzuschalten und dann den HDMI-Input zu wählen. Genau das kann die U3 (und fast jede andere programmierbare Fernbedienung).

Es gibt aber eine weitere Herausforderung: Ich möchte (wie bei Aktivitäten von Harmony) beim Wechsel der Zuspieler den vorigen Zuspieler ausschalten. Den Zustand merke ich mir in einem Dummy mit dem Name des aktuellen Inputs (=aktiver Zuspieler). Beim Wechsel des Denon-Inputs wird der neue Zuspieler ein- und der alte ausgeschaltet. Praktischerweise sind alle meine Zuspieler per IP steuerbar, so daß fhem das von Haus aus kann.

Anders TV & Beamer, beide nur per IR steuerbar. Also hat mein Raspberry am GPIO18 eine IR-Leuchtdiode (geschaltet via 2n2222 Transistor) bekommen, um auch das erledigen zu können. Bislang war das Senden von IR via Raspi die herausforderndste Aufgabe, da meine ersten Versuche kläglich gescheitert sind. Wichtig war letzendlich, eine leuchtstarke IR-LED zu nutzen UND den Raspi-Treiber gpio-ir-tx (NICHT pwm-ir-tx).

Seit gestern funktioniert dieses Setup, um mein Heimkino ohne Harmony-Aktivitäten via fhem zu steuern. Die Harmony ist allerdings weiterhin in Betrieb für die "normalen" IR-Kommandos. Lediglich die Aktivitäten der Harmony sind "lahmgelegt". Somit bin ich bestens gerüstet, sollte mal ein Umstieg auf eine andere programmierbare Fernbedienung erforderlich werden.

Übrigens, als nette "Dreingabe" funktionieren alle Original-Fernbedienungen z.B. vom Blueray-Player ZUSÄTZLICH. Der Raspi sieht ja auch z.B. das PowerToggle-Kommando von der Blueray-Fernbedienung. Und das setzt eine fhem-Routine um auf Einschalten des Denon AVR und Wahl des passenden HDMI-Eingangs. D.h. sollte meine Harmony ausfallen, muß ich nur je "Aktivität" die jeweilige Original-Fernbedienung benutzen (die ja auch Lautstärke - des Denon AVR - mitsteuern kann).

Vielleicht ja eine Anregung für den ein oder anderen hier - man muß ja irgendwann eine Alternative zu Harmony Fernbedienungen finden.

Bei Interesse kann ich gern meine fhem-Funktionen bereitstellen - aber man muß dann immer noch sehr viel an der IR-Konfiguration des Raspberry inkl. keymaps einstellen.


Grüßle, Michael