04.01.2013 Aufrufe

fhem für Einsteiger - Home

fhem für Einsteiger - Home

fhem für Einsteiger - Home

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

<strong>fhem</strong> <strong>für</strong> <strong>Einsteiger</strong><br />

<strong>fhem</strong> <strong>für</strong> <strong>Einsteiger</strong><br />

Einleitung und Grundlagen ...................................................................................................................... 2<br />

Hardware-Systeme .................................................................................................................................. 2<br />

Welche Hardware wird benötigt? ........................................................................................................... 3<br />

Die <strong>fhem</strong>-Oberfläche ............................................................................................................................... 4<br />

Der Hauscode .......................................................................................................................................... 5<br />

Sensoren .................................................................................................................................................. 5<br />

Anlernen von Sensoren in <strong>fhem</strong> .............................................................................................................. 7<br />

Anlernen von Aktoren (Pairing) ............................................................................................................... 8<br />

Dimmer .................................................................................................................................................... 8<br />

Timer ....................................................................................................................................................... 9<br />

Schalten zu bestimmten Zeitpunkten ..................................................................................................... 9<br />

Pairing: Direkt vs. Indirekt ....................................................................................................................... 9<br />

Ereignis-gesteuerte Schaltungen - notify .............................................................................................. 11<br />

Geräte-Eigenschaften: Modell und Raum ............................................................................................. 11<br />

Mehrere Geräte mit einem klick schalten - Strukturen ........................................................................ 12<br />

Infoquellen ............................................................................................................................................ 12<br />

Fritzbox .................................................................................................................................................. 13<br />

Schichtenmodell & Zugänge .............................................................................................................. 13<br />

Telnet ................................................................................................................................................. 14<br />

Sammelsurium ....................................................................................................................................... 14<br />

Fhemupdate .................................................................................................................................. 18<br />

iPad-Frontend ................................................................................................................................ 18<br />

<strong>fhem</strong> <strong>für</strong> <strong>Einsteiger</strong> V 1.0 Seite 1


<strong>fhem</strong> <strong>für</strong> <strong>Einsteiger</strong><br />

Einleitung und Grundlagen<br />

Wenn Sie das erste Mal einen Blick auf FHEM werfen, hier ein paar grundsätzliche Erklärungen.<br />

Das Ziel ist: Wenn ich auf einen Schalter drücke, soll das Licht angehen; Wenn es kalt ist, soll die<br />

Heizung eingeschaltet werden; Bei Sonnenaufgang soll die Gartenwegbeleuchtung ausgehen; Um 7<br />

Uhr morgens soll der Rolladen hochfahren, sofern ich nicht in Urlaub bin. Alles das lässt sich mit <strong>fhem</strong><br />

bewerkstelligen.<br />

In der Welt der Heimautomatisierung gibt es da<strong>für</strong> drei Gruppen von Geräten:<br />

1. Sensoren (also Thermometer, Lichtschalter, Bewegungsmelder, Dimmer etc. - also jedes<br />

Gerät, das eine Mitteilung an das System erzeugt).<br />

2. Aktoren (also Steckdosenschalter, Unterputzschalter, Rolladen-Motoren etc. - also jedes<br />

Gerät, das Befehle vom System entgegennimmt und umsetzt).<br />

3. Ein Sender&Empfänger, der an einem PC oder einfachen Computer (z.B. einem NAS oder<br />

einer Fritz!Box) angeschlossen ist. Dieses Gerät heißt ‚CUL‘.<br />

Die einfachste Version, die Sie daraus gestalten können, ist: Es gibt mehrere Sensoren (z.B.<br />

Lichtschalter), die Geräte steuern sollen, also z.B. eine Lampe ein- oder ausschalten. Derselbe<br />

Schalter soll evtl. auch mehrere Geräte (also Aktoren) bedienen. Es sollen evtl. auch mehrere<br />

Schalter gleichartig funktionieren, z.B. soll im Schlafzimmer das Licht sowohl vom Lichtschalter an der<br />

Wand als auch von der Fernbedienung am Bett bedienbar sein. Alle Schaltvorgänge sollen auch von<br />

einem Webfrontend auf einem Computer und vielleicht auch von einer App auf einem mobilen Gerät<br />

gesteuert möglich sein. Eine solche Konfiguration können Sie ganz ohne Programmieren erreichen,<br />

es braucht nur einiges technisches Grundverständnis.<br />

Wenn Sie Aktoren ausschließlich vom Webfrontend (also ohne physischen Schalter) bedienen<br />

wollen, müssen Sie diese durch wenige einfache Programmzeilen ‚hinzuprogrammieren‘.<br />

Das Zusammenfassen von mehreren Aktoren in Räumen mit gemeinsamer Schaltung vom<br />

Webfrontend aus ist ebenfalls mit wenigen Programmzeilen recht einfach (also z.B. alle Lampen im<br />

Schlafzimmer sollen mit nur einem Tastendruck ausgehen).<br />

Wenn Sie weitergehende Möglichkeiten nutzen möchten, wie z.B. Zeitsteuerungen wie Laufzeiten,<br />

Sonnenauf-/-untergang, Ferienkalender, Thermostatgeführte Heizungssteuerung etc., müssen Sie<br />

zunehmend tief in die <strong>fhem</strong>-Programmierung einsteigen.<br />

Fhem ist sehr umfangreich. Es bietet die Möglichkeit, einfache Konfigurationen ohne<br />

Programmierkenntnisse zu erstellen, wie auch eine komplexe Heimautomatisierung, die eben<br />

Programmierung benötigt. Diese Beschreibung richtet sich zunächst an die Benutzer, die möglichst<br />

einfach starten möchten.<br />

Hardware-Systeme<br />

Es gibt mehrere unterschiedliche Hardware-Systeme, die mit <strong>fhem</strong> gesteuert werden können. In<br />

dieser Beschreibung werden nur zwei erwähnt, das erste heißt FS20. Wenn Sie keine Ahnung haben,<br />

was das ist, nimmt der Autor an, dass Sie eine Heimautomatisierung mit möglichst geringen<br />

Hardwarekosten suchen. Das ist FS20 :-) Die Geräte da<strong>für</strong> werden im Wesentlichen von den Firmen<br />

<strong>fhem</strong> <strong>für</strong> <strong>Einsteiger</strong> V 1.0 Seite 2


<strong>fhem</strong> <strong>für</strong> <strong>Einsteiger</strong><br />

ELV und Conrad vertrieben. Wenn Sie auf deren Webseiten den Suchbegriff ‚FS20‘ eingeben,<br />

bekommen Sie eine bebilderte Übersicht der anschließbaren Geräte.<br />

In FS20 können Sensoren ausschließlich senden und Aktoren ausschließlich empfangen (der<br />

Lichtschalter kann nur senden, die Steckdose nur empfangen). Das ist eigentlich ausreichend – bis<br />

ein Aktor (Steckdose) z.B. durch eine Funkstörung oder wegen schlechter Laune mal einen Befehl<br />

verpasst. Das FS20-System geht einfach davon aus, dass der Befehl ausgeführt wurde. In einem<br />

