fhem für Einsteiger - Home
fhem für Einsteiger - Home
fhem für Einsteiger - Home
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