ITach

Aus FHEMWiki
Version vom 24. Januar 2017, 15:45 Uhr von Krikan (Diskussion | Beiträge) (Typo)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

Von der Firma Global Cache gibt es die Produktfamilie Itach mit unterschiedlichen Modellen, die als Transceiver zwischen unterschiedlichen Kommunikationsstandards dienen.
Die Geräte sind etwa zigerrettenschachtelgroß und unterscheiden sich in ihrer Funktionalität lediglich durch die Art der Einbindung in das Heimnetzwerk über WLAN bzw. Kabel.
Zur Steuerung von Geräten über Infrarot gibt es die Modelle WF2IR (Wifi to Infrared) und IP2IR bzw. IP2IR-P (LAN to Infrared / with Power over Ethernet).
Auch für die Schaltrelais-Modelle Itach-Relay WF2CC / IP2CC / IP2CC-P gibt es ein FHEM-Modul: Itach_RELAY.
Im Weiteren werden die Infrarot-Geräte beschrieben.

Funktionsweise der Itach Infrarot-Geräte

Die Geräte können beliebige IR-Codes von der Original-Fernbedienung in eine Textdatei "aufnehmen". Will man einen IR-Befehl an das zu steuernden Gerät senden, übermittelt man den in der Textdatei hinterlegten code via WLAN/LAN an den Itach, der diese als IR-Sequenz an das zu steuernde Gerät aussendet. So lassen sich WF2IR/IP2IR als Universal-Fernbedienung verwenden für alle Geräte, die über Infrarot gesteuert werden können, also z.B. Fernseher, Receiver, Klimaanlagen, Dachfenstersteuerungen etc.

Die Geräte werden geliefert mit einem Netzteil, einem eingebauten IR-Empfänger sowie drei IR-Ausgängen mit Klinkenanschluss. Ebenfalls zum Lieferumfang gehören 3 IR-LEDs mit jeweils recht langem Kabel. Zwei dieser IR-LEDs sind dazu gedacht, am zu steuernden Gerät direkt auf den IR-Empfänger aufgeklebt zu werden. Die dritte IR-LED ist ein sogenannter "Blaster" mit stärkerer Sendeleistung. Dieser Blaster kann an günstiger Stelle im Raum platziert werden und dann mehrere Geräte auf eine Entfernung von bis zu 3 Metern steuern. Bei mir klebt dieser Blaster unter dem Wohnzimmertisch und steuert die gesamte Multimedia-Anlage.
Es ist zu beachten, dass der Blaster ausschließlich am Ausgang Nr. 3 betrieben werden kann. Dieser Ausgang muss bereits beim anlernen der IR-Sequenzen angegeben werden. Falls man das vergisst, muss man im Nachhinein die Textdatei nachbearbeiten, siehe unten.

Anlernen von IR-Codes

Passend zum WF2IR/IP2IR gibt es die kostenlose Software "iLearn", die auf jedem PC installiert werden kann. Durch Eingabe der IP-Adresse des Itach wird diese mit dem Gerät verbunden. In iLearn stellt man nun zunächst den gewünschten Port ein, meistens 3 für den IR-Blaster.
Richtet man nun die Originalfernbedieung auf den IR-Empfänger am Itach und drückt auf der Original-Fernbedienung eine Taste, wird die vom Itach empfangene IR-Sequenz als "kryptische" Zeichenfolge in iLearn angezeigt. Diesem IR-Code kann man nun eine Tastenbezeichnung zuordnen. Auch gibt es in iLearn einen button "Test", mit dem die aufgezeichnete IR-Sequenz gesendet wird. Damit kann man sofort testen, ob die abgespielte IR-Sequenz auch wirklich den gewünschten Vorgang am zu steuernden Gerät auslöst.

Tipp: Mit einem Laptop auf dem iLearn läuft und dem Itach in die Nähe des zu steuernden Geräts setzen. Den Blaster an den Itach anschließen und so platzieren, dass er das gewünschte Gerät steuern kann. Den Itach selbst am besten neben dem Laptop so platzieren, dass man mit der Originalfernbedienung IR-Befehle auf den Itach "beamen" kann, den Itach aber so abschirmen, dass das zu steuernde Gerät diesen IR-Befehl der Originalfernbedienung nicht "sieht". Durch Klick auf den button "Test" kann man nun sofort prüfen, ob die IR-Sequenz korrekt ist und das gewünschte Gerät angesteuert wird, oder gleich erneut aufnehmen.
Sobald der IR-code korrekt aufgezeichnet ist, klickt man in iLearn auf den button "Save Data". Die Sequenz erscheint nun incl. des zugeordneten Tastennamens im unteren Fenster innerhalb iLearn.
Auf diese Weise lernt man nun alle "relevanten" Tasten der Originalfernbedienung an.