vergleichbaren System namens <strong>Home</strong>Matic hingegen können Aktoren auch senden, sie senden also<br />

eine Bestätigung, dass sie den Befehl auch wirklich ‚gehört‘ haben. Das ist zwar noch keine absolute<br />

Garantie, dass der Befehl auch wirklich umgesetzt wurde, aber immerhin gibt es ein feedback. Bleibt<br />

dieses aus, kann z.B. der Befehl erneut gesendet oder eine Warnmeldung ausgegeben werden.<br />

<strong>Home</strong>Matic-Komponenten sind also etwas zuverlässiger, aber auch teurer (sie kosten etwa da<br />

Doppelte). Wenn Sie kritische Geräte steuern möchten (wenn also z.B. Ihre Rolladen auch als<br />

Einbruchsicherung dienen und daher definitiv geschlossen sein sollen), können Sie <strong>Home</strong>Matic in<br />

Erwägung ziehen. Wenn es lediglich um das Ein- oder Ausschalten von Lampen u.ä. geht, oder Sie <strong>für</strong><br />

gewöhnlich zuhause sind und die Schaltergebnisse selbst sehen, ist FS20 wahrscheinlich ausreichend.<br />

Die Erfolgsquote beim Schalten von FS20-Geräten liegt bei mittleren Entfernungen, mittleren<br />

Eigenschaften der Wände und gutem Batterie-Ladestand der Sensoren (=Sender) bei gefühlten 95-<br />

98%.<br />