Schliesslich klickt man am unteren Rand des iLearn-Fensters auf "New File" und speichert so die aufgezeichneten Sequenzen in einer Textdatei. Speichern Sie diese Datei im Verzeichnis fhem, also dort, wo auch die Datei fhem.cfg liegt.

Beispiel:

fhem/IR_amplifier.txt

Diese Textdatei kann im weiteren Verlauf direkt in das FHEM-Modul für Itach-IR-Devices eingelesen werden.

Nutzen der FHEM-Module Itach_IR und Itach_IRDevice

Itach_IRDevice
Zweck / Funktion
Anbindung über Itach_IR zu steuernder Geräte
Allgemein
Typ Gerätemodul
Details
Dokumentation EN / DE
Support (Forum) Sonstige Systeme
Modulname 88_Itach_IRDevice
Ersteller ulimaass
Wichtig: sofern vorhanden, gilt im Zweifel immer die (englische) Beschreibung in der commandref!
Itach_IR
Zweck / Funktion
Anbindung Itach WF2IR/IP2IR
Allgemein
Typ Gerätemodul
Details
Dokumentation EN / DE
Support (Forum) Sonstige Systeme
Modulname 10_Itach_IR
Ersteller ulimaas
Wichtig: sofern vorhanden, gilt im Zweifel immer die (englische) Beschreibung in der commandref!


Anlegen des Itach-IR in FHEM

Je physischem Itach WF2IR/IP2IR wird nun in FHEM ein Gerät des Typs Itach_IR angelegt. Dabei wird die IP-Adresse des Itach hinterlegt.

Beispiel:

define iTach Itach_IR 192.1.2.3

Ein FHEM-device Itach_IR übernimmt lediglich die Kommunikation zum Itach, für den Anwender hat es an der Benutzeroerfläche keine Funktionalität (außer der Anzeige des zuletzt übermittelten Befehls).

Anlegen eines Itach-IR-Device

Nachdem der Itach-IR angelegt wurde, können nun beliebig viele zu steuernde Geräte als Itach-IR-Device angelegt werden, die alle über denselben Itach gesteuert werden. Z.B. nur ein physischer Itach, über den Geräte wie TV, Receiver, SAT-Receiver etc gesteuert werden.
Bei der Definition eines Itach-IR-Device wird der Name der Datei angegeben, die alle relevanten IR-codes enthält.

Beispiel:

define IR_amp Itach_IRDevice IR_amplifier.txt
define IR_mac Itach_IRDevice IR_macmini.txt
define IR_TV  Itach_IRDevice IR_glotze.txt

Hinweis: _falls_ Sie in FHEM mehrere physische Itach-IR definiert haben, müssen Sie je Itach-IR-Device angeben, über welches physische Itach die Befehle ausgesendet werden sollen. Nutzen Sie dazu das Attrbut IODev und geben den Namen des gewünschten Itach-IR an.

Nach Anlegen des Itach-IR-Device stehen sofort alle in der Textdatei hinterlegten Tasten als set-Kommandos bereit.
Beispiel:

set IR_amp PLAY

Die Liste der Befehle kann in FHEMWEB im Detailscreen Ihres Itach_IRDevice eingesehen werden.
Hinweis: Sollte die Liste der verfügbaren Befehle zu kurz sein, prüfen Sie den Inhalt der Textdatei, siehe unten. Vermutlich fehlt irgendwo ein <ENTER> am Zeilenende.

Über FHEM als Fernbedienung nutzen

Es bietet sich an, zu einem Itach-IR-Device auch eine grafische Fernbedienung (FHEM-Modul remotecontrol) in FHEM anzulegen. Dabei habe ich die Tasten, die ich ohnehin nicht benötige, gleich weggelassen und andere für meinen Geschmack praktischer positioniert.
Schliesslich habe ich mir für das iPad eine floorplan-Seite definiert, auf der alle Fernbedienungen für das Wohnzimmer versammelt sind.

Dateiformat

Die Dateien mit den IRcodes werden im selben Verzeichnis gespeichert wie die Datei fhem.cfg
Der Inhalt ist eine Zeile je IR-Befehl. Eine Zeile beginnt mit dem Tastennamen in eckigen Klammern, dann mindestens einem Leerzeichen bzw. Tab, gefolgt vom Befehl "sendir", den Angaben zu Port usw. sowie der o.g. "kryptischen" IR-Sequenz. Die Zeile muss mit einem CR (Carriage Return/ENTER) abgeschlossen sein.
Einige Beispieldateien finden sich hier.


Anbindung von Itach-IR-Geräten ohne FHEM-Modul

BenWend hat im Forum den Code gepostet, wie man iTach Devices steuern kann.

itach.pl

Die Datei itach.pl muss an der Stelle im Filesystem abgelegt werden, die später in Definitionen in der Konfigurationsdatei referiert wird (im diesem Beispiel also /opt/fhem/FHEM/).