Sowohl <strong>Home</strong>Matic als auch FS20-Systeme lassen sich mit <strong>fhem</strong> ("Freundliche Hausautomation und<br />

Energie-Messung") steuern. Eine Mischung beider Systeme ist möglich – allerdings benötigen Sie<br />

dann ein CUL je System -also einen <strong>für</strong> FS20, einen <strong>für</strong> HM.<br />

Im Weiteren wird zunächst nur auf FS20 eingegangen.<br />

Welche Hardware wird benötigt?<br />

Sie benötigen den Sender&Empfänger. Die unterschiedlichen Systeme bedienen sich<br />

unterschiedlicher Sender. Für FS20 wie HM ist neben anderen auch ein gemeinsamer Sender<br />

verfügbar. Sieht aus wie ein USB-Stick, kann in einen PC, einen NAS oder eine Fritz!Box gesteckt<br />

werden und nennt sich CUL. Zu beziehen z.B. von busware.de . Eine Alternative bildet der CUNO:<br />

Ebenfalls von busware zu beziehen, wird jedoch nicht über USB, sondern über LAN angebunden. Von<br />

demselben Anbieter gibt es auch die Geräte TuxRadio und TuxRail – beide bieten nicht nur die Sende-<br />

Funktionalität, sondern haben auch einen Prozessor und RAM – sie sind also ein Mini-Computer incl.<br />

Linux und <strong>fhem</strong>, es wird also kein weiteres Gerät (wie z.B. eine Fritz!Box) benötigt. Der CUL ist jedoch<br />

das am weitesten verbreitetste und damit am besten getestete Gerät und wird daher empfohlen. Im<br />

weiteren Text wird nur CUL erwähnt, der dann synonym <strong>für</strong> „CUL, CUNO‚Tuxradio oder Tuxrail“<br />

steht.<br />

Das CUL von busware kann leider nur ohne Firmware bestellt werden. Daher müssen Sie zunächst die<br />

<strong>fhem</strong>-kompatible Firmware selbst auf den CUL brennen (‚flashen‘). Seit <strong>fhem</strong> 5.1 gibt es den <strong>fhem</strong>-<br />

Befehl CULflash – bitte in der commandref nachschauen.<br />

Sie müssen den Sender betreiben. Es gibt unterschiedliche Geräte, an denen der Sender betrieben<br />

werden kann: Ein PC mit Windows oder Linux, einige NAS-Geräte oder auch eine Fritz!Box. Da es in<br />

vielen Haushalten auch um das Sparen von Strom geht, nutzen Sie am besten ein Gerät, das ohnehin<br />

ständig eingeschaltet ist.<br />

<strong>fhem</strong> <strong>für</strong> <strong>Einsteiger</strong> V 1.0 Seite 3


<strong>fhem</strong> <strong>für</strong> <strong>Einsteiger</strong><br />

Da ich meine Telefonanlage und Heimnetzwerk mit einer Fritz!Box 7390 betreibe, ist dies in meinem<br />

Haushalt das ideale Gerät: Es ist ständig eingeschaltet, es stellt eine CPU und Speicher zur Verfügung<br />

und ist im Heimnetzwerk eingebunden. Außerdem gibt es auf der Hersteller-Webseite einen<br />

download <strong>für</strong> eine Fritz!Box-Firmware inklusive <strong>fhem</strong>. Man kann also einfach diese (Labor-) Firmware<br />

herunterladen, den CUL einstecken und das <strong>fhem</strong>-System funktioniert. Einfach so. Hinweise zur<br />

Einrichtung der Fritz!Box 7390 mit <strong>fhem</strong> gibt es hier: Fehler! Verweisquelle konnte nicht gefunden<br />

werden. ; zum besseren Grundverständnis dient auch das Schichtenmodell.<br />

Sie benötigen die Sensoren und Aktoren. Im Weiteren werden als Beispiel eine funkgesteuerte<br />

Steckdose (FS20-ST) und ein Lichtschalter (FS20-S4A) betrachtet. Andere Geräte funktionieren<br />

ähnlich: die Zwischen-Steckdose funktioniert ebenso wie ein Unterputzschalter (FS20-SU), ein Wand-<br />

Lichtschalter mit vier Knöpfen funktioniert genauso wie eine Fernbedienung mit vier Knöpfen (FS20<br />

S4).<br />

Wenn Sie starten möchten, bestellen Sie den Sender&Empfänger (CUL) zuerst, da er ein paar Tage<br />

Lieferzeit hat. Zum Testen können Sie sich außerdem z.B. zunächst 2 Steckdosen (fs20-st) und einen<br />

Lichtschalter (fs20-s4a) besorgen. Bevor Sie alle Ihre Sensoren und Aktoren bestellen, machen Sie<br />

sich einen Plan, wie Ihre Heimsteuerung aussehen soll. Im Weiteren werden wir nach und nach ein<br />

Beispiel aufbauen, das Ihnen Denkanstöße und Tipps zum Einreichten Ihrer eigenen Konfiguration<br />

gibt.<br />

Die <strong>fhem</strong>-Oberfläche<br />

Sie erreichen <strong>fhem</strong> über Ihren Browser unter der Adresse http://:8083/<strong>fhem</strong><br />

Hier eine kurze Erklärung zum Bildschirmaufbau:<br />

�<br />

�<br />

� Liste der Räume – zu Beginn der Einrichtung erscheinen nur ‚Unsorted‘ und ‚All together‘.<br />

Räume werden den Geräten in der Konfiguration mittels attrib room <br />

zugeordnet.<br />

� Links auf Hilfetexte, die <strong>fhem</strong>-Doku und zur Konfigurationsseite ‚Edit files‘<br />

�<br />

�<br />

�<br />

<strong>fhem</strong> <strong>für</strong> <strong>Einsteiger</strong> V 1.0 Seite 4


<strong>fhem</strong> <strong>für</strong> <strong>Einsteiger</strong><br />

� Eingabefeld zum direkten Ausführen von <strong>fhem</strong>-Befehlen<br />

� Nach der Einrichtung erscheinen hier Ihre Geräte mit der Darstellung des Schaltzustands und<br />

einem on/off-Schalter<br />

� Geräte können auch Strukturen zugewiesen werden. Sie erlauben das gesammelte Schalten<br />

aller zugeordneten Geräte.<br />

Der Hauscode<br />

Das FS20-System arbeitet mit Funk im 868 Megahertz-Band. Alle FS20-Geräte bedienen sich dieser<br />

Frequenzen. Um die Geräte sowohl innerhalb Ihres Haushalts als auch von denen Ihrer Nachbarn zu<br />

unterscheiden, wird der sogenannte Hauscode verwendet. Da das FS20-System auch ohne CUL<br />

betrieben und programmiert werden kann, gibt es zusätzlich zum Hauscode auch drei weitere<br />

Parameter (Funktionsgruppen, Lokale Master, Globale Master). Da diese in <strong>fhem</strong> keine Rolle spielen,<br />

werden diese Werte generell auf der Werkseinstellung belassen – wir beschränken uns auf den<br />

Hauscode.<br />

Hinweis: Die Nutzung und Funktionsweise von Funktionsgruppen, Lokaler Master und<br />

Globaler Master sind in dem Handbuch beschrieben, das mit jedem Sensor ausgeliefert wird.<br />

Diese Handbücher sind auch online einzusehen.<br />

Wenn ein weiterer gleichartiger Schalter alternativ verwendet können werden soll, geben Sie ihm<br />

einfach denselben Hauscode. Dadurch erzeugt z.B. der 4-knöpfige Lichtschalter an der Wand<br />

dieselben Funksequenzen wie Ihre 4-knöpfige Fernbedienung. Da der Aktor (Steckdose) im<br />

Wesentlichen Hauscodes unterscheidet, ist <strong>für</strong> ihn das Signal vom Lichtschalter dasselbe wie das der<br />

Fernbedienung – und das des CUL.<br />

Wenn Sie in Ihrer Wohnung mehrere z.B. 4-knöpfige Schalter verwenden möchten, die<br />

unterschiedliche Aktoren schalten sollen, geben Sie diesen Schaltern einfach unterschiedliche<br />

Hauscodes.<br />

Sensoren<br />

Ein Sensor wird ab Werk mit einem zufällig eingestellten Hauscode geliefert. Bei Sensoren mit<br />

Eingabemöglichkeiten (z.B. Lichtschalter und Fernbedienungen, die Tasten haben, aber nicht<br />

Helligkeitssensoren, Bewegungsmelder o.ä. ohne Tasten) kann der Hauscode umgestellt werden. Das<br />

kann recht wichtig sein, falls z.B. auch Ihr Nachbar ein FS20-System betreibt – er soll ja nicht plötzlich<br />

Ihre Wohnzimmerbeleuchtung einschalten.<br />

Das einfachste Setup wird im weiteren Verlauf erklärt, <strong>für</strong> gewöhnlich erhält jedoch jeder Schalter<br />

einen eigenen Hauscode.<br />

Als ersten Sensor betrachten wir einen Lichtschalter fs20-s4a mit vier Knöpfen, genaugenommen vier<br />

Tastern. Ab Werk sind diese Schalter mit einem zufälligen Hauscode belegt und als 2-Kanal-Schalter<br />

eingestellt, d.h. dass sie wie zwei Tastenpaare bedient werden können – <strong>für</strong> zwei Geräte jeweils<br />

einen An- und Aus-Taster. Wenn Sie diese Einstellung beibehalten, ist die weitere Konfiguration am<br />

einfachsten.<br />

<strong>fhem</strong> <strong>für</strong> <strong>Einsteiger</strong> V 1.0 Seite 5


1 2<br />

Aus<br />

An<br />

Aus An<br />

3 4<br />

<strong>fhem</strong> <strong>für</strong> <strong>Einsteiger</strong><br />

FS20-S4A<br />

1 2<br />

An/Aus<br />

An/Aus<br />

3 4<br />

An/Aus An/Aus<br />

2-Kanal = 2 Tastenpaare 4-Kanal = 4 Taster<br />

Sie können mit den vier Tastern aber auch vier unterschiedlich Geräte jeweils ein- und ausschalten,<br />

jede einzelne Taste verhält sich dann wie ein Ein-Ausschalter <strong>für</strong> ein Gerät.<br />

Details zur Einstellung stehen im jeweiligen Handbuch. Für einen fs20-s4a gilt:<br />

- Hauscode einstellen: Tasten 1+3 <strong>für</strong> 5 Sekunden halten bis die LED blinkt. Dann den<br />

Hauscode als beliebige 8-stellige Zahl festlegen (Aufschreiben!), dabei kann jede der acht<br />

Stellen einen Wert zwischen 1 und 4 haben, entsprechend der 4 Tasten. Ein Hauscode wäre<br />

also z.B. 12341234.<br />

Hinweis: Setzen Sie bei diesen Schritten den Deckel auf den Schalter – eintippen<br />

direkt auf den Kontakten der Platine funktioniert nicht!<br />

- Tasten-Benutzung: Für 2 Tastenpaare mit jeweils „aus“ und „an“ halten Sie die Tasten 2+3 <strong>für</strong><br />

5 Sekunden, bis die LED kurz blinkt. Wenn Sie 4 einzelne Taster jeweils zum Ein- und<br />

Ausschalten nutzen möchten (Achtung – die Einrichtung ist später komplizierter!) halten Sie<br />

die Tasten 1+4 <strong>für</strong> 5 Sekunden, bis die LED kurz blinkt.<br />

Der Lichtschalter ist nun entsprechend Ihren Vorgaben konfiguriert.<br />

Hinweis: Wenn Ihr <strong>fhem</strong> bereits läuft, wird jede Taste, die Sie drücken, sofort ‚angelernt‘. Auch<br />

wenn’s schwerfällt – bitte erst lesen, dann drücken :-)<br />

Bevor der Sensor in <strong>fhem</strong> eingebunden wird, hier noch kurz die ‚Technische Sicht‘ auf den Schalter.<br />

<strong>fhem</strong> <strong>für</strong> <strong>Einsteiger</strong> V 1.0 Seite 6


<strong>fhem</strong> <strong>für</strong> <strong>Einsteiger</strong><br />

FS20-S4A – Technische Sicht<br />

00<br />

off<br />

off<br />

01<br />

on<br />

on<br />

00<br />

toggle<br />

toggle toggle<br />

02 03<br />

Hauscode Hauscode<br />

2-Kanal 4-Kanal<br />

01 toggle<br />

An <strong>fhem</strong> werden beim Betätigen einer Taste genau drei Informationen übermittelt:<br />

- Der Hauscode<br />

- Der Tastencode<br />

- Der Zielzustand<br />

Wenn Sie Ihren Schalter also als 2-Kanal konfiguriert haben und Sie drücken den Taster oben rechts,<br />

sendet dieser 00 on. Drücken Sie unten links, sendet er 01 off.<br />

Hinweis: Sollte Ihnen die Belegung ‚links off, rechts on‘ „unnatürlich“ erscheinen, können Sie diese<br />

Funktion vertauschen: attr exchange_on_off – diese ‚Programmierung‘ wird später nochmals<br />

erwähnt.<br />

Haben Sie Ihren Schalter als 4-Kanal konfiguriert, sendet dieser statt on/off lediglich die Information<br />

‚umschalten‘, englisch ‚toggle‘. Drücken Sie die Taste oben rechts, sendet der Schalter <br />

01 toggle. Je nachdem, ob das zu schaltende Gerät also zuvor an oder aus war, wird es durch<br />

toggle in den entgegengesetzten Zustand versetzt. Ein unschöner Nebeneffekt ist die Darstellung auf<br />

dem Web-Interface: während passend zu den Zuständen on und off eine hübsche ‚leuchtende‘ oder<br />

‚graue‘ Glühbirne erscheint, wird bei Vier-Kanal-Tastern lediglich das Wort toggle angezeigt. Wie man<br />

das ‚ausbügeln‘ kann, wird später erklärt – es erfordert Programmierung (siehe Toggeln).<br />

Hinweis: Wenn Sie einen Taster länger als 0,4 Sekunden drücken, werden statt on/off/toggle Befehle<br />

zum Dimmen gesendet. Auf diese gehen wir erst später ein.<br />

Anlernen von Sensoren in <strong>fhem</strong><br />

Um den Sensor mit <strong>fhem</strong> zu koppeln, drücken Sie die erste zu ‚lernende‘ Taste auf dem Schalter. Auf<br />

dem <strong>fhem</strong> webfrontend (mit F5 den Web-Browser refreshen!) erscheint dieser nun mit einem<br />

zufälligen Namen in <strong>fhem</strong>, er heißt dort z.B. FS20_602b01. Es wurde von <strong>fhem</strong> also ein Schalter mit<br />

<strong>fhem</strong> <strong>für</strong> <strong>Einsteiger</strong> V 1.0 Seite 7


<strong>fhem</strong> <strong>für</strong> <strong>Einsteiger</strong><br />

dem vorläufigen Namen FS20_602b01, also dem (hexadezimal dargestellten) Hauscode 602b und<br />

dem Tastencode 01 erkannt. Notieren Sie sich auch diese vierstellig hexadezimale Version des<br />

Hauscodes – ich habe mir da<strong>für</strong> eine Excel-Tabelle angelegt. Auf Ihrer <strong>fhem</strong>-Webseite finden Sie im<br />

oberen Bereich ein weißes Feld, über das Sie direkt getippte <strong>fhem</strong>-Befehle absetzen können. Der<br />

erste Befehl soll dem Umbenennen des Schalters dienen. Überlegen Sie sich die Bezeichnung Ihres<br />

Schalters gut, denn unter diesem Namen wird er fortan überall angezeigt. Ich habe mich da<strong>für</strong><br />

entschieden, die ersten zwei Stellen <strong>für</strong> das Zimmer zu verwenden (also wz=Wohnzimmer,<br />

ez=Esszimmer, sz=Schlafzimmer) und dann eine Beschreibung anzuhängen. Meine Sensor-Tasten<br />

heißen daher so, wie die Geräte, die geschaltet werden sollen, also z.B. wz_LampeSofa,<br />

sz_LeseLampe, ez_LichtRegal. Man kann sich ein beliebiges Namenssystem überlegen, jedoch<br />

müssen die Namen eindeutig sein. (In der App <strong>fhem</strong>obile wird der Teil vor dem Unterstrich nicht<br />

angezeigt, aus wz_LampeSofa wird in der Anzeige <strong>für</strong> das Wohnzimmer also LampeSofa). Namen<br />

dürfen keine Leerstellen enthalten. Angenommen Sie möchten wz_LampeSofa schalten: Tippen Sie<br />

im weißen Feld rename , in unserem Beispiel also rename FS20_602b01<br />

wz_LampeSofa. Das ist nun also der neue Name des gedrückten Tasters bzw. Taster-Paars. Auf der<br />

<strong>fhem</strong>-Webpage erscheint nun wz_LampeSofa mit den klickbaren Links <strong>für</strong> ON und OFF.<br />

Anlernen von Aktoren (Pairing)<br />

Um nun einen Aktor (also z.B. eine Steckdose) mit einem Schalter bzw. <strong>fhem</strong> zu koppeln, versetzt<br />

man den Aktor durch 5-sekündiges Festhalten des Knopfes (bis der blinkt) in den Lernmodus, und<br />

sendet dann einen Befehl – durch drücken des entsprechenden Tasters, oder durch anklicken von on<br />

oder off im <strong>fhem</strong>-webfrontend. Fertig! Der Aktor hat nun den Hauscode und Tastencode des<br />

Sensors/Lichtschalters ‚gelernt‘ und reagiert nur noch auf Befehle mit diesen Parametern.<br />

Damit ist das erste Schalterpaar erstellt. Sie können diese Steckdose nun vom Schalter und vom<br />

Webfrontend steuern.<br />

Versuchen Sie im Webfrontend das klicken auf ON und OFF. Schalten Sie die Steckdose mit dem<br />

Schalter ein und aus – wenn Sie dabei die Änderung auch im Web-Frontend sehen möchten,<br />

aktualisieren Sie die Darstellung in Ihrem Browser mit F5. Sie können diese Schritte auch durch<br />

getippte Befehle erreichen: in dem weißen Feld im oberen Bereich der <strong>fhem</strong>-Seite können direkte<br />

Befehle eingegeben werden. Probieren Sie set on und set off, also z.B. set<br />

wz_Lampe on<br />

Wenn derselbe Schalter mehrere Aktoren schalten soll, lernen Sie die weiteren Aktoren einfach<br />

genauso wie den ersten an demselben Sensor (Schalter) an.<br />

Mit den bisher beschriebenen Schritten lässt sich bereits eine recht umfangreiche Konfiguration<br />

erreichen.<br />

Dimmer<br />

Als speziellen Aktor gibt es auch Dimmer, z.B. fs20-di. Diese lassen sich wie Schalter mit<br />

on/off/toggle bedienen, beherrschen aber einige zusätzliche Befehle: dimup, dimdown sowie die<br />

Einstellung auf vorgegebene Dimmstufen, z.B. dim50%. Die vollständige Liste der 16 Dimmstufen<br />

finden Sie in der <strong>fhem</strong>-Referenz.<br />

<strong>fhem</strong> <strong>für</strong> <strong>Einsteiger</strong> V 1.0 Seite 8


<strong>fhem</strong> <strong>für</strong> <strong>Einsteiger</strong><br />

Wenn Sie an einem Sensor (Schalter) den Taster länger als 0,4 Sekunden gedrückt halten, sendet<br />

dieser statt on/off/toggle den Befehl dimup bzw. dimdown. So lassen sich wiederum ohne<br />

programmierung auch Dimmvorgänge erreichen. Ein Dimmern aus dem <strong>fhem</strong>-Webfrontend ist<br />