use IO::Socket::INET;

my ($socket,$client_socket);
$socket = new IO::Socket::INET (
    PeerHost => '192.168.178.51',
    PeerPort => '4998',
    Proto => 'tcp',
) or die "ERROR in Socket Creation : $!\n";

# send itach command
$data = $ARGV[0]."\r\n";
$socket->send($data);
sleep (1);

$socket->close();

fhem.cfg

Die in der Konfiguration (fhem.cfg oder eine andere, mit include eingebundene Datei) erforderlichen Definitionen. Die Codes "sendir...." stammen aus dem o.g. tool "iLearn".

#---- itach ATV Schlafzimmer
define ATVSZ dummy
attr ATVSZ room itach
attr ATVSZ setList up down left right play menu select
attr ATVSZ webCmd up:down:left:right:play:menu:select

define ATVSZ_up notify ATVSZ:up.* {system("perl /opt/fhem/FHEM/itach.pl sendir,1:2,1,38000,1,1,348,171,21,22,21,64,21,64,21,64,21,22,21,64,21,64,21,64,21,64,21,64,21,64,21,22,21,22,21,22,21,22,21,64,21,64,21,64,21,22,21,64,21,22,21,22,21,22,21,22,21,22,21,64,21,22,21,64,21,22,21,64,21,22,21,64,21,1467,347,86,21,760");;}

define ATVSZ_down notify ATVSZ:down.* {system("perl /opt/fhem/FHEM/itach.pl sendir,1:2,1,39000,1,1,348,172,21,22,21,63,21,63,21,63,21,22,21,63,21,63,21,63,21,63,21,63,21,63,21,22,21,22,21,22,21,22,21,63,21,63,21,22,21,63,21,63,21,22,21,22,21,22,21,22,21,22,21,63,21,22,21,63,21,22,21,63,21,22,21,63,21,1472,347,86,21,780");;}

define ATVSZ_left notify ATVSZ:left.* {system("perl /opt/fhem/FHEM/itach.pl sendir,1:2,1,39000,1,1,341,173,21,22,21,65,21,65,21,65,21,22,21,65,21,65,21,65,21,65,21,65,21,65,21,22,21,22,21,22,21,22,21,65,21,22,21,22,21,22,21,65,21,22,21,22,21,22,21,22,21,22,21,65,21,22,21,65,21,22,21,65,21,22,21,65,21,1562,347,86,21,780");;}

define ATVSZ_right notify ATVSZ:right.* {system("perl /opt/fhem/FHEM/itach.pl sendir,1:2,1,39000,1,1,348,172,21,22,21,63,21,63,21,63,21,22,21,63,21,63,21,63,21,63,21,63,21,63,21,22,21,22,21,22,21,22,21,63,21,63,21,63,21,63,21,22,21,22,21,22,21,22,21,22,21,22,21,63,21,22,21,63,21,22,21,63,21,22,21,63,21,1472,347,87,21,780");;}

define ATVSZ_play notify ATVSZ:play.* {system("perl /opt/fhem/FHEM/itach.pl sendir,1:2,1,38000,1,1,348,171,21,22,21,64,21,64,21,64,21,22,21,64,21,64,21,64,21,64,21,64,21,64,21,22,21,22,21,22,21,22,21,64,21,22,21,64,21,64,21,64,21,64,21,22,21,64,21,22,21,22,21,64,21,22,21,64,21,22,21,64,21,22,21,64,21,760");;}

define ATVSZ_menu notify ATVSZ:menu.* {system("perl /opt/fhem/FHEM/itach.pl sendir,1:2,1,39000,1,1,348,172,21,22,21,63,21,63,21,63,21,22,21,63,21,63,21,63,21,63,21,63,21,63,21,22,21,22,21,22,21,22,21,63,21,22,21,63,21,22,21,22,21,22,21,22,21,22,21,22,21,22,21,63,21,22,21,63,21,22,21,63,21,22,21,63,21,1559,347,86,21,780");;}

define ATVSZ_select notify ATVSZ:select.* {system("perl /opt/fhem/FHEM/itach.pl sendir,1:2,1,39000,1,1,348,172,21,22,21,63,21,63,21,63,21,22,21,63,21,63,21,63,21,63,21,63,21,63,21,22,21,22,21,22,21,22,21,63,21,63,21,22,21,63,21,63,21,63,21,22,21,63,21,22,21,22,21,63,21,22,21,63,21,22,21,63,21,22,21,63,21,1391,348,172,21,22,21,63,21,63,21,63,21,22,21,63,21,63,21,63,21,63,21,63,21,63,21,22,21,22,21,22,21,22,21,63,21,22,21,22,21,63,21,22,21,22,21,22,21,22,21,22,21,22,21,63,21,22,21,63,21,22,21,63,21,22,21,63,21,780");;}

Links