hingegen nur über eingetippte Befehle möglich, Sie können also z.B. set lampe1 dimup oder set<br />

lampe1 dim50% eingeben.<br />

Timer<br />

Viele Aktoren beherrschen auch eine timer-Funktion, so z.B. die Funksteckdose fs20-st oder der<br />

Dimmer fs20-di, ebenso ihre äquivalenten Unterputz-Modelle.<br />

Um den Timer vom Schalter aus zu aktivieren…<br />

In <strong>fhem</strong> stehen hier<strong>für</strong> mehrere Befehle zur Verfügung. Ein Beispiel ist set lamp1 on-for-timer<br />

10 (die Lampe <strong>für</strong> 10 Sekunden einschalten).<br />

Details und weitere Beispiele sind in der <strong>fhem</strong>-Referenz beschrieben.<br />

Schalten zu bestimmten Zeitpunkten<br />

Hier<strong>für</strong> steht in <strong>fhem</strong> der Befehl define…at zur Verfügung: define LampeAnUm1700 at<br />

17:00:00 set lamp on<br />

LampeAnUm1700 ist hierbei lediglich ein Name/Platzhalter, der verwendet wird, um den define-<br />

Befehl einheitlich zu verwenden.<br />

Der at-Befehl erlaubt nicht nur die absolute Angabe von Schaltzeiten (um 17:00), sondern auch<br />

relative Angaben (in 10 Minuten): define a5 at +00:10:00 set lamp on<br />

In der <strong>fhem</strong>-Referenz sind hierzu viele Beispiele genannt, die auch Wiederholungen aufzeigen sowie<br />

Abhängigkeiten von Wochenenden, Sonnenauf- und Untergängen etc.<br />

Pairing: Direkt vs. Indirekt<br />

In der bisher beschriebenen Konfiguration ist jeder Aktor direkt mit einem Sensor gekoppelt. Das hat<br />

den Vorteil, dass die Steuerung der Aktoren direkt vom Sensor vorgenommen wird und <strong>fhem</strong> zumeist<br />

nur ‚mitlauscht‘. Sobald also auf dem Sensor eine Taste gedrückt wird, wird der Aktor direkt und<br />

damit sofort angesteuert. Eine Zeitverzögerung z.B. wegen Auslastung des <strong>fhem</strong>-Systems tritt nicht<br />

auf – eine Zeitverzögerung von 2 Sekunden zwischen Drücken des Lichtschalters und einschalten des<br />

Lichts kann sehr irritierend wirken.<br />

Es gibt auch die Alternative, die Aktoren separat in <strong>fhem</strong> zu konfigurieren. Ein Sensor (Lichtschalter)<br />

steuert dann also nicht den Aktor, sondern CUL+<strong>fhem</strong>. <strong>fhem</strong> setzt seinerseits den Befehl um und<br />

schaltet den Aktor. Ähnliches gilt, wenn ein Aktor gar nicht von einem physischen Schalter, sondern<br />

<strong>fhem</strong> <strong>für</strong> <strong>Einsteiger</strong> V 1.0 Seite 9


<strong>fhem</strong> <strong>für</strong> <strong>Einsteiger</strong><br />

ausschließlich aus dem Web-Frontend getriggert werden soll.<br />

a<br />

Direkt vs. Indirekt<br />

C<br />

U<br />

L<br />

Direkt: Der Aktor ist direkt an den Sensor<br />

gekoppelt, Schaltbefehle werden sofort<br />

ausgeführt (a). Der CUL ‚lauscht dabei mit‘<br />

(a) und wird nur bei Nutzung des<br />

Webinterfaces ein Schaltsignal senden (b).<br />

Der Aktor erhält den Hauscode des Sensors,<br />

CUL sendet ebenfalls mit diesem Hauscode.<br />

b<br />

<strong>fhem</strong> <strong>für</strong> <strong>Einsteiger</strong> V 1.0 Seite 10<br />

C<br />

U<br />

L<br />

Indirekt: Der Sensor sendet an den CUL (1),<br />

<strong>fhem</strong> reagiert und sendet daraufhin einen<br />

Schaltbefehl an den Aktor (2), ebenso bei<br />

Nutzung des Webinterfaces (2). Hauscode<br />

von Sensor und Aktor sind unterschiedlich:<br />

Der Sensor hat einen eigenen Hauscode, der<br />

Aktor erhält den Hauscode des CUL.<br />

In diesen Fällen muss ein Aktor ‚manuell‘ in <strong>fhem</strong> eingerichtet werden. Außerdem ist eine ‚Kopplung‘<br />

zwischen Sensor und Aktor erforderlich, da <strong>fhem</strong> zunächst nicht wissen kann, welcher Sensor<br />

welchen Aktor schalten soll.<br />

Sämtliche Konfigurationen werden in der datei <strong>fhem</strong>.cfg vorgenommen. Sie kann bequem aus dem<br />

<strong>fhem</strong>-frontend heraus verändert werden. Wählen Sie dazu am linken Bildschirmrand den Menüpunkt<br />

‚Edit Files‘ und auf dem nächsten Bildschirm ‚<strong>fhem</strong>.cfg‘. Sie sehen nun nach ein paar<br />

Grundeinstellungen eine Auflistung aller bereits definierten Sensoren.<br />

Zunächst finden Sie hier den Hauscode des CUL, z.B. 6523. Diesen benötigen Sie eigentlich nur zur<br />

Steuerung bestimmter Geräte, der Einfachheit halber benutze ich ihn aber bei allen Definitionen <strong>für</strong><br />

Aktoren, die ausschließlich vom CUL gesteuert werden sollen. Auch der Hauscode des CUL ist ab<br />

Werk zufällig vergeben, Sie können den vierstelligen CUL-Hauscode nun auch verändern.<br />

Wenn Sie einen Aktor (Steckdose) direkt am CUL/<strong>fhem</strong> anlernen wollen, tragen Sie in Ihrer <strong>fhem</strong>.cfg<br />

folgendes ein:<br />

define , also z.B.<br />

define wz_MediaServer 6523 52<br />

Die laufende Nummer unterscheidet innerhalb desselben CUL-Hauscodes die einzelnen Geräte (das<br />

gibt es bei den Schaltern ebenso, wir haben es aber bisher nicht betrachtet). Da die Nummern bis 44<br />

von den Schaltern belegt sein können, starten Sie bei 50.<br />

Klicken Sie anschließend oben auf den button ‚Speichern ..../<strong>fhem</strong>.cfg‘. Tippen Sie dann im oberen<br />

weißen Feld zum Neuladen der Konfiguration den Befehl rereadcfg ein und bestätigen Sie mit<br />

1<br />

2


<strong>fhem</strong> <strong>für</strong> <strong>Einsteiger</strong><br />

. Wenn Sie danach links auf ‚All Together‘ klicken, erscheint der Name Ihres neuen Aktors<br />

im Webfrontend. Bringen Sie den Aktor in den Lernmodus und führen Sie am Webfrontend von <strong>fhem</strong><br />

einen Schaltvorgang <strong>für</strong> diesen Aktor aus – schon ist dieser gekoppelt (paired).<br />

Ereignis-gesteuerte Schaltungen - notify<br />

Vor allem bei indirekten Schaltungen möchten Sie erreichen, dass ein Ereignis (z.B. Drücken einer<br />

Taste) das Schalten eines Aktors nach sich zieht. Die Kopplung erfolgt so:<br />

define Schalter1Notify notify Schalter1 set wz_MediaServer on<br />

Der bei define…notify angegebene Name bezeichnet den ‚Event-Handler‘. Die besondere<br />

Eigenschaft dieser notify-Anweisungen ist, dass sie nicht zum Zeitpunkt ihrer Eingabe ausgeführt<br />

werden, sondern ab sofort im Hintergrund ‚mitlauschen‘. Sobald der nach notify angegebene Sensor<br />

einen Befehl übermittelt, wird der im notify beschriebene Befehl ausgeführt. Die oben dargestellte<br />

Zeile schaltet also wz_MediaServer an, sobald der Taster Schalter1 betätigt wird. Allerdings ist das so<br />

wie es da steht ein seltener Anwendungsfall: das Gerät soll ja nicht immer an-, sondern auch<br />

ausgeschaltet werden. Der Befehl, den der Sensor gesendet hat, muss also an den Aktor<br />

‚weitergereicht‘ werden. Da<strong>für</strong> wird die Variable % verwendet:<br />

Define Schalter1Notify notify Schalter1 set wz_MediaServer %<br />

Dabei hat % genau den Wert, der vom abgefragten Sensor (also Schalter1) gesendet wurde. Sendet<br />

also Schalter1 den Wert on, so wird der Befehl set wz_MediaServer on ausgeführt. Sendet der<br />

Schalter1 den Befehl off, so wird set wz_MediaServer off ausgeführt. Analog funktioniert das<br />

<strong>für</strong> jeden Befehl des Sensors, also auch toggle, dimup, dimdown etc.<br />

Geräte-Eigenschaften: Modell und Raum<br />

Die in <strong>fhem</strong> angelernten bzw. manuell angelegten Geräte können weitere Informationen mit sich<br />

führen. So können Sie z.B. hinterlegen, um welchen Gerätetyp es sich handelt:<br />

attr wz_MediaServer model fs20-st<br />

Definieren Sie auch die bereits in der <strong>fhem</strong>.cfg vorhandenen Schalter als Steckdosen (denn diese<br />

steuern Sie ja damit):<br />

attr wz_Lampe model fs20-st<br />

Die Angabe des Modells erlaubt eine passendere Darstellung in den <strong>fhem</strong>-frontends, z.B. werden <strong>für</strong><br />

Schalter keine Dimm-Befehle angeboten etc.<br />

Auch können Sie nun jeden Sensor und Aktor einem Raum in Ihrer Wohnung zuordnen:<br />

attr wz_MediaServer room Wohnzimmer<br />

attr wz_Lampe room Wohnzimmer<br />

<strong>fhem</strong> <strong>für</strong> <strong>Einsteiger</strong> V 1.0 Seite 11


<strong>fhem</strong> <strong>für</strong> <strong>Einsteiger</strong><br />

Nach Speichern der <strong>fhem</strong>.cfg und rereadcfg sehen Sie nun im linken Bereich einen neuen Eintrag<br />

‚Wohnzimmer‘. Wenn Sie dort klicken, werden alle Geräte angezeigt, die diesem Raum zugeordnet<br />

wurden.<br />

Alternativ zur <strong>fhem</strong>.cfg können Attribute auch direkt im Webfrontend ändern. Klicken Sie dazu auf<br />

den Namen des Geräts. In dem dann angezeigten Bildschirm können Sie mit einem dropdown<br />

Attribute auswählen und diesen auch Werte zuweisen.<br />

Mehrere Geräte mit einem klick schalten - Strukturen<br />

Um alle Geräte einer Gruppe (also z.B. alle Geräte im Wohnzimmer) mit nur einem Klick gemeinsam<br />

schalten können zu können, legen Sie in der <strong>fhem</strong>.cfg die Gruppe fest:<br />

define wz_Alle structure room wz_Lampe wz_MediaServer<br />

Nach Speichern, rereadcfg und klick auf ‘All Together’ wird nun auch die Struktur wz_Alle mit ihren<br />

ON und OFF-Schaltern angezeigt und ist bedienbar. Wenn Sie auch diese Struktur dem Wohnzimmer<br />

zuweisen, wird die Struktur auch in diesem Raum angezeigt:<br />

attr wz_Alle room Wohnzimmer<br />

Dabei wird diese Festlegung nun auf alle der Struktur zugehörigen Objekte vererbt (also wz_Lampe<br />

und wz_MediaServer).<br />

Infoquellen<br />

Mit den bisher dargestellten Möglichkeiten, sollten Sie die Grundlage haben, um Ihre eigene<br />

Anwendung in <strong>fhem</strong> abzubilden.<br />

Weitere hilfreiche Informationsquellen sind<br />

- Die <strong>fhem</strong>-Doku unter http://www.<strong>fhem</strong>.de<br />

- Die Befehlsreferenz unter http://<strong>fhem</strong>.de/commandref.html<br />

- Das <strong>fhem</strong>-wiki unter http://<strong>fhem</strong>wiki.de/index.php/FHEM<br />

- Das <strong>fhem</strong>-Forum unter http://groups.google.com/group/<strong>fhem</strong>-users<br />

Im Weiteren sind einige Sonder-Anwendungen dargestellt, die möglicherweise auch <strong>für</strong> Sie<br />

interessant sind.<br />

Bei der weiteren Arbeit mit <strong>fhem</strong> wünsche ich viel Spaß und Erfolg!<br />

<strong>fhem</strong> <strong>für</strong> <strong>Einsteiger</strong> V 1.0 Seite 12


Fritzbox<br />

Schichtenmodell & Zugänge<br />

Fritz!<br />

Oberfläche<br />

Fritz!<br />

Firmware<br />

http://fritz.box:80<br />

https://:553<br />

telnet://fritz.box:21<br />

Linux<br />

BIOS<br />

<strong>fhem</strong><br />

Perl<br />

<strong>fhem</strong> <strong>für</strong> <strong>Einsteiger</strong><br />

Schichtenmodell FB7390<br />

<strong>fhem</strong>web GUI<br />

Anwendung<br />

Firmware<br />

Fritz!Box Hardware<br />

CUL<br />

Fritz!<br />

Oberfläche<br />

Fritz!<br />

Firmware<br />

Zugänge<br />

Linux<br />

BIOS<br />

Fritz!Box<br />

<strong>fhem</strong>web<br />

<strong>fhem</strong><br />

Perl<br />

<strong>fhem</strong> <strong>für</strong> <strong>Einsteiger</strong> V 1.0 Seite 13<br />

culfw<br />

http://fritz.box:8083/<strong>fhem</strong><br />

http://fritz.box:8084/<strong>fhem</strong><br />

telnet://fritz.box:7072


<strong>fhem</strong> <strong>für</strong> <strong>Einsteiger</strong><br />

Telnet<br />

Telnet-Client herunterladen und installieren, zB PUTTY (install als Admin starten!)<br />

PuTTY verwenden:<br />

Am DECT-Telefon kann man den Telnet-Zugang der Fritzbox 7390 ein- oder ausschalten:<br />

#96*7* Telnet an<br />

#96*8* Telnet aus<br />

Siehe Schichtenmodell – erreichen von:<br />

<strong>fhem</strong>: fritz.box port 7072, Protocol RAW (nicht telnet), "Terminal:Implicit CR in every LF"<br />

Linux: fritz.box port 21, Protocol telnet<br />

http://<strong>fhem</strong>wiki.de/index.php/AVM_Fritz!Box<br />

Sammelsurium<br />

Flashen der Firmware an einem PC:<br />

1. FLIP runterladen (Programm zum flashen des ROMs auf dem CUL) von<br />

http://www.atmel.com/dyn/products/tools_card.asp?tool_id=3886<br />

2. CUL in den Rechner stecken (beim einstecken Mikroschalter gedrückt halten!), dann zum<br />

installieren des USB-Treibers: Im Windows Gerätemanager den device ATMEL xxxx anklicken,<br />

Eigenschaften, Gerätetreiber aktualisieren, von Festplatte, Verzeichnis<br />

c:\Programme\Flip\\USB auswählen und Treiber installieren lassen.<br />

http://code.google.com/p/micropendous/wiki/ProgramAndTestWindows<br />

FHEM<br />

3. CUL-Firmware (Hex) <strong>für</strong> FHEM runterladen von http://cvs.berlios.de/cgibin/viewvc.cgi/culfw/culfw/Devices/CUL/<br />

(Version passend zur CUL-Hardware-Version<br />

auswählen, bei mir CUL-Hardware-Version V3.2, also hex V3)<br />

4. Flip starten, unter ‚select device‘ exakt den Chip auswählen, der als Name des CUL im Geräte-<br />

Manager angezeigt wird (je nach Modell, zB ATU822U4), danach in der Flip Symbolleiste auf<br />

den 2. Button von links klicken (auch wenn der grau sein sollte – funktioniert trotzdem) und<br />

‚USB‘ auswählen. Sollte hier eine Fehlermeldung auftauchen, hat Schritt 2 nicht geklappt<br />

oder es wurde der falsche Chip ausgewählt.<br />

Dann mittels Menü Datei das bei Schritt 3 geladene hex-file nach Flip einlesen und mit<br />

button unten links auf den CUL flashen<br />

5. Wenn der CUL nach Abziehen und erneut in den Rechner stecken langsam grün blinkt, hat’s<br />

wohl geklappt.<br />

Monitoring<br />

First learn what are the trigger messages: telnet to your <strong>fhem</strong> (e.g. telnet localhost 7072) and issue<br />

the command "inform on". -> lässt alle CUL-Aktivitäten im telnet-fenster durchlaufen<br />

<strong>fhem</strong> <strong>für</strong> <strong>Einsteiger</strong> V 1.0 Seite 14


Fehlermeldungen<br />

<strong>fhem</strong> <strong>für</strong> <strong>Einsteiger</strong><br />

LOVF<br />

If too many messages for FHT devices are queued in CUL, the fht buffer subsystem of CUL overflows.<br />

You get EOB (end of buffer) messages and likely LOVF (limit overflow) messages, too. define attr<br />

CUL fhtsoftbuffer 1 to activate a quasi unlimited software buffer in <strong>fhem</strong> itself to avoid this<br />

behavior.<br />

Pairing - Aktoren<br />

1. In <strong>fhem</strong>.cfg device definieren mit<br />

define Schalter1 FS20 2323 54 (2323=Hauscode des CUL, 54 = laufende<br />

Nummer, beginnend bei 50 (bis 44 ist wohl von Sensoren belegt)<br />

attr Schalter1 model fs20st<br />

2. Rereadcfg<br />

3. Steckdose in Lernmodus bringen durch halten der Taste <strong>für</strong> 5sec<br />

4. Schalter1 am Webfrontend ein/ausschalten -> Pairing ok<br />

Sensoren<br />

Programmierung<br />

Vor dem Pairen müssen die Sensoren FS20-S4A eingestellt werden.<br />

Achtung: Der Deckel muss auf den Schalter aufgesetzt sein – nicht mit blanken Fingern direkt auf den<br />

Tastern auf der Platine arbeiten – bei mir hat dabei das Umstellen in 4-Kanal nicht funktioniert!<br />

Einstellen Hauscode: Halten 1+3, achtstelligen Hauscode eingeben (nur Ziffern 1-4 gemäß Tasten)<br />

a) 2-Kanal (2 Tastenpaare) durch halten der Tasten1+4<br />

b) 4-Kanal (4 einzelne Tasten) durch halten der Tasten 2+3<br />

Bei dem hier beschriebenen setup nicht benötigt: Bei FS20-S4A bei 4-Kanal einstellen von<br />

Addressgruppe und Unteradresse: Zu programmierende Taste halten, dann zusätzlich die<br />

danebenliegende – 5 Sekunden beide. Dann 4stellig die Addressgruppe+Untergruppe eingeben. Siehe<br />

Handbuch zum S4A.<br />

Sensor in FHEM anlernen<br />

Telnet fritz.box:7072 (siehe auch Telnet oben)<br />

Dann tippen: inform on<br />

Bei erstmaligem drücken einer Taste erscheint diese auch unter telnet im log. Wenn autocreate<br />

eingeschaltet ist, wird diese außerdem automatisch in der <strong>fhem</strong>.cfg eingetragen und erscheint damit<br />

auch im FHEM webfrontend. Sie bekomm hier einen ‚zufälligen‘ Namen – man möchte sie also<br />

umbenennen.<br />

Ich habe mich entschieden, die Taster so zu benennen, wie der zu schaltende Gegenstand heißt. Da<br />

die Geräte später mit diesem Namen auf dem Webfrontend erscheinen, ist es sinnvoll, sich eine<br />

einheitliche Namensgebung zu überlegen.<br />

<strong>fhem</strong> <strong>für</strong> <strong>Einsteiger</strong> V 1.0 Seite 15


<strong>fhem</strong> <strong>für</strong> <strong>Einsteiger</strong><br />

Bei mir nenne ich die Räume: Esszimmer (ez), Wohnzimmer (wz), Schlafzimmer (sz) usw.<br />

Meine Taster heissen nun: ezLichtRegal, wzLicht, wzLichtWand, wzLampeKlein, szLichtRegal,<br />

szStehlampe, szLeselampe<br />

Aus der <strong>fhem</strong>.cfg kann man sich den Namen des Tasters kopieren, zB FS20_696902. Diesen nun<br />

zum gewünschten Namen umbenennen, also zB<br />

rename FS20_696902 ezLichtRegal<br />

Pairing<br />

Nun die Aktoren wie gewünscht an den Tasten anlernen: Am Aktor (zB Steckdose) den Knopf 5sec<br />

gedrückt halten bis die Lampe blinkt, dann den zugeordneten Taster drücken – fertig.<br />

Diese Steckdose lässt sich nun sowohl über den Taster ein- und ausschalten, wie auch über das<br />

webfrontent.<br />

Einzige Unschönheit: Beim Schalten mit dem Taster schaltet zwar der Aktor (Steckdose), jedoch<br />

bleibt das icon (das Glühbirnchen) auf dem webfrontend unverändert.<br />

Um das zu beheben:<br />

Toggeln<br />

Um bei 4-Kanal mittels Taster ‚togglen‘ zu können, benötigt man folgenden code:<br />

Bei separat an den CUL gepairten Schaltern und Steckdosen:<br />

Für passende Variante zu Direktschalten Fred gepostet:<br />

http://groups.google.com/group/<strong>fhem</strong>-users/browse_thread/thread/b79e29fb2bd5722b<br />

Dort auch Installationsanleitung.<br />

Mit neuen Routinen Value() und OldValue() statt $value{} und $oldvalue{}{VAL}<br />

define ezLichtRegalSwitch notify ezLichtRegal { \<br />

if ("%" eq "toggle"){ \<br />

{Log 1, 'Vorher : Value() ist '.Value("ezLichtRegal")} \<br />

{Log 1, 'Vorher : OldValue() ist '.OldValue("ezLichtRegal")}\<br />

if (OldValue("ezLichtRegal") eq "off") { \<br />

{<strong>fhem</strong> "setstate ezLichtRegal on"}\<br />

{Log 1, "Change : setstate ezLichtRegal on"}\<br />

}\<br />

else { \<br />

{<strong>fhem</strong> "setstate ezLichtRegal off"} \<br />

{Log 1, "Change : setstate ezLichtRegal off"}\<br />

} \<br />

} \<br />

else { \<br />

{<strong>fhem</strong> "setstate ezLichtRegal %"} \<br />

} \<br />

{Log 1, 'Nachher: Value() ist '.Value("ezLichtRegal")} \<br />

{Log 1, 'Nachher: OldValue() ist '.OldValue("ezLichtRegal")}\<br />

}<br />

Gruppen und Strukturen<br />

http://groups.google.com/group/<strong>fhem</strong>-users/browse_thread/thread/1ffda243511bb5c4<br />

<strong>fhem</strong> <strong>für</strong> <strong>Einsteiger</strong> V 1.0 Seite 16


define EG structure Geschoss Lampe1 Lampe2<br />

define OG structure Geschoss Lampe3 Lampe4<br />

define Zuhause structure Haus EG OG<br />

<strong>fhem</strong> <strong>für</strong> <strong>Einsteiger</strong><br />

wuerde Lampe1 zusaetzlich die Attribute Geschoss=EG und Haus=Zuhause bekommen.<br />

Und mit "set Zuhause off" koennte man die Lampen 1 bis 4 ausschalten<br />

Manueller restart<br />

Manuelles Stoppen des FHEM-Servers mit shutdown; manuelles starten mit:<br />

cd /var/InternerSpeicher/<strong>fhem</strong><br />

sh start<strong>fhem</strong><br />

Automatisches restart<br />

http://groups.google.com/group/<strong>fhem</strong>users/browse_thread/thread/d3962e2a4adf0687/020a95e98d741dd6?lnk=gst&q=toggle+#020a95e<br />

98d741dd6<br />

Führe nachts automatisch shutdown (define<br />

<strong>fhem</strong>shutdown at 01:00:00 shutdown) und Neustart via daemon durch<br />

Vertauschen on/off-Taster<br />

Es wird mit "attr exchange_on_off" aktiviert.<br />

Includes<br />

Lastinclude<br />

Alternativ packt man solche Sachen in das lastinclude<br />

(http://<strong>fhem</strong>.de/commandref.html#lastinclude) File rein.<br />

Von ausserhalb des <strong>Home</strong>-Netzwerks zugreifen<br />

http://www.avm.de/de/Service/FAQs/FAQ_Sammlung/images/FRITZBOX_iPhone...<br />

Putty-Modus<br />

putty verwenden: Protocol RAW, "Terminal:Implicit CR in every LF"<br />

Umbenennen von on/off<br />

attr store eventMap on:open off:closed<br />

set store open<br />

<strong>fhem</strong> <strong>für</strong> <strong>Einsteiger</strong> V 1.0 Seite 17


<strong>fhem</strong> <strong>für</strong> <strong>Einsteiger</strong><br />

FB7390: Ein/Ausschalten des WLAN aus <strong>fhem</strong><br />

http://groups.google.com/group/<strong>fhem</strong>-users/browse_thread/thread/535114ca833e65ef<br />

Siehe auch:<br />

http://groups.google.com/group/<strong>fhem</strong>users/browse_thread/thread/02b7260a52da0021/07a056be133db46f#07a056be133db46f<br />

Ausgabe auf Bildschirm<br />

define a3 at 17:00:00 "/bin/echo "Teatime" > /dev/console"<br />

Basics<br />

http://www.domoticaforum.eu/viewtopic.php?f=66&t=5841<br />

Schaltsequenzen<br />

http://groups.google.com/group/<strong>fhem</strong>users/browse_thread/thread/e39b0594cb8620fe/2b016e5715f66a06?lnk=gst&q=harmony#2b016e5<br />

715f66a06<br />

Fhemupdate<br />

Da meiner Ansicht nach die CVS Version von <strong>fhem</strong> zuverlaessig laeuft,<br />

habe ich ein neues Kommando (in einem neuen Modul) hinzugefuegt:<br />

update<strong>fhem</strong> prueft die naechtlich aus dem CVS auf <strong>fhem</strong>.de/<strong>fhem</strong>update<br />

hochgeladene Dateien, laedt die geaenderten herunter, und falls<br />

geaenderte Module verwendet werden, fuehrt automatisch ein reload<br />

durch. D.h. fuer Benutzer sollte ein update auf dem aktuellen Code<br />

sehr bequem durchfuehrbar sein.<br />

Zu beachten:<br />

- Lokale Aenderungen (99_Util.pm) sollte man in umgenannten Dateien<br />

realisieren sonst werden die evtl. ueberschrieben.<br />

- Falls <strong>fhem</strong>.pl sich geaendert hat, dann ist ein manueller Neustart<br />

notwendig, in diesem Fall werden geaenderte Module nicht automatisch<br />

neu-geladen.<br />

http://groups.google.com/group/<strong>fhem</strong>-users/browse_thread/thread/690d5f20deab0dc4<br />

iPad-Frontend<br />

attr touchpad 1<br />

Hab fuer FHEMWEB ein neues Attribut eingefuegt (touchpad), wodurch die<br />

Anzeige auf Tablets wie der iPad meiner Ansicht nach etwas passender<br />

ist. Ich haette gerne feedback von (Anderen-Tablet)-Besitzer :)<br />

<strong>fhem</strong> <strong>für</strong> <strong>Einsteiger</strong> V 1.0 Seite 18


<strong>fhem</strong> <strong>für</strong> <strong>Einsteiger</strong><br />

http://groups.google.com/group/<strong>fhem</strong>-users/browse_thread/thread/b22fac17ecbd23e8#<br />

<strong>fhem</strong> <strong>für</strong> <strong>Einsteiger</strong> V 1.0 Seite 19

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!