<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>http://wiki.fhem.de/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Netbus</id>
	<title>FHEMWiki - Benutzerbeiträge [de]</title>
	<link rel="self" type="application/atom+xml" href="http://wiki.fhem.de/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Netbus"/>
	<link rel="alternate" type="text/html" href="http://wiki.fhem.de/wiki/Spezial:Beitr%C3%A4ge/Netbus"/>
	<updated>2026-04-06T09:21:45Z</updated>
	<subtitle>Benutzerbeiträge</subtitle>
	<generator>MediaWiki 1.43.6</generator>
	<entry>
		<id>http://wiki.fhem.de/w/index.php?title=Raspberry_Pi:_GPIOs_schalten&amp;diff=14253</id>
		<title>Raspberry Pi: GPIOs schalten</title>
		<link rel="alternate" type="text/html" href="http://wiki.fhem.de/w/index.php?title=Raspberry_Pi:_GPIOs_schalten&amp;diff=14253"/>
		<updated>2016-02-19T12:16:43Z</updated>

		<summary type="html">&lt;p&gt;Netbus: /* Perl-Modul */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Mit FHEM lassen sich auch die &#039;&#039;&#039;GPIOs&#039;&#039;&#039; des [[Raspberry Pi]] steuern. Generell gibt es einige Möglichkeiten, eine entsprechende Steuerung zu verwirklichen. Als Informationsquelle empfiehlt sich hier die [http://elinux.org/RPi_Low-level_peripherals Low-Level Peripherals Seite des Embedded Linux Wiki]&lt;br /&gt;
&lt;br /&gt;
== Bash Script ==&lt;br /&gt;
Zum schalten der GPIOs via Bash kann folgendes Script (fhem-gpio.sh) verwendet werden:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;#!/bin/bash&lt;br /&gt;
PORT=$1;&lt;br /&gt;
if&amp;amp;#160;! [ -d /sys/class/gpio/gpio$PORT ]&lt;br /&gt;
then&lt;br /&gt;
  echo &amp;quot;$PORT&amp;quot; &amp;amp;gt; /sys/class/gpio/export&lt;br /&gt;
  echo &amp;quot;out&amp;quot; &amp;amp;gt; /sys/class/gpio/gpio$PORT/direction&lt;br /&gt;
fi&lt;br /&gt;
STATE=$2;&lt;br /&gt;
if [ $STATE -ge 1 ]&lt;br /&gt;
then&lt;br /&gt;
  STATE=1&lt;br /&gt;
fi&lt;br /&gt;
echo &amp;quot;$STATE&amp;quot; &amp;amp;gt; /sys/class/gpio/gpio$PORT/value&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
Der Aufruf des Scripts erfolgt dann mit Angabe der Pinnummer sowie des Zustands des Pins, z.&amp;amp;nbsp;B.:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;fhem-gpio.sh 17 1 # Pin 17 in High-Zustand versetzen&lt;br /&gt;
fhem-gpio.sh 17 0 # Pin 17 in Low-Zustand versetzen&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
Wichtig: Das Script muss leider unter root (z.B. per sudo) aufgerufen werden.&lt;br /&gt;
Der Einfachheithalber kann das Script unter /usr/sbin kopiert werden.&lt;br /&gt;
&lt;br /&gt;
== Perl-Modul ==&lt;br /&gt;
Das Modul &#039;&#039;&#039;RPI_GPIO&#039;&#039;&#039; für den Zugriff auf die GPIO Pins des Raspberry wird bereits mit FHEM mitgeliefert.&lt;br /&gt;
Es setzt die [http://wiringpi.com/download-and-install/ WiringPi] Bibliothek voraus.&lt;br /&gt;
Installationsschritte sind in der Commandref zu finden. [http://forum.fhem.de/index.php/topic,16519.0.html Diskussions Thread im Forum]&lt;br /&gt;
&lt;br /&gt;
In Arbeit: Perl-Modul basierend auf [http://search.cpan.org/~mikem/Device-BCM2835-1.0/lib/Device/BCM2835.pm BCM2835-Modul]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Wichtig&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Der Benutzer „fhem“ muss der Gruppe „gpio“ hinzugefügt werden, damit FHEM später auch Zugriff auf die GPIO Ports hat.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;sudo adduser fhem gpio&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Dummy-Schalter ==&lt;br /&gt;
Über einen Dummy-Schalter kann das Bash-Script dann getriggert werden. &lt;br /&gt;
&lt;br /&gt;
Im Fall von [[FS20 Allgemein|FS20]] sähe eine entsprechende Schalter-Definition beispielsweise so aus:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;nowiki&amp;gt;define gpio_17 FS20 [Hauscode] [Devicecode]&lt;br /&gt;
attr gpio_17 dummy 1&lt;br /&gt;
define act_on_gpio_17 notify gpio_17 {\&lt;br /&gt;
 if (&amp;quot;%&amp;quot; ne &amp;quot;off&amp;quot;) {\&lt;br /&gt;
  system(&amp;quot;sudo fhem-gpio.sh 17 1 &amp;amp;amp;&amp;quot;)\&lt;br /&gt;
 } else {\&lt;br /&gt;
  system(&amp;quot;sudo fhem-gpio.sh 17 0 &amp;amp;amp;&amp;quot;)\&lt;br /&gt;
 }\&lt;br /&gt;
}&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
== Externe Links ==&lt;br /&gt;
* [http://elinux.org/RPi_Low-level_peripherals http://elinux.org/RPi_Low-level_peripherals]&lt;br /&gt;
* [http://search.cpan.org/~mikem/Device-BCM2835-1.0/lib/Device/BCM2835.pm http://search.cpan.org/~mikem/Device-BCM2835-1.0/lib/Device/BCM2835.pm]&lt;br /&gt;
* [http://wiringpi.com/download-and-install/ http://wiringpi.com/download-and-install/]&lt;br /&gt;
&lt;br /&gt;
{{SORTIERUNG:GPIOs schalten}}&lt;br /&gt;
[[Kategorie:Raspberry Pi]]&lt;/div&gt;</summary>
		<author><name>Netbus</name></author>
	</entry>
	<entry>
		<id>http://wiki.fhem.de/w/index.php?title=Speedtest&amp;diff=14252</id>
		<title>Speedtest</title>
		<link rel="alternate" type="text/html" href="http://wiki.fhem.de/w/index.php?title=Speedtest&amp;diff=14252"/>
		<updated>2016-02-19T12:12:36Z</updated>

		<summary type="html">&lt;p&gt;Netbus: /* Bekannte Probleme */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{SEITENTITEL:speedtest}} &lt;br /&gt;
{{Infobox Modul&lt;br /&gt;
|ModPurpose=Testet die Internetgeschwindigkeit&lt;br /&gt;
|ModType=d&lt;br /&gt;
|ModCmdRef=speedtest&lt;br /&gt;
|ModForumArea=Sonstiges&lt;br /&gt;
|ModTechName=32_speedtest.pm&lt;br /&gt;
|ModOwner=Andre / justme1968 ({{Link2FU|430|Forum}} / [[Benutzer_Diskussion:Justme|Wiki]])}}&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
{{Todo|Fehlerkontrolle, Formatierung, Ergänzung, ggf. Detaillieren des Troubleshooting}}&lt;br /&gt;
&lt;br /&gt;
[[Speedtest]] ist ein Modul um mit Hilfe des externen Python-Scripts speedtest-cli die Internetgeschwindigkeit zu testen. &lt;br /&gt;
&lt;br /&gt;
== Features / Funktionen ==&lt;br /&gt;
Mit Hilfe des Moduls kann in regelmäßigen Abständen die Internetgeschwindigkeit (download, upload, ping) bestimmt werden. Dabei wird auf das Pythonscript speedtest-cli (siehe [[speedtest#Weblinks|Weblinks]]) zurückgegriffen. Es lässt sich das Intervall, der genaue Server, gegen den getestet werden soll, sowie eine bestimmte Anzahl an Testläufen festlegen.&lt;br /&gt;
&lt;br /&gt;
== Definition ==&lt;br /&gt;
&lt;br /&gt;
Das Modul wird folgendermaßen definiert:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define &amp;lt;name&amp;gt; speedtest [&amp;lt;interval&amp;gt; [&amp;lt;server&amp;gt;]]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Optionen ===&lt;br /&gt;
&lt;br /&gt;
Die Angabe des Intervals ist optional. Der Defaultwert ohne Angabe des Intervalls ist 3600 Sekunden. Die Daten werden alle &amp;lt;interval&amp;gt; Sekunden aktualisiert. Das Minimum ist 1800 Sekunden.&lt;br /&gt;
&lt;br /&gt;
Die Angabe des Servers ist ebenfalls optional. Der Defaultwert ohne Angabe ist der per ping &amp;quot;nächstgelegene&amp;quot; Server. Über die Option &amp;lt;server&amp;gt; kann ein dedizierter speedtest Server festgelegt werden, gegen den die Geschwindigkeit ermittelt wird.&lt;br /&gt;
 &lt;br /&gt;
Eine Liste lässt sich auf der Kommandozeile über den folgenden Aufruf auslesen:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
speedtest-cli --list&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; Readings&lt;br /&gt;
Als readings werden Werte für ping in ms, download-/upload-Geschwindigkeiten in Mbit/s zur Verfügung gestellt.&lt;br /&gt;
&lt;br /&gt;
; Manuelle Abfrage&lt;br /&gt;
Ein Test lässt sich über ein &amp;lt;code&amp;gt;set speedtest statusRequest&amp;lt;/code&amp;gt; manuell anstoßen.&lt;br /&gt;
&lt;br /&gt;
=== Attribute ===&lt;br /&gt;
Bei der Definition des Moduls können folgende Attribute gesetzt werden&lt;br /&gt;
&lt;br /&gt;
; path&lt;br /&gt;
Hier kann der Pfad zum Script angegeben werden. Im unten gegebenen Fall wäre das /usr/local/bin.&lt;br /&gt;
&lt;br /&gt;
; checks-till-disable&lt;br /&gt;
Über dieses Attribut lässt sich festlegen, wie häufig speedtest ausgeführt werden soll, bevor der automatische Aufruf deaktiviert wird. Nach Ablauf des Zählers wird das Modul automatisch auf disable gesetzt. Bei jedem Durchlauf wird der Zähler um 1 reduziert.&lt;br /&gt;
&lt;br /&gt;
; disable&lt;br /&gt;
Ist dieses Attribut auf 1 gesetzt, ist die automatische Ausführung deaktiviert. Das manuelle Ausführen über set ist trotzdem möglich.&lt;br /&gt;
&lt;br /&gt;
== Voraussetzungen ==&lt;br /&gt;
&lt;br /&gt;
Für diese Anleitung ist notwendig&lt;br /&gt;
* Wissen, wie man mit der Kommandozeile umgeht und Linuxgrundkenntnisse&lt;br /&gt;
* Paket- und Quellenverwaltung apt-get&lt;br /&gt;
&lt;br /&gt;
Alle in diesen Kapitel genannten Befehle müssen auf der Kommandozeile abgesetzt werden.&lt;br /&gt;
&lt;br /&gt;
=== Python ===&lt;br /&gt;
&lt;br /&gt;
Entsprechend Quelle des Scripts ist eine Python-Version zwischen 2.4 - 3.4 erforderlich.&lt;br /&gt;
Um herauszufinden, welche Python-Version installiert ist, reicht ein Aufruf auf der Kommandozeile von&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
python -V&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ist eine Version kleiner als 2.4 installiert, sollte ein Update über z.B. folgende Befehle Abhilfe schaffen (liest die aktuelle Paketliste ein):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der folgende Aufruf aktualisiert alle installierten Pakete auf die derzeit aktuellste Version:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get upgrade&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Bekommt man eine Fehlermeldung mit dem Hinweis, dass Python nicht installiert sei, muss dieses entsprechend Platform installiert werden, z.B. über folgenden Befehl:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install python&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== speedtest-cli ===&lt;br /&gt;
&lt;br /&gt;
Der Download lässt sich über wget ODER github oder diverse andere Möglichkeiten bewerkstelligen. Entsprechende Pakete müssen auf dem System installiert sein. Falls nicht, muss man diese über einen der beiden Befehle installieren:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install wget&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install git&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Damit man den Download nicht irgendwo auf seinem System herunterlädt, ist empfehlenswert, zunächst in sein eigenes Homeverzeichnis zu wechseln:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd ~&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Um keine Dateileichen zu hinterlassen, empfiehlt es sich darüber hinaus, NACH erfolgreicher Installation aufzuräumen und alles was man hierher heruntergeladen hat, gleich zu löschen.&lt;br /&gt;
&lt;br /&gt;
==== Wget ====&lt;br /&gt;
&lt;br /&gt;
Im eigenen Homeverzeichnis führt man den folgenden Befehl aus, um speedtest-cli herunterzuladen. Dieser läd das Script herunter und speichert es am Ort des Ausführens unter speedtest-cli:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
wget -O speedtest-cli https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest_cli.py&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Damit das Script ausführbar ist, müssen die Berechtigungen entsprechend gesetzt werden:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
chmod +x speedtest-cli&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anschließend wird es an eine passende Stelle im System verschoben, z.B. in den Ordner /usr/local/bin:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo mv speedtest-cli /usr/local/bin&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Github ====&lt;br /&gt;
&lt;br /&gt;
Mit folgendem Aufruf lässt sich das Paket herunterladen. Dabei wird ein passendes neues Unterverzeichnis angelegt und das Heruntergeladene darin entpackt.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
git clone https://github.com/sivel/speedtest-cli.git&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Das Script liegt hier bereits ausführbar als speedtest_cli.py im Unterordner und muss an einen passenden Ort kopiert werden. Dabei ist wichtig, dass das Modul den Namen &amp;lt;code&amp;gt;speedtest-cli&amp;lt;/code&amp;gt; erwartet.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo cp ./speedtest-cli/speedtest_cli.py /usr/local/bin/speedtest-cli&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Test des Scripts ===&lt;br /&gt;
&lt;br /&gt;
Ob das Script funktioniert, lässt sich über folgenden Aufruf testen:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/usr/local/bin/speedtest-cli&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Detaillierte Informationen zu den Optionen beim Aufruf sind auf der Quell-Seite dokumentiert [[Speedtest#Weblinks|Weblinks]].&lt;br /&gt;
&lt;br /&gt;
== Beispiel ==&lt;br /&gt;
(Bearbeitung über die Weboberfläche von FHEM und &amp;quot;edit files&amp;quot; oder direkte Eingabe in die FHEM-Befehlszeile)&lt;br /&gt;
&lt;br /&gt;
=== Definition des Moduls ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define speedtest speedtest 1800 5255&lt;br /&gt;
attr speedtest path /usr/local/bin&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Logging in eine Datei ===&lt;br /&gt;
&lt;br /&gt;
Das loggen der Daten in eine Datei sähe z.B. so aus.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define FileLog_speedtest FileLog ./log/speedtest-%Y.log speedtest:.*&lt;br /&gt;
attr FileLog_speedtest logtype text&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Definition der Datei speedtest3.gplots:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
############################&lt;br /&gt;
# Display speedtest results&lt;br /&gt;
&lt;br /&gt;
set terminal png transparent size &amp;lt;SIZE&amp;gt; crop&lt;br /&gt;
set output &#039;&amp;lt;OUT&amp;gt;.png&#039;&lt;br /&gt;
set xdata time&lt;br /&gt;
set timefmt &amp;quot;%Y-%m-%d_%H:%M:%S&amp;quot;&lt;br /&gt;
set xlabel &amp;quot; &amp;quot;&lt;br /&gt;
set title &#039;&amp;lt;L1&amp;gt;&#039;&lt;br /&gt;
&lt;br /&gt;
set yrange [0:1]&lt;br /&gt;
set y2range [0:12]&lt;br /&gt;
set y3range [0:120]&lt;br /&gt;
&lt;br /&gt;
set ylabel &amp;quot;Mbit/s&amp;quot;&lt;br /&gt;
set y2label &amp;quot;Mbit/s&amp;quot;&lt;br /&gt;
set y3label &amp;quot;ms&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#FileLog 4:speedtest.download\x3a::&lt;br /&gt;
#FileLog 4:speedtest.upload\x3a::&lt;br /&gt;
#FileLog 4:speedtest.ping\x3a::&lt;br /&gt;
&lt;br /&gt;
plot&lt;br /&gt;
     using 1:2 ls l0 axes x1y2 title &#039;download (Mbit/s)&#039; with lines,&lt;br /&gt;
     using 1:2 ls l1 axes x1y1 title &#039;upload (Mbit/s)&#039; with lines,&lt;br /&gt;
     using 1:2 ls l2 axes x1y3 title &#039;ping (ms)&#039; with lines&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der Weblink wird wie folgt definiert:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define wl_speedtest SVG FileLog_speedtest:speedtest3:CURRENT&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Logging mit Hilfe von DbLog ===&lt;br /&gt;
&lt;br /&gt;
Das loggen in die Datenbank erfolgt, wenn die Readings explizit oder generell alle Readings bei der Definition von DbLog angegeben worden sind und bei der Definition des Moduls speedtest die Readings nicht über DbLogExclude ausgeschlossen wurden.&lt;br /&gt;
&lt;br /&gt;
Definition des Plots bei Verwendung von DbLog&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define wl_speedtest SVG myDbLog:speedtest:HISTORY&lt;br /&gt;
attr wl_speedtest label &amp;quot;DL $data{currval1} / UL $data{currval2} / ping $data{currval3}&amp;quot;&lt;br /&gt;
attr wl_speedtest plotfunction speedtest&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Definition der Datei speedtest.gplots:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
############################&lt;br /&gt;
# Display speedtest results&lt;br /&gt;
&lt;br /&gt;
set terminal png transparent size &amp;lt;SIZE&amp;gt; crop&lt;br /&gt;
set output &#039;&amp;lt;OUT&amp;gt;.png&#039;&lt;br /&gt;
set xdata time&lt;br /&gt;
set timefmt &amp;quot;%Y-%m-%d_%H:%M:%S&amp;quot;&lt;br /&gt;
set xlabel &amp;quot; &amp;quot;&lt;br /&gt;
set title &#039;&amp;lt;L1&amp;gt;&#039;&lt;br /&gt;
&lt;br /&gt;
set yrange [0:1]&lt;br /&gt;
set y2range [0:12]&lt;br /&gt;
set y3range [0:120]&lt;br /&gt;
&lt;br /&gt;
set ylabel &amp;quot;Mbit/s&amp;quot;&lt;br /&gt;
set y2label &amp;quot;Mbit/s&amp;quot;&lt;br /&gt;
set y3label &amp;quot;ms&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#myDbLog &amp;lt;SPEC1&amp;gt;:download:::$val=~s/([\d.]*).*/$1/eg&lt;br /&gt;
#myDbLog &amp;lt;SPEC1&amp;gt;:upload:::$val=~s/([\d.]*).*/$1/eg&lt;br /&gt;
#myDbLog &amp;lt;SPEC1&amp;gt;:ping:::$val=~s/([\d.]*).*/$1/eg&lt;br /&gt;
&lt;br /&gt;
plot&lt;br /&gt;
     using 1:2 ls l0 axes x1y2 title &#039;download (Mbit/s)&#039; with lines,&lt;br /&gt;
     using 1:2 ls l1 axes x1y1 title &#039;upload (Mbit/s)&#039; with lines,&lt;br /&gt;
     using 1:2 ls l2 axes x1y3 title &#039;ping (ms)&#039; with lines&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Bekannte Probleme ==&lt;br /&gt;
* Für den Betrieb ist Python notwendig. Daher läuft das Script nicht ohne Weiteres auf einer Fritzbox.&lt;br /&gt;
* Vor ein paar Tagen (28.02.2015) gab es ein paar Fehlermeldungen, die sich nach der Aktualisierung des Scripts aber bislang wieder erübrigt haben.&lt;br /&gt;
* Zwischenzeitlich wurde das Script umbenannt. Das Modul erwartet nach wie vor den ursprünglichen Namen. Daher ist wie oben beschrieben darauf zu achten, dass das abgelegte Script &amp;lt;code&amp;gt;speedtest-cli&amp;lt;/code&amp;gt; heißt und zur Not dahingehend umbenannt wird.&lt;br /&gt;
* Das Modul bricht ggf. mit einer Perl-Fehlermeldung im Fhem-Log ab, obwohl das Script &amp;lt;code&amp;gt;speedtest-cli&amp;lt;/code&amp;gt; von der Konsole aus einwandfrei läuft. Dies tritt z.B. bei Verwendung von Rasbian mit installierten Python2.7 und Python3 auf. Zur Behebung muss im Script &amp;lt;code&amp;gt;speedtest-cli&amp;lt;/code&amp;gt; die erste Zeile auf &amp;lt;code&amp;gt;#!/usr/bin/env python&#039;&#039;&#039;3&#039;&#039;&#039;&amp;lt;/code&amp;gt; geändert werden.&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
Im Folgenden sind ein paar Ansatzpunkte genannt, um beim Troubleshooting zu unterstützen.&lt;br /&gt;
&lt;br /&gt;
; Läuft das Script beim Aufruf auf der Kommandozeile?&lt;br /&gt;
* Es könnte am fehlenden oder einer falschen Version von Python liegen.&lt;br /&gt;
* Ist das Script ausführbar?&lt;br /&gt;
* Hat man selbst bzw. die FHEM-Instanz ausreichend Berechtigungen, das Script auszuführen?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
; Ist das Log frei von Fehlermeldungen?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
; Werden im Modul Readings angezeigt?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
; Kommen die Readings im Log (Filelog oder DbLog) an?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
; Ist die Definition von SVG korrekt?&lt;br /&gt;
* Richtiger Verweis auf Filelog oder DbLog&lt;br /&gt;
* Angabe des richtigen gplot-Files&lt;br /&gt;
* Übergabe der Plotfunktion (bei DbLog)&lt;br /&gt;
* Die der Syntax korrekt (case sensitive)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
; Ist der Inhalt des gplot-Files korrekt&lt;br /&gt;
* Ist die Definition der Quelle korrekt (Filelog, DbLog oder LogProxy)?&lt;br /&gt;
* Ist die Regexpr korrekt?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
; Fehlermeldung &amp;quot;isn&#039;t numeric in sprintf at ./FHEM/98_SVG.pm&amp;quot;&lt;br /&gt;
* Dieses kommt grundsätzlich immer dann vor, wenn SVG versucht einen Wert einzulesen, der neben der Zahl auch die Einheit enthält. Dieses kann bei der Verwendung von DbLog (DbLog ist nicht bekannt, wo es bei dem geloggten Modul die Einheit abtrennen soll) oder addlog vorkommen. Abhilfe liefert eine entsprechende Regexpr, die nur den Zahlenwert verwendet.&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* Beschreibung des Scripts [http://binarynature.blogspot.de/2013/03/measure-internet-connection-speed-from-linux-command-line.html binarynature.blogspot.de]&lt;br /&gt;
* Quelle des Scripts [https://pypi.python.org/pypi/speedtest-cli pypi.python.org]&lt;br /&gt;
* Quelle des Scripts [https://github.com/sivel/speedtest-cli github.com]&lt;br /&gt;
* Forumseintrag über die Entwicklung des Moduls [http://forum.fhem.de/index.php/topic,13419.msg83189.html#msg83189 Thema: Internetgeschwindigkeit überwachen]&lt;br /&gt;
* Forumseintrag darüber, dass das Binary nicht auf der Fritzbox läuft [http://forum.fhem.de/index.php/topic,27242.msg201516.html#msg201516 Thema: Internetgeschwindigkeit - speedtest]&lt;br /&gt;
* Forumseintrag über aus der Idee wird ein Modul [http://forum.fhem.de/index.php/topic,13483.msg83538.html#msg83538 Thema: Internetgeschwindigkeit überwachen]&lt;br /&gt;
&lt;br /&gt;
== sonstiges ==&lt;br /&gt;
Besten Dank an wkarl, Puschel74, justme1968 für Idee, Modulerstellung/Pflege und Installationsanleitung.&lt;/div&gt;</summary>
		<author><name>Netbus</name></author>
	</entry>
	<entry>
		<id>http://wiki.fhem.de/w/index.php?title=Speedtest&amp;diff=14251</id>
		<title>Speedtest</title>
		<link rel="alternate" type="text/html" href="http://wiki.fhem.de/w/index.php?title=Speedtest&amp;diff=14251"/>
		<updated>2016-02-19T12:12:09Z</updated>

		<summary type="html">&lt;p&gt;Netbus: /* Bekannte Probleme */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{SEITENTITEL:speedtest}} &lt;br /&gt;
{{Infobox Modul&lt;br /&gt;
|ModPurpose=Testet die Internetgeschwindigkeit&lt;br /&gt;
|ModType=d&lt;br /&gt;
|ModCmdRef=speedtest&lt;br /&gt;
|ModForumArea=Sonstiges&lt;br /&gt;
|ModTechName=32_speedtest.pm&lt;br /&gt;
|ModOwner=Andre / justme1968 ({{Link2FU|430|Forum}} / [[Benutzer_Diskussion:Justme|Wiki]])}}&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
{{Todo|Fehlerkontrolle, Formatierung, Ergänzung, ggf. Detaillieren des Troubleshooting}}&lt;br /&gt;
&lt;br /&gt;
[[Speedtest]] ist ein Modul um mit Hilfe des externen Python-Scripts speedtest-cli die Internetgeschwindigkeit zu testen. &lt;br /&gt;
&lt;br /&gt;
== Features / Funktionen ==&lt;br /&gt;
Mit Hilfe des Moduls kann in regelmäßigen Abständen die Internetgeschwindigkeit (download, upload, ping) bestimmt werden. Dabei wird auf das Pythonscript speedtest-cli (siehe [[speedtest#Weblinks|Weblinks]]) zurückgegriffen. Es lässt sich das Intervall, der genaue Server, gegen den getestet werden soll, sowie eine bestimmte Anzahl an Testläufen festlegen.&lt;br /&gt;
&lt;br /&gt;
== Definition ==&lt;br /&gt;
&lt;br /&gt;
Das Modul wird folgendermaßen definiert:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define &amp;lt;name&amp;gt; speedtest [&amp;lt;interval&amp;gt; [&amp;lt;server&amp;gt;]]&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Optionen ===&lt;br /&gt;
&lt;br /&gt;
Die Angabe des Intervals ist optional. Der Defaultwert ohne Angabe des Intervalls ist 3600 Sekunden. Die Daten werden alle &amp;lt;interval&amp;gt; Sekunden aktualisiert. Das Minimum ist 1800 Sekunden.&lt;br /&gt;
&lt;br /&gt;
Die Angabe des Servers ist ebenfalls optional. Der Defaultwert ohne Angabe ist der per ping &amp;quot;nächstgelegene&amp;quot; Server. Über die Option &amp;lt;server&amp;gt; kann ein dedizierter speedtest Server festgelegt werden, gegen den die Geschwindigkeit ermittelt wird.&lt;br /&gt;
 &lt;br /&gt;
Eine Liste lässt sich auf der Kommandozeile über den folgenden Aufruf auslesen:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
speedtest-cli --list&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
; Readings&lt;br /&gt;
Als readings werden Werte für ping in ms, download-/upload-Geschwindigkeiten in Mbit/s zur Verfügung gestellt.&lt;br /&gt;
&lt;br /&gt;
; Manuelle Abfrage&lt;br /&gt;
Ein Test lässt sich über ein &amp;lt;code&amp;gt;set speedtest statusRequest&amp;lt;/code&amp;gt; manuell anstoßen.&lt;br /&gt;
&lt;br /&gt;
=== Attribute ===&lt;br /&gt;
Bei der Definition des Moduls können folgende Attribute gesetzt werden&lt;br /&gt;
&lt;br /&gt;
; path&lt;br /&gt;
Hier kann der Pfad zum Script angegeben werden. Im unten gegebenen Fall wäre das /usr/local/bin.&lt;br /&gt;
&lt;br /&gt;
; checks-till-disable&lt;br /&gt;
Über dieses Attribut lässt sich festlegen, wie häufig speedtest ausgeführt werden soll, bevor der automatische Aufruf deaktiviert wird. Nach Ablauf des Zählers wird das Modul automatisch auf disable gesetzt. Bei jedem Durchlauf wird der Zähler um 1 reduziert.&lt;br /&gt;
&lt;br /&gt;
; disable&lt;br /&gt;
Ist dieses Attribut auf 1 gesetzt, ist die automatische Ausführung deaktiviert. Das manuelle Ausführen über set ist trotzdem möglich.&lt;br /&gt;
&lt;br /&gt;
== Voraussetzungen ==&lt;br /&gt;
&lt;br /&gt;
Für diese Anleitung ist notwendig&lt;br /&gt;
* Wissen, wie man mit der Kommandozeile umgeht und Linuxgrundkenntnisse&lt;br /&gt;
* Paket- und Quellenverwaltung apt-get&lt;br /&gt;
&lt;br /&gt;
Alle in diesen Kapitel genannten Befehle müssen auf der Kommandozeile abgesetzt werden.&lt;br /&gt;
&lt;br /&gt;
=== Python ===&lt;br /&gt;
&lt;br /&gt;
Entsprechend Quelle des Scripts ist eine Python-Version zwischen 2.4 - 3.4 erforderlich.&lt;br /&gt;
Um herauszufinden, welche Python-Version installiert ist, reicht ein Aufruf auf der Kommandozeile von&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
python -V&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ist eine Version kleiner als 2.4 installiert, sollte ein Update über z.B. folgende Befehle Abhilfe schaffen (liest die aktuelle Paketliste ein):&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der folgende Aufruf aktualisiert alle installierten Pakete auf die derzeit aktuellste Version:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get upgrade&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Bekommt man eine Fehlermeldung mit dem Hinweis, dass Python nicht installiert sei, muss dieses entsprechend Platform installiert werden, z.B. über folgenden Befehl:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install python&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== speedtest-cli ===&lt;br /&gt;
&lt;br /&gt;
Der Download lässt sich über wget ODER github oder diverse andere Möglichkeiten bewerkstelligen. Entsprechende Pakete müssen auf dem System installiert sein. Falls nicht, muss man diese über einen der beiden Befehle installieren:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install wget&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install git&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Damit man den Download nicht irgendwo auf seinem System herunterlädt, ist empfehlenswert, zunächst in sein eigenes Homeverzeichnis zu wechseln:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd ~&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Um keine Dateileichen zu hinterlassen, empfiehlt es sich darüber hinaus, NACH erfolgreicher Installation aufzuräumen und alles was man hierher heruntergeladen hat, gleich zu löschen.&lt;br /&gt;
&lt;br /&gt;
==== Wget ====&lt;br /&gt;
&lt;br /&gt;
Im eigenen Homeverzeichnis führt man den folgenden Befehl aus, um speedtest-cli herunterzuladen. Dieser läd das Script herunter und speichert es am Ort des Ausführens unter speedtest-cli:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
wget -O speedtest-cli https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest_cli.py&lt;br /&gt;
&amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Damit das Script ausführbar ist, müssen die Berechtigungen entsprechend gesetzt werden:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
chmod +x speedtest-cli&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Anschließend wird es an eine passende Stelle im System verschoben, z.B. in den Ordner /usr/local/bin:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo mv speedtest-cli /usr/local/bin&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Github ====&lt;br /&gt;
&lt;br /&gt;
Mit folgendem Aufruf lässt sich das Paket herunterladen. Dabei wird ein passendes neues Unterverzeichnis angelegt und das Heruntergeladene darin entpackt.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
git clone https://github.com/sivel/speedtest-cli.git&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Das Script liegt hier bereits ausführbar als speedtest_cli.py im Unterordner und muss an einen passenden Ort kopiert werden. Dabei ist wichtig, dass das Modul den Namen &amp;lt;code&amp;gt;speedtest-cli&amp;lt;/code&amp;gt; erwartet.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo cp ./speedtest-cli/speedtest_cli.py /usr/local/bin/speedtest-cli&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Test des Scripts ===&lt;br /&gt;
&lt;br /&gt;
Ob das Script funktioniert, lässt sich über folgenden Aufruf testen:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
/usr/local/bin/speedtest-cli&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Detaillierte Informationen zu den Optionen beim Aufruf sind auf der Quell-Seite dokumentiert [[Speedtest#Weblinks|Weblinks]].&lt;br /&gt;
&lt;br /&gt;
== Beispiel ==&lt;br /&gt;
(Bearbeitung über die Weboberfläche von FHEM und &amp;quot;edit files&amp;quot; oder direkte Eingabe in die FHEM-Befehlszeile)&lt;br /&gt;
&lt;br /&gt;
=== Definition des Moduls ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define speedtest speedtest 1800 5255&lt;br /&gt;
attr speedtest path /usr/local/bin&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Logging in eine Datei ===&lt;br /&gt;
&lt;br /&gt;
Das loggen der Daten in eine Datei sähe z.B. so aus.&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define FileLog_speedtest FileLog ./log/speedtest-%Y.log speedtest:.*&lt;br /&gt;
attr FileLog_speedtest logtype text&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Definition der Datei speedtest3.gplots:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
############################&lt;br /&gt;
# Display speedtest results&lt;br /&gt;
&lt;br /&gt;
set terminal png transparent size &amp;lt;SIZE&amp;gt; crop&lt;br /&gt;
set output &#039;&amp;lt;OUT&amp;gt;.png&#039;&lt;br /&gt;
set xdata time&lt;br /&gt;
set timefmt &amp;quot;%Y-%m-%d_%H:%M:%S&amp;quot;&lt;br /&gt;
set xlabel &amp;quot; &amp;quot;&lt;br /&gt;
set title &#039;&amp;lt;L1&amp;gt;&#039;&lt;br /&gt;
&lt;br /&gt;
set yrange [0:1]&lt;br /&gt;
set y2range [0:12]&lt;br /&gt;
set y3range [0:120]&lt;br /&gt;
&lt;br /&gt;
set ylabel &amp;quot;Mbit/s&amp;quot;&lt;br /&gt;
set y2label &amp;quot;Mbit/s&amp;quot;&lt;br /&gt;
set y3label &amp;quot;ms&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#FileLog 4:speedtest.download\x3a::&lt;br /&gt;
#FileLog 4:speedtest.upload\x3a::&lt;br /&gt;
#FileLog 4:speedtest.ping\x3a::&lt;br /&gt;
&lt;br /&gt;
plot&lt;br /&gt;
     using 1:2 ls l0 axes x1y2 title &#039;download (Mbit/s)&#039; with lines,&lt;br /&gt;
     using 1:2 ls l1 axes x1y1 title &#039;upload (Mbit/s)&#039; with lines,&lt;br /&gt;
     using 1:2 ls l2 axes x1y3 title &#039;ping (ms)&#039; with lines&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Der Weblink wird wie folgt definiert:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define wl_speedtest SVG FileLog_speedtest:speedtest3:CURRENT&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Logging mit Hilfe von DbLog ===&lt;br /&gt;
&lt;br /&gt;
Das loggen in die Datenbank erfolgt, wenn die Readings explizit oder generell alle Readings bei der Definition von DbLog angegeben worden sind und bei der Definition des Moduls speedtest die Readings nicht über DbLogExclude ausgeschlossen wurden.&lt;br /&gt;
&lt;br /&gt;
Definition des Plots bei Verwendung von DbLog&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
define wl_speedtest SVG myDbLog:speedtest:HISTORY&lt;br /&gt;
attr wl_speedtest label &amp;quot;DL $data{currval1} / UL $data{currval2} / ping $data{currval3}&amp;quot;&lt;br /&gt;
attr wl_speedtest plotfunction speedtest&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Definition der Datei speedtest.gplots:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
############################&lt;br /&gt;
# Display speedtest results&lt;br /&gt;
&lt;br /&gt;
set terminal png transparent size &amp;lt;SIZE&amp;gt; crop&lt;br /&gt;
set output &#039;&amp;lt;OUT&amp;gt;.png&#039;&lt;br /&gt;
set xdata time&lt;br /&gt;
set timefmt &amp;quot;%Y-%m-%d_%H:%M:%S&amp;quot;&lt;br /&gt;
set xlabel &amp;quot; &amp;quot;&lt;br /&gt;
set title &#039;&amp;lt;L1&amp;gt;&#039;&lt;br /&gt;
&lt;br /&gt;
set yrange [0:1]&lt;br /&gt;
set y2range [0:12]&lt;br /&gt;
set y3range [0:120]&lt;br /&gt;
&lt;br /&gt;
set ylabel &amp;quot;Mbit/s&amp;quot;&lt;br /&gt;
set y2label &amp;quot;Mbit/s&amp;quot;&lt;br /&gt;
set y3label &amp;quot;ms&amp;quot;&lt;br /&gt;
&lt;br /&gt;
#myDbLog &amp;lt;SPEC1&amp;gt;:download:::$val=~s/([\d.]*).*/$1/eg&lt;br /&gt;
#myDbLog &amp;lt;SPEC1&amp;gt;:upload:::$val=~s/([\d.]*).*/$1/eg&lt;br /&gt;
#myDbLog &amp;lt;SPEC1&amp;gt;:ping:::$val=~s/([\d.]*).*/$1/eg&lt;br /&gt;
&lt;br /&gt;
plot&lt;br /&gt;
     using 1:2 ls l0 axes x1y2 title &#039;download (Mbit/s)&#039; with lines,&lt;br /&gt;
     using 1:2 ls l1 axes x1y1 title &#039;upload (Mbit/s)&#039; with lines,&lt;br /&gt;
     using 1:2 ls l2 axes x1y3 title &#039;ping (ms)&#039; with lines&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Bekannte Probleme ==&lt;br /&gt;
* Für den Betrieb ist Python notwendig. Daher läuft das Script nicht ohne Weiteres auf einer Fritzbox.&lt;br /&gt;
* Vor ein paar Tagen (28.02.2015) gab es ein paar Fehlermeldungen, die sich nach der Aktualisierung des Scripts aber bislang wieder erübrigt haben.&lt;br /&gt;
* Zwischenzeitlich wurde das Script umbenannt. Das Modul erwartet nach wie vor den ursprünglichen Namen. Daher ist wie oben beschrieben darauf zu achten, dass das abgelegte Script &amp;lt;code&amp;gt;speedtest-cli&amp;lt;/code&amp;gt; heißt und zur Not dahingehend umbenannt wird.&lt;br /&gt;
* Das Modul bricht ggf. mit einer Perl-Fehlermeldung im Fhem-Log ab, obwohl das Script &amp;lt;code&amp;gt;speedtest-cli&amp;lt;/code&amp;gt; von der Konsole aus einwandfrei läuft. Dies tritt z.B. bei Verwendung von Rasbian mit installierten Pyhton2.7 und Pyhton3 auf. Zur Behebung muss im Script &amp;lt;code&amp;gt;speedtest-cli&amp;lt;/code&amp;gt; die erste Zeile auf &amp;lt;code&amp;gt;#!/usr/bin/env python&#039;&#039;&#039;3&#039;&#039;&#039;&amp;lt;/code&amp;gt; geändert werden.&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
Im Folgenden sind ein paar Ansatzpunkte genannt, um beim Troubleshooting zu unterstützen.&lt;br /&gt;
&lt;br /&gt;
; Läuft das Script beim Aufruf auf der Kommandozeile?&lt;br /&gt;
* Es könnte am fehlenden oder einer falschen Version von Python liegen.&lt;br /&gt;
* Ist das Script ausführbar?&lt;br /&gt;
* Hat man selbst bzw. die FHEM-Instanz ausreichend Berechtigungen, das Script auszuführen?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
; Ist das Log frei von Fehlermeldungen?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
; Werden im Modul Readings angezeigt?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
; Kommen die Readings im Log (Filelog oder DbLog) an?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
; Ist die Definition von SVG korrekt?&lt;br /&gt;
* Richtiger Verweis auf Filelog oder DbLog&lt;br /&gt;
* Angabe des richtigen gplot-Files&lt;br /&gt;
* Übergabe der Plotfunktion (bei DbLog)&lt;br /&gt;
* Die der Syntax korrekt (case sensitive)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
; Ist der Inhalt des gplot-Files korrekt&lt;br /&gt;
* Ist die Definition der Quelle korrekt (Filelog, DbLog oder LogProxy)?&lt;br /&gt;
* Ist die Regexpr korrekt?&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
; Fehlermeldung &amp;quot;isn&#039;t numeric in sprintf at ./FHEM/98_SVG.pm&amp;quot;&lt;br /&gt;
* Dieses kommt grundsätzlich immer dann vor, wenn SVG versucht einen Wert einzulesen, der neben der Zahl auch die Einheit enthält. Dieses kann bei der Verwendung von DbLog (DbLog ist nicht bekannt, wo es bei dem geloggten Modul die Einheit abtrennen soll) oder addlog vorkommen. Abhilfe liefert eine entsprechende Regexpr, die nur den Zahlenwert verwendet.&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* Beschreibung des Scripts [http://binarynature.blogspot.de/2013/03/measure-internet-connection-speed-from-linux-command-line.html binarynature.blogspot.de]&lt;br /&gt;
* Quelle des Scripts [https://pypi.python.org/pypi/speedtest-cli pypi.python.org]&lt;br /&gt;
* Quelle des Scripts [https://github.com/sivel/speedtest-cli github.com]&lt;br /&gt;
* Forumseintrag über die Entwicklung des Moduls [http://forum.fhem.de/index.php/topic,13419.msg83189.html#msg83189 Thema: Internetgeschwindigkeit überwachen]&lt;br /&gt;
* Forumseintrag darüber, dass das Binary nicht auf der Fritzbox läuft [http://forum.fhem.de/index.php/topic,27242.msg201516.html#msg201516 Thema: Internetgeschwindigkeit - speedtest]&lt;br /&gt;
* Forumseintrag über aus der Idee wird ein Modul [http://forum.fhem.de/index.php/topic,13483.msg83538.html#msg83538 Thema: Internetgeschwindigkeit überwachen]&lt;br /&gt;
&lt;br /&gt;
== sonstiges ==&lt;br /&gt;
Besten Dank an wkarl, Puschel74, justme1968 für Idee, Modulerstellung/Pflege und Installationsanleitung.&lt;/div&gt;</summary>
		<author><name>Netbus</name></author>
	</entry>
	<entry>
		<id>http://wiki.fhem.de/w/index.php?title=Homebridge_einrichten&amp;diff=12867</id>
		<title>Homebridge einrichten</title>
		<link rel="alternate" type="text/html" href="http://wiki.fhem.de/w/index.php?title=Homebridge_einrichten&amp;diff=12867"/>
		<updated>2015-11-11T11:11:43Z</updated>

		<summary type="html">&lt;p&gt;Netbus: /* Homebridge automatisch starten */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dieses HOWTO zeigt die Installation und Erstinbetriebnahme von Homebridge. &lt;br /&gt;
&lt;br /&gt;
Damit kann Siri benutzt werden, um FHEM-Devices zu steuern. So können Devices angesprochen werden, die offiziell HomeKit nicht unterstützen (die Vorgehensweise wurde auf einem Intel NUC mit Ubuntu Server 14.04 LTS und auf einem Raspberry Pi mit Raspian getestet).&lt;br /&gt;
&lt;br /&gt;
Um Homebridge erfolgreich zu installieren, müssen zunächst NPM, NodeJS, Python, g++, MDNS, sowie benötigte Hilfspakete installiert werden:&lt;br /&gt;
&lt;br /&gt;
Der WIKI-Eintrag bezieht sich hauptsächlich auf diese {{Link2Forum|Topic=32652|LinkText=Diskussion im FHEM-Forum}}. Ein Riesendank gilt vor allem {{Link2FU|430|Andre (justme1968)}}.&lt;br /&gt;
&lt;br /&gt;
Eine Sammlung funktionsfähiger Homebridge FHEM Konfiguration können hier gefunden werden http://www.fhemwiki.de/wiki/Hombridge_User_Configs&lt;br /&gt;
Die Sammlung befindet sich noch im Aufbau&lt;br /&gt;
&lt;br /&gt;
== NodeJS installieren ==&lt;br /&gt;
In der Konsole folgende Befehle eingeben:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get upgrade&lt;br /&gt;
sudo apt-get install build-essential libssl-dev&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
UPDATE: Homebridge funktioniert mit einer kleinen Einschränkung nun auch mit node 4.0.0. Laut&lt;br /&gt;
[https://github.com/cflurin/homebridge-shims/wiki/Minimalist-Homebridge-on-a-Raspberry-Pi Homebridge on a Raspberry Pi] müssen die folgenden Abhängigkeiten (Dependencies) aus der &#039;&#039;&#039;package.json&#039;&#039;&#039; entfernt werden:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;quot;harmonyhubjs-client&amp;quot;: &amp;quot;^1.1.4&amp;quot;,&lt;br /&gt;
&amp;quot;harmonyhubjs-discover&amp;quot;: &amp;quot;git+https://github.com/swissmanu/harmonyhubjs-discover.git&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Damit es auf einem Raspberry schneller läuft wird darüber hinaus empfohlen auch diese Abhängigkeiten aus der &#039;&#039;&#039;package.json&#039;&#039;&#039; zu entfernen:&lt;br /&gt;
&lt;br /&gt;
Vorher noch ein ein Backup der Datei anlegen &lt;br /&gt;
&amp;lt;pre&amp;gt;cp package.json package.json.bkp oder sudo cp package.json package.json.bkp &amp;lt;/pre&amp;gt;&lt;br /&gt;
Am einfachsten geht das entfernen der Zeilen mit dem Editor vi.&lt;br /&gt;
&amp;lt;!-- Bist Du sicher, dass &amp;quot;vi&amp;quot; das Einfachste ist? Ist nicht auf vielen Linux Systemen &lt;br /&gt;
     mittlerweile auch der &amp;quot;nano&amp;quot; Editor drauf? Der dürfte eigentlich !noch! einfacher sein.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;vi package.json oder sudo vi package.json&amp;lt;/pre&amp;gt;&lt;br /&gt;
Mit dem Cursor vor die entsprechende Zeile gehen und mit zwei mal Taste d (dd tippen) wird die Zeile gelöscht.&lt;br /&gt;
&lt;br /&gt;
Eventuell muss vi mit sudo vi aufgerufen werden, je nach verwendeter Distribution.&lt;br /&gt;
&lt;br /&gt;
Gespeichert wird dann mit folgendem Ablauf: ESC :wq! Enter&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;quot;ad2usb&amp;quot;: &amp;quot;git+https://github.com/alistairg/node-ad2usb.git#local&amp;quot;,&lt;br /&gt;
&amp;quot;carwingsjs&amp;quot;: &amp;quot;0.0.x&amp;quot;,&lt;br /&gt;
&amp;quot;chokidar&amp;quot;: &amp;quot;^1.0.5&amp;quot;,&lt;br /&gt;
&amp;quot;eibd&amp;quot;: &amp;quot;^0.3.1&amp;quot;,&lt;br /&gt;
&amp;quot;elkington&amp;quot;: &amp;quot;kevinohara80/elkington&amp;quot;,&lt;br /&gt;
&amp;quot;harmonyhubjs-client&amp;quot;: &amp;quot;^1.1.4&amp;quot;,&lt;br /&gt;
&amp;quot;harmonyhubjs-discover&amp;quot;: &amp;quot;git+https://github.com/swissmanu/harmonyhubjs-discover.git&amp;quot;,&lt;br /&gt;
&amp;quot;lifx-api&amp;quot;: &amp;quot;^1.0.1&amp;quot;,&lt;br /&gt;
&amp;quot;lifx&amp;quot;: &amp;quot;git+https://github.com/magicmonkey/lifxjs.git&amp;quot;,&lt;br /&gt;
&amp;quot;node-hue-api&amp;quot;: &amp;quot;^1.0.5&amp;quot;,&lt;br /&gt;
&amp;quot;node-icontrol&amp;quot;: &amp;quot;^0.1.4&amp;quot;,&lt;br /&gt;
&amp;quot;node-milight-promise&amp;quot;: &amp;quot;0.0.x&amp;quot;,&lt;br /&gt;
&amp;quot;tough-cookie&amp;quot;: &amp;quot;^2.0.0&amp;quot;,&lt;br /&gt;
&amp;quot;sonos&amp;quot;: &amp;quot;0.8.x&amp;quot;,&lt;br /&gt;
&amp;quot;telldus-live&amp;quot;: &amp;quot;0.2.x&amp;quot;,&lt;br /&gt;
&amp;quot;teslams&amp;quot;: &amp;quot;1.0.1&amp;quot;,&lt;br /&gt;
&amp;quot;unofficial-nest-api&amp;quot;: &amp;quot;git+https://github.com/hachidorii/unofficial_nodejs_nest.git#d8d48edc952b049ff6320ef99afa7b2f04cdee98&amp;quot;,&lt;br /&gt;
&amp;quot;wemo&amp;quot;: &amp;quot;0.2.x&amp;quot;,&lt;br /&gt;
&amp;quot;wink-js&amp;quot;: &amp;quot;0.0.5&amp;quot;,&lt;br /&gt;
&amp;quot;komponist&amp;quot; : &amp;quot;0.1.0&amp;quot;,&lt;br /&gt;
&amp;quot;yamaha-nodejs&amp;quot;: &amp;quot;0.4.x&amp;quot;,&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Das Konfig file sollte dann wie folgt aussehen: Achtung vor den letzten zwei } am Ende dar kein Komma sein.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;name&amp;quot;: &amp;quot;homebridge&amp;quot;,&lt;br /&gt;
  &amp;quot;description&amp;quot;: &amp;quot;HomeKit support for the impatient&amp;quot;,&lt;br /&gt;
  &amp;quot;version&amp;quot;: &amp;quot;0.1.1&amp;quot;,&lt;br /&gt;
  &amp;quot;scripts&amp;quot;: {&lt;br /&gt;
    &amp;quot;start&amp;quot;: &amp;quot;DEBUG=* node app.js || true&amp;quot;&lt;br /&gt;
  },&lt;br /&gt;
  &amp;quot;repository&amp;quot;: {&lt;br /&gt;
    &amp;quot;type&amp;quot;: &amp;quot;git&amp;quot;,&lt;br /&gt;
    &amp;quot;url&amp;quot;: &amp;quot;git://github.com/nfarina/homebridge.git&amp;quot;&lt;br /&gt;
  },&lt;br /&gt;
  &amp;quot;license&amp;quot;: &amp;quot;ISC&amp;quot;,&lt;br /&gt;
  &amp;quot;dependencies&amp;quot;: {&lt;br /&gt;
    &amp;quot;async&amp;quot;: &amp;quot;^1.4.2&amp;quot;,&lt;br /&gt;
    &amp;quot;color&amp;quot;: &amp;quot;0.10.x&amp;quot;,&lt;br /&gt;
    &amp;quot;debug&amp;quot;: &amp;quot;^2.2.0&amp;quot;,&lt;br /&gt;
    &amp;quot;hap-nodejs&amp;quot;: &amp;quot;^0.0.2&amp;quot;,&lt;br /&gt;
    &amp;quot;isy-js&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
    &amp;quot;mdns&amp;quot;: &amp;quot;^2.2.4&amp;quot;,&lt;br /&gt;
    &amp;quot;netatmo&amp;quot;: &amp;quot;1.3.0&amp;quot;,&lt;br /&gt;
    &amp;quot;node-cache&amp;quot;: &amp;quot;3.0.0&amp;quot;,&lt;br /&gt;
    &amp;quot;node-persist&amp;quot;: &amp;quot;0.0.x&amp;quot;,&lt;br /&gt;
    &amp;quot;node-xmpp-client&amp;quot;: &amp;quot;1.0.0-alpha23&amp;quot;,&lt;br /&gt;
    &amp;quot;q&amp;quot;: &amp;quot;1.4.x&amp;quot;,&lt;br /&gt;
    &amp;quot;queue&amp;quot;: &amp;quot;^3.1.0&amp;quot;,&lt;br /&gt;
    &amp;quot;request&amp;quot;: &amp;quot;2.49.x&amp;quot;,&lt;br /&gt;
    &amp;quot;xml2js&amp;quot;: &amp;quot;0.4.x&amp;quot;,&lt;br /&gt;
    &amp;quot;xmldoc&amp;quot;: &amp;quot;0.1.x&amp;quot;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Python, g++, MDNS installieren ==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
sudo apt-get install python&lt;br /&gt;
sudo apt-get install g++&lt;br /&gt;
sudo apt-get install libavahi-compat-libdnssd-dev&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Homebridge installieren ==&lt;br /&gt;
Die aktuelle Homebridge version wird mit&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
npm install -g homebridge&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
installiert, der FHEM platform shim mit&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;width:60%;&amp;quot;&amp;gt;&lt;br /&gt;
npm install -g https://github.com/justme-1968/homebridge-fhem.git&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== ERR während der Installation ==&lt;br /&gt;
Bei folgendem Fehler ist das abrufen von Github nicht möglich.&lt;br /&gt;
&amp;lt;pre&amp;gt;npm ERR! git clone --template=/home/hs-server-admin/.npm/_git-remotes/_templates --mirror &lt;br /&gt;
git://github.com/KhaosT/ed25519.git /home/hs-server-admin/.npm/_git-remotes/git-github-com-KhaosT-ed25519-git-d8bdee1d: &lt;br /&gt;
github.com[0: 192.30.252.128]: errno=Die Wartezeit für die Verbindung ist abgelaufen&amp;lt;/pre&amp;gt;&lt;br /&gt;
Fehlerursache konnte hier durch eine aktive Firewall verursacht werden.&lt;br /&gt;
&lt;br /&gt;
== Homebridge konfigurieren ==&lt;br /&gt;
Im Verzeichnis ~/.homebridge/ muss nun noch die config.json erstellt bzw. angepasst werden:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
nano config.json&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Homebridge muss nicht, kann aber auf dem selben Server laufen wie FHEM. &lt;br /&gt;
&lt;br /&gt;
Unter &amp;quot;server&amp;quot; muss die IP des FHEM-Servers und unter &amp;quot;port&amp;quot; der benutzte Port des benutzten FHEMWEBS eingetragen werden.&lt;br /&gt;
&lt;br /&gt;
Läuft der Homebridge Server auf dem gleichen Rechner wie FHEM, kann die IP 127.0.0.1 benutzt werden.&lt;br /&gt;
&lt;br /&gt;
WICHTIG: Damit nicht alle Devices von Homebridge berücksichtig werden, bietet es sich an, die Devices zu filtern. &lt;br /&gt;
&lt;br /&gt;
In diesem Beispiel wurden alle Devices, die über Siri steuerbar sein sollen zusätzlich in den ROOM Homekit per FHEM eingerichtet. &lt;br /&gt;
&lt;br /&gt;
Der PIN kann beliebig in dem Format xxx-xx-xxx angepasst werden. Dieser muss nur einmal bei der Einrichtung in iOS eingegeben werden.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
    &amp;quot;bridge&amp;quot;: {&lt;br /&gt;
        &amp;quot;name&amp;quot;: &amp;quot;Homebridge&amp;quot;,&lt;br /&gt;
        &amp;quot;username&amp;quot;: &amp;quot;CC:22:3D:E3:CE:30&amp;quot;,&lt;br /&gt;
        &amp;quot;port&amp;quot;: 51826,&lt;br /&gt;
        &amp;quot;pin&amp;quot;: &amp;quot;031-45-154&amp;quot;&lt;br /&gt;
    },&lt;br /&gt;
&lt;br /&gt;
    &amp;quot;platforms&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;platform&amp;quot;: &amp;quot;FHEM&amp;quot;,&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;FHEM&amp;quot;,&lt;br /&gt;
            &amp;quot;server&amp;quot;: &amp;quot;192.168.xxx.xxx&amp;quot;,&lt;br /&gt;
            &amp;quot;port&amp;quot;: &amp;quot;8083&amp;quot;,&lt;br /&gt;
            &amp;quot;filter&amp;quot;: &amp;quot;room=Homekit&amp;quot;,&lt;br /&gt;
            &amp;quot;auth&amp;quot;: {&amp;quot;user&amp;quot;: &amp;quot;FhemUser&amp;quot;, &amp;quot;pass&amp;quot;: &amp;quot;XXX&amp;quot;}&lt;br /&gt;
        }&lt;br /&gt;
     ],&lt;br /&gt;
&lt;br /&gt;
    &amp;quot;accessories&amp;quot;: []&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Achtung: Für ein FHEM Web Interface mit SSL Zertifikat muss die config wo folgt aussehen:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
    &amp;quot;bridge&amp;quot;: {&lt;br /&gt;
        &amp;quot;name&amp;quot;: &amp;quot;Homebridge&amp;quot;,&lt;br /&gt;
        &amp;quot;username&amp;quot;: &amp;quot;CC:22:3D:E3:CE:30&amp;quot;,&lt;br /&gt;
        &amp;quot;port&amp;quot;: 51826,&lt;br /&gt;
        &amp;quot;pin&amp;quot;: &amp;quot;031-45-154&amp;quot;&lt;br /&gt;
    },&lt;br /&gt;
&lt;br /&gt;
    &amp;quot;platforms&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;platform&amp;quot;: &amp;quot;FHEM&amp;quot;,&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;FHEM&amp;quot;,&lt;br /&gt;
            &amp;quot;server&amp;quot;: &amp;quot;192.168.xxx.xxx&amp;quot;,&lt;br /&gt;
            &amp;quot;port&amp;quot;: &amp;quot;8083&amp;quot;,&lt;br /&gt;
            &amp;quot;filter&amp;quot;: &amp;quot;room=Homekit&amp;quot;,&lt;br /&gt;
            &amp;quot;ssl&amp;quot;: &amp;quot;true&amp;quot;,&lt;br /&gt;
            &amp;quot;auth&amp;quot;: {&amp;quot;user&amp;quot;: &amp;quot;FhemUser&amp;quot;, &amp;quot;pass&amp;quot;: &amp;quot;XXX&amp;quot;}&lt;br /&gt;
        }&lt;br /&gt;
     ],&lt;br /&gt;
&lt;br /&gt;
    &amp;quot;accessories&amp;quot;: []&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== FHEM konfigurieren ==&lt;br /&gt;
Um die Device richtig mit FHEM und Homebridge vertraut zu machen, müssen wir noch unter global etwas ergänzen:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;perl&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
attr global userattr genericDeviceType:ignore,switch,outlet,light,blind,speaker,thermostat,ignore,lock,window,contact&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Einfach folgende Zeilen an die bestehenden Attribute anhängen:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;perl&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
genericDeviceType:ignore,switch,outlet,light,blind,speaker,thermostat,ignore,lock,window,contact&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Diese Einstellungen können auch bei den Einzelnen Devices gemacht werden.&lt;br /&gt;
Beispiel bei einem HM-CC-RT-DN, hier wird der subType thermostat gesetzt.&lt;br /&gt;
Einfach in das Device gehen hier das Attr subtype erstellen und thermostat auswählen.&lt;br /&gt;
&lt;br /&gt;
== Homebridge starten ==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
homebridge&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Hombridge sollte nun laufen.&lt;br /&gt;
Hier kann man die Kommunikation nachverfolgen.&lt;br /&gt;
Abbrechen kann das ganze mit ctrl +c.&lt;br /&gt;
Es sind keine Befehle mehr mit Siri möglich.&lt;br /&gt;
&lt;br /&gt;
Damit Siri auch Befehle ohne ständig offenes Terminal bearbeiten kann, bitten nächsten Punkt beachten.&lt;br /&gt;
&lt;br /&gt;
== Homebridge automatisch starten ==&lt;br /&gt;
Eine Anleitung um die Homebridge automatisch zu starten findet sich &lt;br /&gt;
&lt;br /&gt;
* hier: [https://github.com/nfarina/homebridge/wiki/Running-HomeBridge-on-a-Raspberry-Pi] oder&lt;br /&gt;
* [http://www.meintechblog.de/2015/10/mit-siri-und-fhem-das-gesamte-smart-home-per-stimme-steuern/]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;Beide Links sind obsoloet da es die app.js nicht mehr gibt&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;Alternative Methode&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
sudo nano /etc/init.d/homebridge&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Code einfügen und ggf. den Pfad zu &amp;quot;.homebridge&amp;quot; anpassen&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=bash&amp;gt;&lt;br /&gt;
#!/bin/sh&lt;br /&gt;
### BEGIN INIT INFO&lt;br /&gt;
# Provides: homebridge&lt;br /&gt;
# Required-Start: $network $remote_fs $syslog&lt;br /&gt;
# Required-Stop: $remote_fs $syslog&lt;br /&gt;
# Default-Start: 2 3 4 5&lt;br /&gt;
# Default-Stop: 0 1 6&lt;br /&gt;
# Short-Description: Start daemon at boot time for homebridge&lt;br /&gt;
# Description: Enable service provided by daemon.&lt;br /&gt;
### END INIT INFO&lt;br /&gt;
export PATH=$PATH:/usr/local/bin&lt;br /&gt;
export NODE_PATH=$NODE_PATH:/usr/local/lib/node_modules&lt;br /&gt;
PID=`pidof homebridge`&lt;br /&gt;
case &amp;quot;$1&amp;quot; in&lt;br /&gt;
start)&lt;br /&gt;
if ps -p $PID &amp;gt; /dev/null 2&amp;gt;&amp;amp;1; then&lt;br /&gt;
        echo &amp;quot;Homebridge is already running&amp;quot;&lt;br /&gt;
else&lt;br /&gt;
        homebridge -U /home/pi/.homebridge/ &amp;gt; /dev/null 2&amp;gt;&amp;amp;1 &amp;amp;&lt;br /&gt;
        echo &amp;quot;Homebridge starting&amp;quot;&lt;br /&gt;
fi&lt;br /&gt;
;;&lt;br /&gt;
stop)&lt;br /&gt;
if ! ps -p $PID &amp;gt; /dev/null 2&amp;gt;&amp;amp;1; then&lt;br /&gt;
        echo &amp;quot;Homebridge is not running&amp;quot;&lt;br /&gt;
else&lt;br /&gt;
        kill $PID&lt;br /&gt;
        echo &amp;quot;Homebridge closed&amp;quot;&lt;br /&gt;
fi&lt;br /&gt;
;;&lt;br /&gt;
restart)&lt;br /&gt;
if ! ps -p $PID &amp;gt; /dev/null 2&amp;gt;&amp;amp;1; then&lt;br /&gt;
        homebridge -U /home/pi/.homebridge/ &amp;gt; /dev/null 2&amp;gt;&amp;amp;1 &amp;amp;&lt;br /&gt;
        echo &amp;quot;Homebridge starting&amp;quot;&lt;br /&gt;
else&lt;br /&gt;
        kill $PID&lt;br /&gt;
        echo &amp;quot;Homebridge closed&amp;quot;&lt;br /&gt;
        homebridge -U /home/pi/.homebridge/ &amp;gt; /dev/null 2&amp;gt;&amp;amp;1 &amp;amp;&lt;br /&gt;
        echo &amp;quot;Homebridge starting&amp;quot;&lt;br /&gt;
fi&lt;br /&gt;
;;&lt;br /&gt;
status)&lt;br /&gt;
if ps -p $PID &amp;gt; /dev/null 2&amp;gt;&amp;amp;1; then&lt;br /&gt;
        echo &amp;quot;Homebridge is running PID $PID&amp;quot;&lt;br /&gt;
else&lt;br /&gt;
        echo &amp;quot;Homebridge is not running&amp;quot;&lt;br /&gt;
fi&lt;br /&gt;
;;&lt;br /&gt;
*)&lt;br /&gt;
echo &amp;quot;Usage: /etc/init.d/homebridge {start|stop|status|restart}&amp;quot;&lt;br /&gt;
exit 1&lt;br /&gt;
;;&lt;br /&gt;
esac&lt;br /&gt;
exit 0&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Autostart aktivieren&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
sudo chmod 755 /etc/init.d/homebridge&lt;br /&gt;
&lt;br /&gt;
sudo update-rc.d homebridge defaults&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nun kann man mit &lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
sudo service homebridge start&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
bzw.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
sudo /etc/init.d/homebridge start&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
den Dienst starten&lt;br /&gt;
&lt;br /&gt;
== FHEM Device Einstellungen ==&lt;br /&gt;
Damit die zu schaltenden Geräte überhaupt in der Homebridge aufgenommen werden muss man sie im Raum Homekit hinzufügen.&lt;br /&gt;
&lt;br /&gt;
Um HM-CC-RT-DN Thermostate steuern zu können, muss folgendes attribute gesetzt werden&lt;br /&gt;
# attr Heizung Subtype thermostat&lt;br /&gt;
Für einen Dummy muss man folgendes machen.&lt;br /&gt;
# attr Dummy genericDeviceType switch&lt;br /&gt;
# attr Dummy setList on off&lt;br /&gt;
&lt;br /&gt;
== HomeKit in iOS einrichten ==&lt;br /&gt;
Um FHEM über Homebridge in iOS nutzen zu können, muss HomeKit eingerichtet werden. &lt;br /&gt;
&lt;br /&gt;
Es gibt verschiedene Apps. Im folgenden wird die App EVE von Elgato empfohlen, die aus dem App-Store geladen werden muss.&lt;br /&gt;
In der App auf:&lt;br /&gt;
&amp;lt;pre style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
Gerät hinzufügen&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Es sollte ein Gerät mit der Bezeichnung &amp;quot;Homebridge&amp;quot; zur Auswahl erscheinen. Zur Ersteinrichtung auf PIN manuell eingeben gehen und (falls in der config.json nicht geändert):&lt;br /&gt;
&amp;lt;pre style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
031-45-154&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
eingeben.&lt;br /&gt;
&lt;br /&gt;
Im Anschluss können die Devices nach Belieben in verschiedene Räume zugeteilt werden, sowie Szenen und Bereiche erstellt werden.&lt;br /&gt;
&lt;br /&gt;
== HomeBridge Allgemein ==&lt;br /&gt;
Nach allen Änderungen die in FHEM gemacht werden, welche Homebridge betreffen, muss Homebridge neu gestartet werden.&lt;br /&gt;
&lt;br /&gt;
Der Neustart ist abhängig davon, wie man Homebridge gestartet hat.&lt;br /&gt;
&lt;br /&gt;
Bitte den entsprechenden Methoden entnehmen.&lt;br /&gt;
&lt;br /&gt;
== Steuerung von MiLight Allgemein ==&lt;br /&gt;
Wie hier im Forum http://forum.fhem.de/index.php/topic,32652.msg351706.html#msg351706 erwähnt, ist es möglich auch MiLight gGeräte per Siri anzusprechen.&lt;br /&gt;
Hierzu muss die config.jason angepasst werden.&lt;br /&gt;
&lt;br /&gt;
1. Es muss die Bridge hinterlegt werden. Beispiel&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;platform&amp;quot;: &amp;quot;MiLight&amp;quot;,&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;MiLight&amp;quot;,&lt;br /&gt;
            &amp;quot;ip_address&amp;quot;: &amp;quot;192.168.001.033&amp;quot;,&lt;br /&gt;
            &amp;quot;port&amp;quot;: 8899,&lt;br /&gt;
            &amp;quot;type&amp;quot;: &amp;quot;rgbw&amp;quot;,&lt;br /&gt;
            &amp;quot;delay&amp;quot;: 30,&lt;br /&gt;
            &amp;quot;repeat&amp;quot;: 3,&lt;br /&gt;
            &amp;quot;zones&amp;quot;:[&amp;quot;Wohnzimmer Lampen&amp;quot;,&amp;quot;Badezimmer Lampen&amp;quot;,&amp;quot;Büro Lampen&amp;quot;,&amp;quot;Keller Lampen&amp;quot;]&lt;br /&gt;
        },&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Es muss für jedes zu Steuernde Gerät ein Dummy angelegt werden. Beispiel:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;accessory&amp;quot;: &amp;quot;Http&amp;quot;,&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;Kitchen Lamp&amp;quot;,&lt;br /&gt;
            &amp;quot;on_url&amp;quot;: &amp;quot;https://192.168.1.22:3030/devices/23222/on&amp;quot;,&lt;br /&gt;
            &amp;quot;off_url&amp;quot;: &amp;quot;https://192.168.1.22:3030/devices/23222/off&amp;quot;,&lt;br /&gt;
            &amp;quot;brightness_url&amp;quot;: &amp;quot;https://192.168.1.22:3030/devices/23222/brightness/%b&amp;quot;,&lt;br /&gt;
            &amp;quot;http_method&amp;quot;: &amp;quot;POST&amp;quot;&lt;br /&gt;
        },&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Schalten mit Siri ==&lt;br /&gt;
&#039;&#039;&#039;HolyMoly&#039;&#039;&#039; aus dem FHEM-Forum hat ein paar Beispiele gegeben, wie man Siri dazu bringt Devices zu schalten:&lt;br /&gt;
&amp;lt;pre style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;quot;Schalte alle Lampen im Obergeschoss ein.&amp;quot;&lt;br /&gt;
&amp;quot;Schalte Chloes Licht aus.&amp;quot;&lt;br /&gt;
&amp;quot;Dimme das Licht in der Küche.&amp;quot;&lt;br /&gt;
&amp;quot;Dimme das Licht im Esszimmer auf 50 %.&amp;quot;&lt;br /&gt;
&amp;quot;Stelle das Licht in der Küche am hellsten ein.&amp;quot;&lt;br /&gt;
&amp;quot;Stelle die Temperatur im Tahoe-Haus auf 22 °C ein.&amp;quot;&lt;br /&gt;
&amp;quot;Stelle das Thermostat im Erdgeschoss auf 21 °C ein.&lt;br /&gt;
&amp;quot;Schalte den Drucker im Büro ein.&amp;quot;&lt;br /&gt;
&amp;quot;Siri, bereite alles für eine Party vor.&amp;quot;&lt;br /&gt;
&amp;quot;Bereite das Ambiente fürs Abendessen vor.&amp;quot;&lt;br /&gt;
&amp;quot;Aktiviere den Nachtruhemodus.&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mittlerweile kann Siri auch noch die Lichtfarbe von LEDs ändern.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Unterstütze Devices ==&lt;br /&gt;
Das Fhem Plugin von {{Link2FU|430|Andre (justme1968)}} unterstützt folgende Geräte&lt;br /&gt;
&lt;br /&gt;
    switches (devices with set on and set off commands)&lt;br /&gt;
    lights (devices with set on and set off commands)&lt;br /&gt;
    homematc and FS20 dimmers (devices with set on, set off and set dim or set pct commands)&lt;br /&gt;
    HUE, WifiLight, SWAP_0000002200000003 (hue, sat, bri, rgb)&lt;br /&gt;
    homematic, max and pid20 thermostats&lt;br /&gt;
    homematic blinds&lt;br /&gt;
    hommatic, MAX and FHTTK contact sensors (door, window)&lt;br /&gt;
    HM-SEC-WIN, HM-SEC-KEY&lt;br /&gt;
    presence, ROOMMATE&lt;br /&gt;
    SONOS (power, volume)&lt;br /&gt;
    harmony scenes&lt;br /&gt;
    temperaturecw and humidity sensors&lt;br /&gt;
    CO20 air quality sensor&lt;br /&gt;
    probably some more ...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:HOWTOS]]&lt;/div&gt;</summary>
		<author><name>Netbus</name></author>
	</entry>
	<entry>
		<id>http://wiki.fhem.de/w/index.php?title=Homebridge_einrichten&amp;diff=12866</id>
		<title>Homebridge einrichten</title>
		<link rel="alternate" type="text/html" href="http://wiki.fhem.de/w/index.php?title=Homebridge_einrichten&amp;diff=12866"/>
		<updated>2015-11-11T11:11:28Z</updated>

		<summary type="html">&lt;p&gt;Netbus: /* Homebridge automatisch starten */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dieses HOWTO zeigt die Installation und Erstinbetriebnahme von Homebridge. &lt;br /&gt;
&lt;br /&gt;
Damit kann Siri benutzt werden, um FHEM-Devices zu steuern. So können Devices angesprochen werden, die offiziell HomeKit nicht unterstützen (die Vorgehensweise wurde auf einem Intel NUC mit Ubuntu Server 14.04 LTS und auf einem Raspberry Pi mit Raspian getestet).&lt;br /&gt;
&lt;br /&gt;
Um Homebridge erfolgreich zu installieren, müssen zunächst NPM, NodeJS, Python, g++, MDNS, sowie benötigte Hilfspakete installiert werden:&lt;br /&gt;
&lt;br /&gt;
Der WIKI-Eintrag bezieht sich hauptsächlich auf diese {{Link2Forum|Topic=32652|LinkText=Diskussion im FHEM-Forum}}. Ein Riesendank gilt vor allem {{Link2FU|430|Andre (justme1968)}}.&lt;br /&gt;
&lt;br /&gt;
Eine Sammlung funktionsfähiger Homebridge FHEM Konfiguration können hier gefunden werden http://www.fhemwiki.de/wiki/Hombridge_User_Configs&lt;br /&gt;
Die Sammlung befindet sich noch im Aufbau&lt;br /&gt;
&lt;br /&gt;
== NodeJS installieren ==&lt;br /&gt;
In der Konsole folgende Befehle eingeben:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get upgrade&lt;br /&gt;
sudo apt-get install build-essential libssl-dev&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
UPDATE: Homebridge funktioniert mit einer kleinen Einschränkung nun auch mit node 4.0.0. Laut&lt;br /&gt;
[https://github.com/cflurin/homebridge-shims/wiki/Minimalist-Homebridge-on-a-Raspberry-Pi Homebridge on a Raspberry Pi] müssen die folgenden Abhängigkeiten (Dependencies) aus der &#039;&#039;&#039;package.json&#039;&#039;&#039; entfernt werden:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;quot;harmonyhubjs-client&amp;quot;: &amp;quot;^1.1.4&amp;quot;,&lt;br /&gt;
&amp;quot;harmonyhubjs-discover&amp;quot;: &amp;quot;git+https://github.com/swissmanu/harmonyhubjs-discover.git&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Damit es auf einem Raspberry schneller läuft wird darüber hinaus empfohlen auch diese Abhängigkeiten aus der &#039;&#039;&#039;package.json&#039;&#039;&#039; zu entfernen:&lt;br /&gt;
&lt;br /&gt;
Vorher noch ein ein Backup der Datei anlegen &lt;br /&gt;
&amp;lt;pre&amp;gt;cp package.json package.json.bkp oder sudo cp package.json package.json.bkp &amp;lt;/pre&amp;gt;&lt;br /&gt;
Am einfachsten geht das entfernen der Zeilen mit dem Editor vi.&lt;br /&gt;
&amp;lt;!-- Bist Du sicher, dass &amp;quot;vi&amp;quot; das Einfachste ist? Ist nicht auf vielen Linux Systemen &lt;br /&gt;
     mittlerweile auch der &amp;quot;nano&amp;quot; Editor drauf? Der dürfte eigentlich !noch! einfacher sein.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;vi package.json oder sudo vi package.json&amp;lt;/pre&amp;gt;&lt;br /&gt;
Mit dem Cursor vor die entsprechende Zeile gehen und mit zwei mal Taste d (dd tippen) wird die Zeile gelöscht.&lt;br /&gt;
&lt;br /&gt;
Eventuell muss vi mit sudo vi aufgerufen werden, je nach verwendeter Distribution.&lt;br /&gt;
&lt;br /&gt;
Gespeichert wird dann mit folgendem Ablauf: ESC :wq! Enter&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;quot;ad2usb&amp;quot;: &amp;quot;git+https://github.com/alistairg/node-ad2usb.git#local&amp;quot;,&lt;br /&gt;
&amp;quot;carwingsjs&amp;quot;: &amp;quot;0.0.x&amp;quot;,&lt;br /&gt;
&amp;quot;chokidar&amp;quot;: &amp;quot;^1.0.5&amp;quot;,&lt;br /&gt;
&amp;quot;eibd&amp;quot;: &amp;quot;^0.3.1&amp;quot;,&lt;br /&gt;
&amp;quot;elkington&amp;quot;: &amp;quot;kevinohara80/elkington&amp;quot;,&lt;br /&gt;
&amp;quot;harmonyhubjs-client&amp;quot;: &amp;quot;^1.1.4&amp;quot;,&lt;br /&gt;
&amp;quot;harmonyhubjs-discover&amp;quot;: &amp;quot;git+https://github.com/swissmanu/harmonyhubjs-discover.git&amp;quot;,&lt;br /&gt;
&amp;quot;lifx-api&amp;quot;: &amp;quot;^1.0.1&amp;quot;,&lt;br /&gt;
&amp;quot;lifx&amp;quot;: &amp;quot;git+https://github.com/magicmonkey/lifxjs.git&amp;quot;,&lt;br /&gt;
&amp;quot;node-hue-api&amp;quot;: &amp;quot;^1.0.5&amp;quot;,&lt;br /&gt;
&amp;quot;node-icontrol&amp;quot;: &amp;quot;^0.1.4&amp;quot;,&lt;br /&gt;
&amp;quot;node-milight-promise&amp;quot;: &amp;quot;0.0.x&amp;quot;,&lt;br /&gt;
&amp;quot;tough-cookie&amp;quot;: &amp;quot;^2.0.0&amp;quot;,&lt;br /&gt;
&amp;quot;sonos&amp;quot;: &amp;quot;0.8.x&amp;quot;,&lt;br /&gt;
&amp;quot;telldus-live&amp;quot;: &amp;quot;0.2.x&amp;quot;,&lt;br /&gt;
&amp;quot;teslams&amp;quot;: &amp;quot;1.0.1&amp;quot;,&lt;br /&gt;
&amp;quot;unofficial-nest-api&amp;quot;: &amp;quot;git+https://github.com/hachidorii/unofficial_nodejs_nest.git#d8d48edc952b049ff6320ef99afa7b2f04cdee98&amp;quot;,&lt;br /&gt;
&amp;quot;wemo&amp;quot;: &amp;quot;0.2.x&amp;quot;,&lt;br /&gt;
&amp;quot;wink-js&amp;quot;: &amp;quot;0.0.5&amp;quot;,&lt;br /&gt;
&amp;quot;komponist&amp;quot; : &amp;quot;0.1.0&amp;quot;,&lt;br /&gt;
&amp;quot;yamaha-nodejs&amp;quot;: &amp;quot;0.4.x&amp;quot;,&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Das Konfig file sollte dann wie folgt aussehen: Achtung vor den letzten zwei } am Ende dar kein Komma sein.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;name&amp;quot;: &amp;quot;homebridge&amp;quot;,&lt;br /&gt;
  &amp;quot;description&amp;quot;: &amp;quot;HomeKit support for the impatient&amp;quot;,&lt;br /&gt;
  &amp;quot;version&amp;quot;: &amp;quot;0.1.1&amp;quot;,&lt;br /&gt;
  &amp;quot;scripts&amp;quot;: {&lt;br /&gt;
    &amp;quot;start&amp;quot;: &amp;quot;DEBUG=* node app.js || true&amp;quot;&lt;br /&gt;
  },&lt;br /&gt;
  &amp;quot;repository&amp;quot;: {&lt;br /&gt;
    &amp;quot;type&amp;quot;: &amp;quot;git&amp;quot;,&lt;br /&gt;
    &amp;quot;url&amp;quot;: &amp;quot;git://github.com/nfarina/homebridge.git&amp;quot;&lt;br /&gt;
  },&lt;br /&gt;
  &amp;quot;license&amp;quot;: &amp;quot;ISC&amp;quot;,&lt;br /&gt;
  &amp;quot;dependencies&amp;quot;: {&lt;br /&gt;
    &amp;quot;async&amp;quot;: &amp;quot;^1.4.2&amp;quot;,&lt;br /&gt;
    &amp;quot;color&amp;quot;: &amp;quot;0.10.x&amp;quot;,&lt;br /&gt;
    &amp;quot;debug&amp;quot;: &amp;quot;^2.2.0&amp;quot;,&lt;br /&gt;
    &amp;quot;hap-nodejs&amp;quot;: &amp;quot;^0.0.2&amp;quot;,&lt;br /&gt;
    &amp;quot;isy-js&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
    &amp;quot;mdns&amp;quot;: &amp;quot;^2.2.4&amp;quot;,&lt;br /&gt;
    &amp;quot;netatmo&amp;quot;: &amp;quot;1.3.0&amp;quot;,&lt;br /&gt;
    &amp;quot;node-cache&amp;quot;: &amp;quot;3.0.0&amp;quot;,&lt;br /&gt;
    &amp;quot;node-persist&amp;quot;: &amp;quot;0.0.x&amp;quot;,&lt;br /&gt;
    &amp;quot;node-xmpp-client&amp;quot;: &amp;quot;1.0.0-alpha23&amp;quot;,&lt;br /&gt;
    &amp;quot;q&amp;quot;: &amp;quot;1.4.x&amp;quot;,&lt;br /&gt;
    &amp;quot;queue&amp;quot;: &amp;quot;^3.1.0&amp;quot;,&lt;br /&gt;
    &amp;quot;request&amp;quot;: &amp;quot;2.49.x&amp;quot;,&lt;br /&gt;
    &amp;quot;xml2js&amp;quot;: &amp;quot;0.4.x&amp;quot;,&lt;br /&gt;
    &amp;quot;xmldoc&amp;quot;: &amp;quot;0.1.x&amp;quot;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Python, g++, MDNS installieren ==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
sudo apt-get install python&lt;br /&gt;
sudo apt-get install g++&lt;br /&gt;
sudo apt-get install libavahi-compat-libdnssd-dev&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Homebridge installieren ==&lt;br /&gt;
Die aktuelle Homebridge version wird mit&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
npm install -g homebridge&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
installiert, der FHEM platform shim mit&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;width:60%;&amp;quot;&amp;gt;&lt;br /&gt;
npm install -g https://github.com/justme-1968/homebridge-fhem.git&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== ERR während der Installation ==&lt;br /&gt;
Bei folgendem Fehler ist das abrufen von Github nicht möglich.&lt;br /&gt;
&amp;lt;pre&amp;gt;npm ERR! git clone --template=/home/hs-server-admin/.npm/_git-remotes/_templates --mirror &lt;br /&gt;
git://github.com/KhaosT/ed25519.git /home/hs-server-admin/.npm/_git-remotes/git-github-com-KhaosT-ed25519-git-d8bdee1d: &lt;br /&gt;
github.com[0: 192.30.252.128]: errno=Die Wartezeit für die Verbindung ist abgelaufen&amp;lt;/pre&amp;gt;&lt;br /&gt;
Fehlerursache konnte hier durch eine aktive Firewall verursacht werden.&lt;br /&gt;
&lt;br /&gt;
== Homebridge konfigurieren ==&lt;br /&gt;
Im Verzeichnis ~/.homebridge/ muss nun noch die config.json erstellt bzw. angepasst werden:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
nano config.json&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Homebridge muss nicht, kann aber auf dem selben Server laufen wie FHEM. &lt;br /&gt;
&lt;br /&gt;
Unter &amp;quot;server&amp;quot; muss die IP des FHEM-Servers und unter &amp;quot;port&amp;quot; der benutzte Port des benutzten FHEMWEBS eingetragen werden.&lt;br /&gt;
&lt;br /&gt;
Läuft der Homebridge Server auf dem gleichen Rechner wie FHEM, kann die IP 127.0.0.1 benutzt werden.&lt;br /&gt;
&lt;br /&gt;
WICHTIG: Damit nicht alle Devices von Homebridge berücksichtig werden, bietet es sich an, die Devices zu filtern. &lt;br /&gt;
&lt;br /&gt;
In diesem Beispiel wurden alle Devices, die über Siri steuerbar sein sollen zusätzlich in den ROOM Homekit per FHEM eingerichtet. &lt;br /&gt;
&lt;br /&gt;
Der PIN kann beliebig in dem Format xxx-xx-xxx angepasst werden. Dieser muss nur einmal bei der Einrichtung in iOS eingegeben werden.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
    &amp;quot;bridge&amp;quot;: {&lt;br /&gt;
        &amp;quot;name&amp;quot;: &amp;quot;Homebridge&amp;quot;,&lt;br /&gt;
        &amp;quot;username&amp;quot;: &amp;quot;CC:22:3D:E3:CE:30&amp;quot;,&lt;br /&gt;
        &amp;quot;port&amp;quot;: 51826,&lt;br /&gt;
        &amp;quot;pin&amp;quot;: &amp;quot;031-45-154&amp;quot;&lt;br /&gt;
    },&lt;br /&gt;
&lt;br /&gt;
    &amp;quot;platforms&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;platform&amp;quot;: &amp;quot;FHEM&amp;quot;,&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;FHEM&amp;quot;,&lt;br /&gt;
            &amp;quot;server&amp;quot;: &amp;quot;192.168.xxx.xxx&amp;quot;,&lt;br /&gt;
            &amp;quot;port&amp;quot;: &amp;quot;8083&amp;quot;,&lt;br /&gt;
            &amp;quot;filter&amp;quot;: &amp;quot;room=Homekit&amp;quot;,&lt;br /&gt;
            &amp;quot;auth&amp;quot;: {&amp;quot;user&amp;quot;: &amp;quot;FhemUser&amp;quot;, &amp;quot;pass&amp;quot;: &amp;quot;XXX&amp;quot;}&lt;br /&gt;
        }&lt;br /&gt;
     ],&lt;br /&gt;
&lt;br /&gt;
    &amp;quot;accessories&amp;quot;: []&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Achtung: Für ein FHEM Web Interface mit SSL Zertifikat muss die config wo folgt aussehen:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
    &amp;quot;bridge&amp;quot;: {&lt;br /&gt;
        &amp;quot;name&amp;quot;: &amp;quot;Homebridge&amp;quot;,&lt;br /&gt;
        &amp;quot;username&amp;quot;: &amp;quot;CC:22:3D:E3:CE:30&amp;quot;,&lt;br /&gt;
        &amp;quot;port&amp;quot;: 51826,&lt;br /&gt;
        &amp;quot;pin&amp;quot;: &amp;quot;031-45-154&amp;quot;&lt;br /&gt;
    },&lt;br /&gt;
&lt;br /&gt;
    &amp;quot;platforms&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;platform&amp;quot;: &amp;quot;FHEM&amp;quot;,&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;FHEM&amp;quot;,&lt;br /&gt;
            &amp;quot;server&amp;quot;: &amp;quot;192.168.xxx.xxx&amp;quot;,&lt;br /&gt;
            &amp;quot;port&amp;quot;: &amp;quot;8083&amp;quot;,&lt;br /&gt;
            &amp;quot;filter&amp;quot;: &amp;quot;room=Homekit&amp;quot;,&lt;br /&gt;
            &amp;quot;ssl&amp;quot;: &amp;quot;true&amp;quot;,&lt;br /&gt;
            &amp;quot;auth&amp;quot;: {&amp;quot;user&amp;quot;: &amp;quot;FhemUser&amp;quot;, &amp;quot;pass&amp;quot;: &amp;quot;XXX&amp;quot;}&lt;br /&gt;
        }&lt;br /&gt;
     ],&lt;br /&gt;
&lt;br /&gt;
    &amp;quot;accessories&amp;quot;: []&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== FHEM konfigurieren ==&lt;br /&gt;
Um die Device richtig mit FHEM und Homebridge vertraut zu machen, müssen wir noch unter global etwas ergänzen:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;perl&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
attr global userattr genericDeviceType:ignore,switch,outlet,light,blind,speaker,thermostat,ignore,lock,window,contact&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Einfach folgende Zeilen an die bestehenden Attribute anhängen:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;perl&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
genericDeviceType:ignore,switch,outlet,light,blind,speaker,thermostat,ignore,lock,window,contact&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Diese Einstellungen können auch bei den Einzelnen Devices gemacht werden.&lt;br /&gt;
Beispiel bei einem HM-CC-RT-DN, hier wird der subType thermostat gesetzt.&lt;br /&gt;
Einfach in das Device gehen hier das Attr subtype erstellen und thermostat auswählen.&lt;br /&gt;
&lt;br /&gt;
== Homebridge starten ==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
homebridge&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Hombridge sollte nun laufen.&lt;br /&gt;
Hier kann man die Kommunikation nachverfolgen.&lt;br /&gt;
Abbrechen kann das ganze mit ctrl +c.&lt;br /&gt;
Es sind keine Befehle mehr mit Siri möglich.&lt;br /&gt;
&lt;br /&gt;
Damit Siri auch Befehle ohne ständig offenes Terminal bearbeiten kann, bitten nächsten Punkt beachten.&lt;br /&gt;
&lt;br /&gt;
== Homebridge automatisch starten ==&lt;br /&gt;
Eine Anleitung um die Homebridge automatisch zu starten findet sich &lt;br /&gt;
&lt;br /&gt;
* hier: [https://github.com/nfarina/homebridge/wiki/Running-HomeBridge-on-a-Raspberry-Pi] oder&lt;br /&gt;
* [http://www.meintechblog.de/2015/10/mit-siri-und-fhem-das-gesamte-smart-home-per-stimme-steuern/]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;Beide Links sind obsoloet da es die app.js nicht mehr gibt&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;Alternative Methode&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
sudo nano /etc/init.d/homebridge&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Code einfügen und ggf. den Pfad zu &amp;quot;.homebridge&amp;quot; anpassen&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=bash&amp;gt;&lt;br /&gt;
#!/bin/sh&lt;br /&gt;
### BEGIN INIT INFO&lt;br /&gt;
# Provides: homebridge&lt;br /&gt;
# Required-Start: $network $remote_fs $syslog&lt;br /&gt;
# Required-Stop: $remote_fs $syslog&lt;br /&gt;
# Default-Start: 2 3 4 5&lt;br /&gt;
# Default-Stop: 0 1 6&lt;br /&gt;
# Short-Description: Start daemon at boot time for homebridge&lt;br /&gt;
# Description: Enable service provided by daemon.&lt;br /&gt;
### END INIT INFO&lt;br /&gt;
export PATH=$PATH:/usr/local/bin&lt;br /&gt;
export NODE_PATH=$NODE_PATH:/usr/local/lib/node_modules&lt;br /&gt;
PID=`pidof homebridge`&lt;br /&gt;
case &amp;quot;$1&amp;quot; in&lt;br /&gt;
start)&lt;br /&gt;
if ps -p $PID &amp;gt; /dev/null 2&amp;gt;&amp;amp;1; then&lt;br /&gt;
        echo &amp;quot;Homebridge is already running&amp;quot;&lt;br /&gt;
else&lt;br /&gt;
        homebridge -U /home/pi/.homebridge/ &amp;gt; /dev/null 2&amp;gt;&amp;amp;1 &amp;amp;&lt;br /&gt;
        echo &amp;quot;Homebridge starting&amp;quot;&lt;br /&gt;
fi&lt;br /&gt;
;;&lt;br /&gt;
stop)&lt;br /&gt;
if ! ps -p $PID &amp;gt; /dev/null 2&amp;gt;&amp;amp;1; then&lt;br /&gt;
        echo &amp;quot;Homebridge is not running&amp;quot;&lt;br /&gt;
else&lt;br /&gt;
        kill $PID&lt;br /&gt;
        echo &amp;quot;Homebridge closed&amp;quot;&lt;br /&gt;
fi&lt;br /&gt;
;;&lt;br /&gt;
restart)&lt;br /&gt;
if ! ps -p $PID &amp;gt; /dev/null 2&amp;gt;&amp;amp;1; then&lt;br /&gt;
        homebridge -U /home/pi/.homebridge/ &amp;gt; /dev/null 2&amp;gt;&amp;amp;1 &amp;amp;&lt;br /&gt;
        echo &amp;quot;Homebridge starting&amp;quot;&lt;br /&gt;
else&lt;br /&gt;
        kill $PID&lt;br /&gt;
        echo &amp;quot;Homebridge closed&amp;quot;&lt;br /&gt;
        homebridge -U /home/pi/.homebridge/ &amp;gt; /dev/null 2&amp;gt;&amp;amp;1 &amp;amp;&lt;br /&gt;
        echo &amp;quot;Homebridge starting&amp;quot;&lt;br /&gt;
fi&lt;br /&gt;
;;&lt;br /&gt;
status)&lt;br /&gt;
if ps -p $PID &amp;gt; /dev/null 2&amp;gt;&amp;amp;1; then&lt;br /&gt;
        echo &amp;quot;Homebridge is running PID $PID&amp;quot;&lt;br /&gt;
else&lt;br /&gt;
        echo &amp;quot;Homebridge is not running&amp;quot;&lt;br /&gt;
fi&lt;br /&gt;
;;&lt;br /&gt;
*)&lt;br /&gt;
echo &amp;quot;Usage: /etc/init.d/homebridge {start|stop|status|restart}&amp;quot;&lt;br /&gt;
exit 1&lt;br /&gt;
;;&lt;br /&gt;
esac&lt;br /&gt;
exit 0&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Autostart aktivieren&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
sudo chmod 755 /etc/init.d/homebridge&lt;br /&gt;
&lt;br /&gt;
sudo update-rc.d homebridge defaults&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nun kann man mit &lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
sudo service homebridge start&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
bzw.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
sudo /etc/init.d/homebridge start&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
den Dienst starten&lt;br /&gt;
&lt;br /&gt;
== FHEM Device Einstellungen ==&lt;br /&gt;
Damit die zu schaltenden Geräte überhaupt in der Homebridge aufgenommen werden muss man sie im Raum Homekit hinzufügen.&lt;br /&gt;
&lt;br /&gt;
Um HM-CC-RT-DN Thermostate steuern zu können, muss folgendes attribute gesetzt werden&lt;br /&gt;
# attr Heizung Subtype thermostat&lt;br /&gt;
Für einen Dummy muss man folgendes machen.&lt;br /&gt;
# attr Dummy genericDeviceType switch&lt;br /&gt;
# attr Dummy setList on off&lt;br /&gt;
&lt;br /&gt;
== HomeKit in iOS einrichten ==&lt;br /&gt;
Um FHEM über Homebridge in iOS nutzen zu können, muss HomeKit eingerichtet werden. &lt;br /&gt;
&lt;br /&gt;
Es gibt verschiedene Apps. Im folgenden wird die App EVE von Elgato empfohlen, die aus dem App-Store geladen werden muss.&lt;br /&gt;
In der App auf:&lt;br /&gt;
&amp;lt;pre style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
Gerät hinzufügen&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Es sollte ein Gerät mit der Bezeichnung &amp;quot;Homebridge&amp;quot; zur Auswahl erscheinen. Zur Ersteinrichtung auf PIN manuell eingeben gehen und (falls in der config.json nicht geändert):&lt;br /&gt;
&amp;lt;pre style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
031-45-154&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
eingeben.&lt;br /&gt;
&lt;br /&gt;
Im Anschluss können die Devices nach Belieben in verschiedene Räume zugeteilt werden, sowie Szenen und Bereiche erstellt werden.&lt;br /&gt;
&lt;br /&gt;
== HomeBridge Allgemein ==&lt;br /&gt;
Nach allen Änderungen die in FHEM gemacht werden, welche Homebridge betreffen, muss Homebridge neu gestartet werden.&lt;br /&gt;
&lt;br /&gt;
Der Neustart ist abhängig davon, wie man Homebridge gestartet hat.&lt;br /&gt;
&lt;br /&gt;
Bitte den entsprechenden Methoden entnehmen.&lt;br /&gt;
&lt;br /&gt;
== Steuerung von MiLight Allgemein ==&lt;br /&gt;
Wie hier im Forum http://forum.fhem.de/index.php/topic,32652.msg351706.html#msg351706 erwähnt, ist es möglich auch MiLight gGeräte per Siri anzusprechen.&lt;br /&gt;
Hierzu muss die config.jason angepasst werden.&lt;br /&gt;
&lt;br /&gt;
1. Es muss die Bridge hinterlegt werden. Beispiel&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;platform&amp;quot;: &amp;quot;MiLight&amp;quot;,&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;MiLight&amp;quot;,&lt;br /&gt;
            &amp;quot;ip_address&amp;quot;: &amp;quot;192.168.001.033&amp;quot;,&lt;br /&gt;
            &amp;quot;port&amp;quot;: 8899,&lt;br /&gt;
            &amp;quot;type&amp;quot;: &amp;quot;rgbw&amp;quot;,&lt;br /&gt;
            &amp;quot;delay&amp;quot;: 30,&lt;br /&gt;
            &amp;quot;repeat&amp;quot;: 3,&lt;br /&gt;
            &amp;quot;zones&amp;quot;:[&amp;quot;Wohnzimmer Lampen&amp;quot;,&amp;quot;Badezimmer Lampen&amp;quot;,&amp;quot;Büro Lampen&amp;quot;,&amp;quot;Keller Lampen&amp;quot;]&lt;br /&gt;
        },&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Es muss für jedes zu Steuernde Gerät ein Dummy angelegt werden. Beispiel:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;accessory&amp;quot;: &amp;quot;Http&amp;quot;,&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;Kitchen Lamp&amp;quot;,&lt;br /&gt;
            &amp;quot;on_url&amp;quot;: &amp;quot;https://192.168.1.22:3030/devices/23222/on&amp;quot;,&lt;br /&gt;
            &amp;quot;off_url&amp;quot;: &amp;quot;https://192.168.1.22:3030/devices/23222/off&amp;quot;,&lt;br /&gt;
            &amp;quot;brightness_url&amp;quot;: &amp;quot;https://192.168.1.22:3030/devices/23222/brightness/%b&amp;quot;,&lt;br /&gt;
            &amp;quot;http_method&amp;quot;: &amp;quot;POST&amp;quot;&lt;br /&gt;
        },&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Schalten mit Siri ==&lt;br /&gt;
&#039;&#039;&#039;HolyMoly&#039;&#039;&#039; aus dem FHEM-Forum hat ein paar Beispiele gegeben, wie man Siri dazu bringt Devices zu schalten:&lt;br /&gt;
&amp;lt;pre style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;quot;Schalte alle Lampen im Obergeschoss ein.&amp;quot;&lt;br /&gt;
&amp;quot;Schalte Chloes Licht aus.&amp;quot;&lt;br /&gt;
&amp;quot;Dimme das Licht in der Küche.&amp;quot;&lt;br /&gt;
&amp;quot;Dimme das Licht im Esszimmer auf 50 %.&amp;quot;&lt;br /&gt;
&amp;quot;Stelle das Licht in der Küche am hellsten ein.&amp;quot;&lt;br /&gt;
&amp;quot;Stelle die Temperatur im Tahoe-Haus auf 22 °C ein.&amp;quot;&lt;br /&gt;
&amp;quot;Stelle das Thermostat im Erdgeschoss auf 21 °C ein.&lt;br /&gt;
&amp;quot;Schalte den Drucker im Büro ein.&amp;quot;&lt;br /&gt;
&amp;quot;Siri, bereite alles für eine Party vor.&amp;quot;&lt;br /&gt;
&amp;quot;Bereite das Ambiente fürs Abendessen vor.&amp;quot;&lt;br /&gt;
&amp;quot;Aktiviere den Nachtruhemodus.&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mittlerweile kann Siri auch noch die Lichtfarbe von LEDs ändern.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Unterstütze Devices ==&lt;br /&gt;
Das Fhem Plugin von {{Link2FU|430|Andre (justme1968)}} unterstützt folgende Geräte&lt;br /&gt;
&lt;br /&gt;
    switches (devices with set on and set off commands)&lt;br /&gt;
    lights (devices with set on and set off commands)&lt;br /&gt;
    homematc and FS20 dimmers (devices with set on, set off and set dim or set pct commands)&lt;br /&gt;
    HUE, WifiLight, SWAP_0000002200000003 (hue, sat, bri, rgb)&lt;br /&gt;
    homematic, max and pid20 thermostats&lt;br /&gt;
    homematic blinds&lt;br /&gt;
    hommatic, MAX and FHTTK contact sensors (door, window)&lt;br /&gt;
    HM-SEC-WIN, HM-SEC-KEY&lt;br /&gt;
    presence, ROOMMATE&lt;br /&gt;
    SONOS (power, volume)&lt;br /&gt;
    harmony scenes&lt;br /&gt;
    temperaturecw and humidity sensors&lt;br /&gt;
    CO20 air quality sensor&lt;br /&gt;
    probably some more ...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:HOWTOS]]&lt;/div&gt;</summary>
		<author><name>Netbus</name></author>
	</entry>
	<entry>
		<id>http://wiki.fhem.de/w/index.php?title=Homebridge_einrichten&amp;diff=12865</id>
		<title>Homebridge einrichten</title>
		<link rel="alternate" type="text/html" href="http://wiki.fhem.de/w/index.php?title=Homebridge_einrichten&amp;diff=12865"/>
		<updated>2015-11-11T11:11:15Z</updated>

		<summary type="html">&lt;p&gt;Netbus: /* Homebridge automatisch starten */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dieses HOWTO zeigt die Installation und Erstinbetriebnahme von Homebridge. &lt;br /&gt;
&lt;br /&gt;
Damit kann Siri benutzt werden, um FHEM-Devices zu steuern. So können Devices angesprochen werden, die offiziell HomeKit nicht unterstützen (die Vorgehensweise wurde auf einem Intel NUC mit Ubuntu Server 14.04 LTS und auf einem Raspberry Pi mit Raspian getestet).&lt;br /&gt;
&lt;br /&gt;
Um Homebridge erfolgreich zu installieren, müssen zunächst NPM, NodeJS, Python, g++, MDNS, sowie benötigte Hilfspakete installiert werden:&lt;br /&gt;
&lt;br /&gt;
Der WIKI-Eintrag bezieht sich hauptsächlich auf diese {{Link2Forum|Topic=32652|LinkText=Diskussion im FHEM-Forum}}. Ein Riesendank gilt vor allem {{Link2FU|430|Andre (justme1968)}}.&lt;br /&gt;
&lt;br /&gt;
Eine Sammlung funktionsfähiger Homebridge FHEM Konfiguration können hier gefunden werden http://www.fhemwiki.de/wiki/Hombridge_User_Configs&lt;br /&gt;
Die Sammlung befindet sich noch im Aufbau&lt;br /&gt;
&lt;br /&gt;
== NodeJS installieren ==&lt;br /&gt;
In der Konsole folgende Befehle eingeben:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get upgrade&lt;br /&gt;
sudo apt-get install build-essential libssl-dev&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
UPDATE: Homebridge funktioniert mit einer kleinen Einschränkung nun auch mit node 4.0.0. Laut&lt;br /&gt;
[https://github.com/cflurin/homebridge-shims/wiki/Minimalist-Homebridge-on-a-Raspberry-Pi Homebridge on a Raspberry Pi] müssen die folgenden Abhängigkeiten (Dependencies) aus der &#039;&#039;&#039;package.json&#039;&#039;&#039; entfernt werden:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;quot;harmonyhubjs-client&amp;quot;: &amp;quot;^1.1.4&amp;quot;,&lt;br /&gt;
&amp;quot;harmonyhubjs-discover&amp;quot;: &amp;quot;git+https://github.com/swissmanu/harmonyhubjs-discover.git&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Damit es auf einem Raspberry schneller läuft wird darüber hinaus empfohlen auch diese Abhängigkeiten aus der &#039;&#039;&#039;package.json&#039;&#039;&#039; zu entfernen:&lt;br /&gt;
&lt;br /&gt;
Vorher noch ein ein Backup der Datei anlegen &lt;br /&gt;
&amp;lt;pre&amp;gt;cp package.json package.json.bkp oder sudo cp package.json package.json.bkp &amp;lt;/pre&amp;gt;&lt;br /&gt;
Am einfachsten geht das entfernen der Zeilen mit dem Editor vi.&lt;br /&gt;
&amp;lt;!-- Bist Du sicher, dass &amp;quot;vi&amp;quot; das Einfachste ist? Ist nicht auf vielen Linux Systemen &lt;br /&gt;
     mittlerweile auch der &amp;quot;nano&amp;quot; Editor drauf? Der dürfte eigentlich !noch! einfacher sein.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;vi package.json oder sudo vi package.json&amp;lt;/pre&amp;gt;&lt;br /&gt;
Mit dem Cursor vor die entsprechende Zeile gehen und mit zwei mal Taste d (dd tippen) wird die Zeile gelöscht.&lt;br /&gt;
&lt;br /&gt;
Eventuell muss vi mit sudo vi aufgerufen werden, je nach verwendeter Distribution.&lt;br /&gt;
&lt;br /&gt;
Gespeichert wird dann mit folgendem Ablauf: ESC :wq! Enter&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;quot;ad2usb&amp;quot;: &amp;quot;git+https://github.com/alistairg/node-ad2usb.git#local&amp;quot;,&lt;br /&gt;
&amp;quot;carwingsjs&amp;quot;: &amp;quot;0.0.x&amp;quot;,&lt;br /&gt;
&amp;quot;chokidar&amp;quot;: &amp;quot;^1.0.5&amp;quot;,&lt;br /&gt;
&amp;quot;eibd&amp;quot;: &amp;quot;^0.3.1&amp;quot;,&lt;br /&gt;
&amp;quot;elkington&amp;quot;: &amp;quot;kevinohara80/elkington&amp;quot;,&lt;br /&gt;
&amp;quot;harmonyhubjs-client&amp;quot;: &amp;quot;^1.1.4&amp;quot;,&lt;br /&gt;
&amp;quot;harmonyhubjs-discover&amp;quot;: &amp;quot;git+https://github.com/swissmanu/harmonyhubjs-discover.git&amp;quot;,&lt;br /&gt;
&amp;quot;lifx-api&amp;quot;: &amp;quot;^1.0.1&amp;quot;,&lt;br /&gt;
&amp;quot;lifx&amp;quot;: &amp;quot;git+https://github.com/magicmonkey/lifxjs.git&amp;quot;,&lt;br /&gt;
&amp;quot;node-hue-api&amp;quot;: &amp;quot;^1.0.5&amp;quot;,&lt;br /&gt;
&amp;quot;node-icontrol&amp;quot;: &amp;quot;^0.1.4&amp;quot;,&lt;br /&gt;
&amp;quot;node-milight-promise&amp;quot;: &amp;quot;0.0.x&amp;quot;,&lt;br /&gt;
&amp;quot;tough-cookie&amp;quot;: &amp;quot;^2.0.0&amp;quot;,&lt;br /&gt;
&amp;quot;sonos&amp;quot;: &amp;quot;0.8.x&amp;quot;,&lt;br /&gt;
&amp;quot;telldus-live&amp;quot;: &amp;quot;0.2.x&amp;quot;,&lt;br /&gt;
&amp;quot;teslams&amp;quot;: &amp;quot;1.0.1&amp;quot;,&lt;br /&gt;
&amp;quot;unofficial-nest-api&amp;quot;: &amp;quot;git+https://github.com/hachidorii/unofficial_nodejs_nest.git#d8d48edc952b049ff6320ef99afa7b2f04cdee98&amp;quot;,&lt;br /&gt;
&amp;quot;wemo&amp;quot;: &amp;quot;0.2.x&amp;quot;,&lt;br /&gt;
&amp;quot;wink-js&amp;quot;: &amp;quot;0.0.5&amp;quot;,&lt;br /&gt;
&amp;quot;komponist&amp;quot; : &amp;quot;0.1.0&amp;quot;,&lt;br /&gt;
&amp;quot;yamaha-nodejs&amp;quot;: &amp;quot;0.4.x&amp;quot;,&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Das Konfig file sollte dann wie folgt aussehen: Achtung vor den letzten zwei } am Ende dar kein Komma sein.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;name&amp;quot;: &amp;quot;homebridge&amp;quot;,&lt;br /&gt;
  &amp;quot;description&amp;quot;: &amp;quot;HomeKit support for the impatient&amp;quot;,&lt;br /&gt;
  &amp;quot;version&amp;quot;: &amp;quot;0.1.1&amp;quot;,&lt;br /&gt;
  &amp;quot;scripts&amp;quot;: {&lt;br /&gt;
    &amp;quot;start&amp;quot;: &amp;quot;DEBUG=* node app.js || true&amp;quot;&lt;br /&gt;
  },&lt;br /&gt;
  &amp;quot;repository&amp;quot;: {&lt;br /&gt;
    &amp;quot;type&amp;quot;: &amp;quot;git&amp;quot;,&lt;br /&gt;
    &amp;quot;url&amp;quot;: &amp;quot;git://github.com/nfarina/homebridge.git&amp;quot;&lt;br /&gt;
  },&lt;br /&gt;
  &amp;quot;license&amp;quot;: &amp;quot;ISC&amp;quot;,&lt;br /&gt;
  &amp;quot;dependencies&amp;quot;: {&lt;br /&gt;
    &amp;quot;async&amp;quot;: &amp;quot;^1.4.2&amp;quot;,&lt;br /&gt;
    &amp;quot;color&amp;quot;: &amp;quot;0.10.x&amp;quot;,&lt;br /&gt;
    &amp;quot;debug&amp;quot;: &amp;quot;^2.2.0&amp;quot;,&lt;br /&gt;
    &amp;quot;hap-nodejs&amp;quot;: &amp;quot;^0.0.2&amp;quot;,&lt;br /&gt;
    &amp;quot;isy-js&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
    &amp;quot;mdns&amp;quot;: &amp;quot;^2.2.4&amp;quot;,&lt;br /&gt;
    &amp;quot;netatmo&amp;quot;: &amp;quot;1.3.0&amp;quot;,&lt;br /&gt;
    &amp;quot;node-cache&amp;quot;: &amp;quot;3.0.0&amp;quot;,&lt;br /&gt;
    &amp;quot;node-persist&amp;quot;: &amp;quot;0.0.x&amp;quot;,&lt;br /&gt;
    &amp;quot;node-xmpp-client&amp;quot;: &amp;quot;1.0.0-alpha23&amp;quot;,&lt;br /&gt;
    &amp;quot;q&amp;quot;: &amp;quot;1.4.x&amp;quot;,&lt;br /&gt;
    &amp;quot;queue&amp;quot;: &amp;quot;^3.1.0&amp;quot;,&lt;br /&gt;
    &amp;quot;request&amp;quot;: &amp;quot;2.49.x&amp;quot;,&lt;br /&gt;
    &amp;quot;xml2js&amp;quot;: &amp;quot;0.4.x&amp;quot;,&lt;br /&gt;
    &amp;quot;xmldoc&amp;quot;: &amp;quot;0.1.x&amp;quot;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Python, g++, MDNS installieren ==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
sudo apt-get install python&lt;br /&gt;
sudo apt-get install g++&lt;br /&gt;
sudo apt-get install libavahi-compat-libdnssd-dev&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Homebridge installieren ==&lt;br /&gt;
Die aktuelle Homebridge version wird mit&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
npm install -g homebridge&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
installiert, der FHEM platform shim mit&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;width:60%;&amp;quot;&amp;gt;&lt;br /&gt;
npm install -g https://github.com/justme-1968/homebridge-fhem.git&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== ERR während der Installation ==&lt;br /&gt;
Bei folgendem Fehler ist das abrufen von Github nicht möglich.&lt;br /&gt;
&amp;lt;pre&amp;gt;npm ERR! git clone --template=/home/hs-server-admin/.npm/_git-remotes/_templates --mirror &lt;br /&gt;
git://github.com/KhaosT/ed25519.git /home/hs-server-admin/.npm/_git-remotes/git-github-com-KhaosT-ed25519-git-d8bdee1d: &lt;br /&gt;
github.com[0: 192.30.252.128]: errno=Die Wartezeit für die Verbindung ist abgelaufen&amp;lt;/pre&amp;gt;&lt;br /&gt;
Fehlerursache konnte hier durch eine aktive Firewall verursacht werden.&lt;br /&gt;
&lt;br /&gt;
== Homebridge konfigurieren ==&lt;br /&gt;
Im Verzeichnis ~/.homebridge/ muss nun noch die config.json erstellt bzw. angepasst werden:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
nano config.json&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Homebridge muss nicht, kann aber auf dem selben Server laufen wie FHEM. &lt;br /&gt;
&lt;br /&gt;
Unter &amp;quot;server&amp;quot; muss die IP des FHEM-Servers und unter &amp;quot;port&amp;quot; der benutzte Port des benutzten FHEMWEBS eingetragen werden.&lt;br /&gt;
&lt;br /&gt;
Läuft der Homebridge Server auf dem gleichen Rechner wie FHEM, kann die IP 127.0.0.1 benutzt werden.&lt;br /&gt;
&lt;br /&gt;
WICHTIG: Damit nicht alle Devices von Homebridge berücksichtig werden, bietet es sich an, die Devices zu filtern. &lt;br /&gt;
&lt;br /&gt;
In diesem Beispiel wurden alle Devices, die über Siri steuerbar sein sollen zusätzlich in den ROOM Homekit per FHEM eingerichtet. &lt;br /&gt;
&lt;br /&gt;
Der PIN kann beliebig in dem Format xxx-xx-xxx angepasst werden. Dieser muss nur einmal bei der Einrichtung in iOS eingegeben werden.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
    &amp;quot;bridge&amp;quot;: {&lt;br /&gt;
        &amp;quot;name&amp;quot;: &amp;quot;Homebridge&amp;quot;,&lt;br /&gt;
        &amp;quot;username&amp;quot;: &amp;quot;CC:22:3D:E3:CE:30&amp;quot;,&lt;br /&gt;
        &amp;quot;port&amp;quot;: 51826,&lt;br /&gt;
        &amp;quot;pin&amp;quot;: &amp;quot;031-45-154&amp;quot;&lt;br /&gt;
    },&lt;br /&gt;
&lt;br /&gt;
    &amp;quot;platforms&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;platform&amp;quot;: &amp;quot;FHEM&amp;quot;,&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;FHEM&amp;quot;,&lt;br /&gt;
            &amp;quot;server&amp;quot;: &amp;quot;192.168.xxx.xxx&amp;quot;,&lt;br /&gt;
            &amp;quot;port&amp;quot;: &amp;quot;8083&amp;quot;,&lt;br /&gt;
            &amp;quot;filter&amp;quot;: &amp;quot;room=Homekit&amp;quot;,&lt;br /&gt;
            &amp;quot;auth&amp;quot;: {&amp;quot;user&amp;quot;: &amp;quot;FhemUser&amp;quot;, &amp;quot;pass&amp;quot;: &amp;quot;XXX&amp;quot;}&lt;br /&gt;
        }&lt;br /&gt;
     ],&lt;br /&gt;
&lt;br /&gt;
    &amp;quot;accessories&amp;quot;: []&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Achtung: Für ein FHEM Web Interface mit SSL Zertifikat muss die config wo folgt aussehen:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
    &amp;quot;bridge&amp;quot;: {&lt;br /&gt;
        &amp;quot;name&amp;quot;: &amp;quot;Homebridge&amp;quot;,&lt;br /&gt;
        &amp;quot;username&amp;quot;: &amp;quot;CC:22:3D:E3:CE:30&amp;quot;,&lt;br /&gt;
        &amp;quot;port&amp;quot;: 51826,&lt;br /&gt;
        &amp;quot;pin&amp;quot;: &amp;quot;031-45-154&amp;quot;&lt;br /&gt;
    },&lt;br /&gt;
&lt;br /&gt;
    &amp;quot;platforms&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;platform&amp;quot;: &amp;quot;FHEM&amp;quot;,&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;FHEM&amp;quot;,&lt;br /&gt;
            &amp;quot;server&amp;quot;: &amp;quot;192.168.xxx.xxx&amp;quot;,&lt;br /&gt;
            &amp;quot;port&amp;quot;: &amp;quot;8083&amp;quot;,&lt;br /&gt;
            &amp;quot;filter&amp;quot;: &amp;quot;room=Homekit&amp;quot;,&lt;br /&gt;
            &amp;quot;ssl&amp;quot;: &amp;quot;true&amp;quot;,&lt;br /&gt;
            &amp;quot;auth&amp;quot;: {&amp;quot;user&amp;quot;: &amp;quot;FhemUser&amp;quot;, &amp;quot;pass&amp;quot;: &amp;quot;XXX&amp;quot;}&lt;br /&gt;
        }&lt;br /&gt;
     ],&lt;br /&gt;
&lt;br /&gt;
    &amp;quot;accessories&amp;quot;: []&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== FHEM konfigurieren ==&lt;br /&gt;
Um die Device richtig mit FHEM und Homebridge vertraut zu machen, müssen wir noch unter global etwas ergänzen:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;perl&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
attr global userattr genericDeviceType:ignore,switch,outlet,light,blind,speaker,thermostat,ignore,lock,window,contact&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Einfach folgende Zeilen an die bestehenden Attribute anhängen:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;perl&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
genericDeviceType:ignore,switch,outlet,light,blind,speaker,thermostat,ignore,lock,window,contact&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Diese Einstellungen können auch bei den Einzelnen Devices gemacht werden.&lt;br /&gt;
Beispiel bei einem HM-CC-RT-DN, hier wird der subType thermostat gesetzt.&lt;br /&gt;
Einfach in das Device gehen hier das Attr subtype erstellen und thermostat auswählen.&lt;br /&gt;
&lt;br /&gt;
== Homebridge starten ==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
homebridge&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Hombridge sollte nun laufen.&lt;br /&gt;
Hier kann man die Kommunikation nachverfolgen.&lt;br /&gt;
Abbrechen kann das ganze mit ctrl +c.&lt;br /&gt;
Es sind keine Befehle mehr mit Siri möglich.&lt;br /&gt;
&lt;br /&gt;
Damit Siri auch Befehle ohne ständig offenes Terminal bearbeiten kann, bitten nächsten Punkt beachten.&lt;br /&gt;
&lt;br /&gt;
== Homebridge automatisch starten ==&lt;br /&gt;
Eine Anleitung um die Homebridge automatisch zu starten findet sich &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* hier: [https://github.com/nfarina/homebridge/wiki/Running-HomeBridge-on-a-Raspberry-Pi] oder&lt;br /&gt;
* [http://www.meintechblog.de/2015/10/mit-siri-und-fhem-das-gesamte-smart-home-per-stimme-steuern/]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;Beide Links sind obsoloet da es die app.js nicht mehr gibt&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;Alternative Methode&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
sudo nano /etc/init.d/homebridge&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Code einfügen und ggf. den Pfad zu &amp;quot;.homebridge&amp;quot; anpassen&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=bash&amp;gt;&lt;br /&gt;
#!/bin/sh&lt;br /&gt;
### BEGIN INIT INFO&lt;br /&gt;
# Provides: homebridge&lt;br /&gt;
# Required-Start: $network $remote_fs $syslog&lt;br /&gt;
# Required-Stop: $remote_fs $syslog&lt;br /&gt;
# Default-Start: 2 3 4 5&lt;br /&gt;
# Default-Stop: 0 1 6&lt;br /&gt;
# Short-Description: Start daemon at boot time for homebridge&lt;br /&gt;
# Description: Enable service provided by daemon.&lt;br /&gt;
### END INIT INFO&lt;br /&gt;
export PATH=$PATH:/usr/local/bin&lt;br /&gt;
export NODE_PATH=$NODE_PATH:/usr/local/lib/node_modules&lt;br /&gt;
PID=`pidof homebridge`&lt;br /&gt;
case &amp;quot;$1&amp;quot; in&lt;br /&gt;
start)&lt;br /&gt;
if ps -p $PID &amp;gt; /dev/null 2&amp;gt;&amp;amp;1; then&lt;br /&gt;
        echo &amp;quot;Homebridge is already running&amp;quot;&lt;br /&gt;
else&lt;br /&gt;
        homebridge -U /home/pi/.homebridge/ &amp;gt; /dev/null 2&amp;gt;&amp;amp;1 &amp;amp;&lt;br /&gt;
        echo &amp;quot;Homebridge starting&amp;quot;&lt;br /&gt;
fi&lt;br /&gt;
;;&lt;br /&gt;
stop)&lt;br /&gt;
if ! ps -p $PID &amp;gt; /dev/null 2&amp;gt;&amp;amp;1; then&lt;br /&gt;
        echo &amp;quot;Homebridge is not running&amp;quot;&lt;br /&gt;
else&lt;br /&gt;
        kill $PID&lt;br /&gt;
        echo &amp;quot;Homebridge closed&amp;quot;&lt;br /&gt;
fi&lt;br /&gt;
;;&lt;br /&gt;
restart)&lt;br /&gt;
if ! ps -p $PID &amp;gt; /dev/null 2&amp;gt;&amp;amp;1; then&lt;br /&gt;
        homebridge -U /home/pi/.homebridge/ &amp;gt; /dev/null 2&amp;gt;&amp;amp;1 &amp;amp;&lt;br /&gt;
        echo &amp;quot;Homebridge starting&amp;quot;&lt;br /&gt;
else&lt;br /&gt;
        kill $PID&lt;br /&gt;
        echo &amp;quot;Homebridge closed&amp;quot;&lt;br /&gt;
        homebridge -U /home/pi/.homebridge/ &amp;gt; /dev/null 2&amp;gt;&amp;amp;1 &amp;amp;&lt;br /&gt;
        echo &amp;quot;Homebridge starting&amp;quot;&lt;br /&gt;
fi&lt;br /&gt;
;;&lt;br /&gt;
status)&lt;br /&gt;
if ps -p $PID &amp;gt; /dev/null 2&amp;gt;&amp;amp;1; then&lt;br /&gt;
        echo &amp;quot;Homebridge is running PID $PID&amp;quot;&lt;br /&gt;
else&lt;br /&gt;
        echo &amp;quot;Homebridge is not running&amp;quot;&lt;br /&gt;
fi&lt;br /&gt;
;;&lt;br /&gt;
*)&lt;br /&gt;
echo &amp;quot;Usage: /etc/init.d/homebridge {start|stop|status|restart}&amp;quot;&lt;br /&gt;
exit 1&lt;br /&gt;
;;&lt;br /&gt;
esac&lt;br /&gt;
exit 0&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Autostart aktivieren&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
sudo chmod 755 /etc/init.d/homebridge&lt;br /&gt;
&lt;br /&gt;
sudo update-rc.d homebridge defaults&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nun kann man mit &lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
sudo service homebridge start&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
bzw.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
sudo /etc/init.d/homebridge start&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
den Dienst starten&lt;br /&gt;
&lt;br /&gt;
== FHEM Device Einstellungen ==&lt;br /&gt;
Damit die zu schaltenden Geräte überhaupt in der Homebridge aufgenommen werden muss man sie im Raum Homekit hinzufügen.&lt;br /&gt;
&lt;br /&gt;
Um HM-CC-RT-DN Thermostate steuern zu können, muss folgendes attribute gesetzt werden&lt;br /&gt;
# attr Heizung Subtype thermostat&lt;br /&gt;
Für einen Dummy muss man folgendes machen.&lt;br /&gt;
# attr Dummy genericDeviceType switch&lt;br /&gt;
# attr Dummy setList on off&lt;br /&gt;
&lt;br /&gt;
== HomeKit in iOS einrichten ==&lt;br /&gt;
Um FHEM über Homebridge in iOS nutzen zu können, muss HomeKit eingerichtet werden. &lt;br /&gt;
&lt;br /&gt;
Es gibt verschiedene Apps. Im folgenden wird die App EVE von Elgato empfohlen, die aus dem App-Store geladen werden muss.&lt;br /&gt;
In der App auf:&lt;br /&gt;
&amp;lt;pre style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
Gerät hinzufügen&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Es sollte ein Gerät mit der Bezeichnung &amp;quot;Homebridge&amp;quot; zur Auswahl erscheinen. Zur Ersteinrichtung auf PIN manuell eingeben gehen und (falls in der config.json nicht geändert):&lt;br /&gt;
&amp;lt;pre style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
031-45-154&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
eingeben.&lt;br /&gt;
&lt;br /&gt;
Im Anschluss können die Devices nach Belieben in verschiedene Räume zugeteilt werden, sowie Szenen und Bereiche erstellt werden.&lt;br /&gt;
&lt;br /&gt;
== HomeBridge Allgemein ==&lt;br /&gt;
Nach allen Änderungen die in FHEM gemacht werden, welche Homebridge betreffen, muss Homebridge neu gestartet werden.&lt;br /&gt;
&lt;br /&gt;
Der Neustart ist abhängig davon, wie man Homebridge gestartet hat.&lt;br /&gt;
&lt;br /&gt;
Bitte den entsprechenden Methoden entnehmen.&lt;br /&gt;
&lt;br /&gt;
== Steuerung von MiLight Allgemein ==&lt;br /&gt;
Wie hier im Forum http://forum.fhem.de/index.php/topic,32652.msg351706.html#msg351706 erwähnt, ist es möglich auch MiLight gGeräte per Siri anzusprechen.&lt;br /&gt;
Hierzu muss die config.jason angepasst werden.&lt;br /&gt;
&lt;br /&gt;
1. Es muss die Bridge hinterlegt werden. Beispiel&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;platform&amp;quot;: &amp;quot;MiLight&amp;quot;,&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;MiLight&amp;quot;,&lt;br /&gt;
            &amp;quot;ip_address&amp;quot;: &amp;quot;192.168.001.033&amp;quot;,&lt;br /&gt;
            &amp;quot;port&amp;quot;: 8899,&lt;br /&gt;
            &amp;quot;type&amp;quot;: &amp;quot;rgbw&amp;quot;,&lt;br /&gt;
            &amp;quot;delay&amp;quot;: 30,&lt;br /&gt;
            &amp;quot;repeat&amp;quot;: 3,&lt;br /&gt;
            &amp;quot;zones&amp;quot;:[&amp;quot;Wohnzimmer Lampen&amp;quot;,&amp;quot;Badezimmer Lampen&amp;quot;,&amp;quot;Büro Lampen&amp;quot;,&amp;quot;Keller Lampen&amp;quot;]&lt;br /&gt;
        },&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Es muss für jedes zu Steuernde Gerät ein Dummy angelegt werden. Beispiel:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;accessory&amp;quot;: &amp;quot;Http&amp;quot;,&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;Kitchen Lamp&amp;quot;,&lt;br /&gt;
            &amp;quot;on_url&amp;quot;: &amp;quot;https://192.168.1.22:3030/devices/23222/on&amp;quot;,&lt;br /&gt;
            &amp;quot;off_url&amp;quot;: &amp;quot;https://192.168.1.22:3030/devices/23222/off&amp;quot;,&lt;br /&gt;
            &amp;quot;brightness_url&amp;quot;: &amp;quot;https://192.168.1.22:3030/devices/23222/brightness/%b&amp;quot;,&lt;br /&gt;
            &amp;quot;http_method&amp;quot;: &amp;quot;POST&amp;quot;&lt;br /&gt;
        },&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Schalten mit Siri ==&lt;br /&gt;
&#039;&#039;&#039;HolyMoly&#039;&#039;&#039; aus dem FHEM-Forum hat ein paar Beispiele gegeben, wie man Siri dazu bringt Devices zu schalten:&lt;br /&gt;
&amp;lt;pre style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;quot;Schalte alle Lampen im Obergeschoss ein.&amp;quot;&lt;br /&gt;
&amp;quot;Schalte Chloes Licht aus.&amp;quot;&lt;br /&gt;
&amp;quot;Dimme das Licht in der Küche.&amp;quot;&lt;br /&gt;
&amp;quot;Dimme das Licht im Esszimmer auf 50 %.&amp;quot;&lt;br /&gt;
&amp;quot;Stelle das Licht in der Küche am hellsten ein.&amp;quot;&lt;br /&gt;
&amp;quot;Stelle die Temperatur im Tahoe-Haus auf 22 °C ein.&amp;quot;&lt;br /&gt;
&amp;quot;Stelle das Thermostat im Erdgeschoss auf 21 °C ein.&lt;br /&gt;
&amp;quot;Schalte den Drucker im Büro ein.&amp;quot;&lt;br /&gt;
&amp;quot;Siri, bereite alles für eine Party vor.&amp;quot;&lt;br /&gt;
&amp;quot;Bereite das Ambiente fürs Abendessen vor.&amp;quot;&lt;br /&gt;
&amp;quot;Aktiviere den Nachtruhemodus.&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mittlerweile kann Siri auch noch die Lichtfarbe von LEDs ändern.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Unterstütze Devices ==&lt;br /&gt;
Das Fhem Plugin von {{Link2FU|430|Andre (justme1968)}} unterstützt folgende Geräte&lt;br /&gt;
&lt;br /&gt;
    switches (devices with set on and set off commands)&lt;br /&gt;
    lights (devices with set on and set off commands)&lt;br /&gt;
    homematc and FS20 dimmers (devices with set on, set off and set dim or set pct commands)&lt;br /&gt;
    HUE, WifiLight, SWAP_0000002200000003 (hue, sat, bri, rgb)&lt;br /&gt;
    homematic, max and pid20 thermostats&lt;br /&gt;
    homematic blinds&lt;br /&gt;
    hommatic, MAX and FHTTK contact sensors (door, window)&lt;br /&gt;
    HM-SEC-WIN, HM-SEC-KEY&lt;br /&gt;
    presence, ROOMMATE&lt;br /&gt;
    SONOS (power, volume)&lt;br /&gt;
    harmony scenes&lt;br /&gt;
    temperaturecw and humidity sensors&lt;br /&gt;
    CO20 air quality sensor&lt;br /&gt;
    probably some more ...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:HOWTOS]]&lt;/div&gt;</summary>
		<author><name>Netbus</name></author>
	</entry>
	<entry>
		<id>http://wiki.fhem.de/w/index.php?title=Homebridge_einrichten&amp;diff=12864</id>
		<title>Homebridge einrichten</title>
		<link rel="alternate" type="text/html" href="http://wiki.fhem.de/w/index.php?title=Homebridge_einrichten&amp;diff=12864"/>
		<updated>2015-11-11T11:10:10Z</updated>

		<summary type="html">&lt;p&gt;Netbus: /* Homebridge automatisch starten */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dieses HOWTO zeigt die Installation und Erstinbetriebnahme von Homebridge. &lt;br /&gt;
&lt;br /&gt;
Damit kann Siri benutzt werden, um FHEM-Devices zu steuern. So können Devices angesprochen werden, die offiziell HomeKit nicht unterstützen (die Vorgehensweise wurde auf einem Intel NUC mit Ubuntu Server 14.04 LTS und auf einem Raspberry Pi mit Raspian getestet).&lt;br /&gt;
&lt;br /&gt;
Um Homebridge erfolgreich zu installieren, müssen zunächst NPM, NodeJS, Python, g++, MDNS, sowie benötigte Hilfspakete installiert werden:&lt;br /&gt;
&lt;br /&gt;
Der WIKI-Eintrag bezieht sich hauptsächlich auf diese {{Link2Forum|Topic=32652|LinkText=Diskussion im FHEM-Forum}}. Ein Riesendank gilt vor allem {{Link2FU|430|Andre (justme1968)}}.&lt;br /&gt;
&lt;br /&gt;
Eine Sammlung funktionsfähiger Homebridge FHEM Konfiguration können hier gefunden werden http://www.fhemwiki.de/wiki/Hombridge_User_Configs&lt;br /&gt;
Die Sammlung befindet sich noch im Aufbau&lt;br /&gt;
&lt;br /&gt;
== NodeJS installieren ==&lt;br /&gt;
In der Konsole folgende Befehle eingeben:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get upgrade&lt;br /&gt;
sudo apt-get install build-essential libssl-dev&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
UPDATE: Homebridge funktioniert mit einer kleinen Einschränkung nun auch mit node 4.0.0. Laut&lt;br /&gt;
[https://github.com/cflurin/homebridge-shims/wiki/Minimalist-Homebridge-on-a-Raspberry-Pi Homebridge on a Raspberry Pi] müssen die folgenden Abhängigkeiten (Dependencies) aus der &#039;&#039;&#039;package.json&#039;&#039;&#039; entfernt werden:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;quot;harmonyhubjs-client&amp;quot;: &amp;quot;^1.1.4&amp;quot;,&lt;br /&gt;
&amp;quot;harmonyhubjs-discover&amp;quot;: &amp;quot;git+https://github.com/swissmanu/harmonyhubjs-discover.git&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Damit es auf einem Raspberry schneller läuft wird darüber hinaus empfohlen auch diese Abhängigkeiten aus der &#039;&#039;&#039;package.json&#039;&#039;&#039; zu entfernen:&lt;br /&gt;
&lt;br /&gt;
Vorher noch ein ein Backup der Datei anlegen &lt;br /&gt;
&amp;lt;pre&amp;gt;cp package.json package.json.bkp oder sudo cp package.json package.json.bkp &amp;lt;/pre&amp;gt;&lt;br /&gt;
Am einfachsten geht das entfernen der Zeilen mit dem Editor vi.&lt;br /&gt;
&amp;lt;!-- Bist Du sicher, dass &amp;quot;vi&amp;quot; das Einfachste ist? Ist nicht auf vielen Linux Systemen &lt;br /&gt;
     mittlerweile auch der &amp;quot;nano&amp;quot; Editor drauf? Der dürfte eigentlich !noch! einfacher sein.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;vi package.json oder sudo vi package.json&amp;lt;/pre&amp;gt;&lt;br /&gt;
Mit dem Cursor vor die entsprechende Zeile gehen und mit zwei mal Taste d (dd tippen) wird die Zeile gelöscht.&lt;br /&gt;
&lt;br /&gt;
Eventuell muss vi mit sudo vi aufgerufen werden, je nach verwendeter Distribution.&lt;br /&gt;
&lt;br /&gt;
Gespeichert wird dann mit folgendem Ablauf: ESC :wq! Enter&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;quot;ad2usb&amp;quot;: &amp;quot;git+https://github.com/alistairg/node-ad2usb.git#local&amp;quot;,&lt;br /&gt;
&amp;quot;carwingsjs&amp;quot;: &amp;quot;0.0.x&amp;quot;,&lt;br /&gt;
&amp;quot;chokidar&amp;quot;: &amp;quot;^1.0.5&amp;quot;,&lt;br /&gt;
&amp;quot;eibd&amp;quot;: &amp;quot;^0.3.1&amp;quot;,&lt;br /&gt;
&amp;quot;elkington&amp;quot;: &amp;quot;kevinohara80/elkington&amp;quot;,&lt;br /&gt;
&amp;quot;harmonyhubjs-client&amp;quot;: &amp;quot;^1.1.4&amp;quot;,&lt;br /&gt;
&amp;quot;harmonyhubjs-discover&amp;quot;: &amp;quot;git+https://github.com/swissmanu/harmonyhubjs-discover.git&amp;quot;,&lt;br /&gt;
&amp;quot;lifx-api&amp;quot;: &amp;quot;^1.0.1&amp;quot;,&lt;br /&gt;
&amp;quot;lifx&amp;quot;: &amp;quot;git+https://github.com/magicmonkey/lifxjs.git&amp;quot;,&lt;br /&gt;
&amp;quot;node-hue-api&amp;quot;: &amp;quot;^1.0.5&amp;quot;,&lt;br /&gt;
&amp;quot;node-icontrol&amp;quot;: &amp;quot;^0.1.4&amp;quot;,&lt;br /&gt;
&amp;quot;node-milight-promise&amp;quot;: &amp;quot;0.0.x&amp;quot;,&lt;br /&gt;
&amp;quot;tough-cookie&amp;quot;: &amp;quot;^2.0.0&amp;quot;,&lt;br /&gt;
&amp;quot;sonos&amp;quot;: &amp;quot;0.8.x&amp;quot;,&lt;br /&gt;
&amp;quot;telldus-live&amp;quot;: &amp;quot;0.2.x&amp;quot;,&lt;br /&gt;
&amp;quot;teslams&amp;quot;: &amp;quot;1.0.1&amp;quot;,&lt;br /&gt;
&amp;quot;unofficial-nest-api&amp;quot;: &amp;quot;git+https://github.com/hachidorii/unofficial_nodejs_nest.git#d8d48edc952b049ff6320ef99afa7b2f04cdee98&amp;quot;,&lt;br /&gt;
&amp;quot;wemo&amp;quot;: &amp;quot;0.2.x&amp;quot;,&lt;br /&gt;
&amp;quot;wink-js&amp;quot;: &amp;quot;0.0.5&amp;quot;,&lt;br /&gt;
&amp;quot;komponist&amp;quot; : &amp;quot;0.1.0&amp;quot;,&lt;br /&gt;
&amp;quot;yamaha-nodejs&amp;quot;: &amp;quot;0.4.x&amp;quot;,&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Das Konfig file sollte dann wie folgt aussehen: Achtung vor den letzten zwei } am Ende dar kein Komma sein.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;name&amp;quot;: &amp;quot;homebridge&amp;quot;,&lt;br /&gt;
  &amp;quot;description&amp;quot;: &amp;quot;HomeKit support for the impatient&amp;quot;,&lt;br /&gt;
  &amp;quot;version&amp;quot;: &amp;quot;0.1.1&amp;quot;,&lt;br /&gt;
  &amp;quot;scripts&amp;quot;: {&lt;br /&gt;
    &amp;quot;start&amp;quot;: &amp;quot;DEBUG=* node app.js || true&amp;quot;&lt;br /&gt;
  },&lt;br /&gt;
  &amp;quot;repository&amp;quot;: {&lt;br /&gt;
    &amp;quot;type&amp;quot;: &amp;quot;git&amp;quot;,&lt;br /&gt;
    &amp;quot;url&amp;quot;: &amp;quot;git://github.com/nfarina/homebridge.git&amp;quot;&lt;br /&gt;
  },&lt;br /&gt;
  &amp;quot;license&amp;quot;: &amp;quot;ISC&amp;quot;,&lt;br /&gt;
  &amp;quot;dependencies&amp;quot;: {&lt;br /&gt;
    &amp;quot;async&amp;quot;: &amp;quot;^1.4.2&amp;quot;,&lt;br /&gt;
    &amp;quot;color&amp;quot;: &amp;quot;0.10.x&amp;quot;,&lt;br /&gt;
    &amp;quot;debug&amp;quot;: &amp;quot;^2.2.0&amp;quot;,&lt;br /&gt;
    &amp;quot;hap-nodejs&amp;quot;: &amp;quot;^0.0.2&amp;quot;,&lt;br /&gt;
    &amp;quot;isy-js&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
    &amp;quot;mdns&amp;quot;: &amp;quot;^2.2.4&amp;quot;,&lt;br /&gt;
    &amp;quot;netatmo&amp;quot;: &amp;quot;1.3.0&amp;quot;,&lt;br /&gt;
    &amp;quot;node-cache&amp;quot;: &amp;quot;3.0.0&amp;quot;,&lt;br /&gt;
    &amp;quot;node-persist&amp;quot;: &amp;quot;0.0.x&amp;quot;,&lt;br /&gt;
    &amp;quot;node-xmpp-client&amp;quot;: &amp;quot;1.0.0-alpha23&amp;quot;,&lt;br /&gt;
    &amp;quot;q&amp;quot;: &amp;quot;1.4.x&amp;quot;,&lt;br /&gt;
    &amp;quot;queue&amp;quot;: &amp;quot;^3.1.0&amp;quot;,&lt;br /&gt;
    &amp;quot;request&amp;quot;: &amp;quot;2.49.x&amp;quot;,&lt;br /&gt;
    &amp;quot;xml2js&amp;quot;: &amp;quot;0.4.x&amp;quot;,&lt;br /&gt;
    &amp;quot;xmldoc&amp;quot;: &amp;quot;0.1.x&amp;quot;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Python, g++, MDNS installieren ==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
sudo apt-get install python&lt;br /&gt;
sudo apt-get install g++&lt;br /&gt;
sudo apt-get install libavahi-compat-libdnssd-dev&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Homebridge installieren ==&lt;br /&gt;
Die aktuelle Homebridge version wird mit&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
npm install -g homebridge&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
installiert, der FHEM platform shim mit&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;width:60%;&amp;quot;&amp;gt;&lt;br /&gt;
npm install -g https://github.com/justme-1968/homebridge-fhem.git&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== ERR während der Installation ==&lt;br /&gt;
Bei folgendem Fehler ist das abrufen von Github nicht möglich.&lt;br /&gt;
&amp;lt;pre&amp;gt;npm ERR! git clone --template=/home/hs-server-admin/.npm/_git-remotes/_templates --mirror &lt;br /&gt;
git://github.com/KhaosT/ed25519.git /home/hs-server-admin/.npm/_git-remotes/git-github-com-KhaosT-ed25519-git-d8bdee1d: &lt;br /&gt;
github.com[0: 192.30.252.128]: errno=Die Wartezeit für die Verbindung ist abgelaufen&amp;lt;/pre&amp;gt;&lt;br /&gt;
Fehlerursache konnte hier durch eine aktive Firewall verursacht werden.&lt;br /&gt;
&lt;br /&gt;
== Homebridge konfigurieren ==&lt;br /&gt;
Im Verzeichnis ~/.homebridge/ muss nun noch die config.json erstellt bzw. angepasst werden:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
nano config.json&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Homebridge muss nicht, kann aber auf dem selben Server laufen wie FHEM. &lt;br /&gt;
&lt;br /&gt;
Unter &amp;quot;server&amp;quot; muss die IP des FHEM-Servers und unter &amp;quot;port&amp;quot; der benutzte Port des benutzten FHEMWEBS eingetragen werden.&lt;br /&gt;
&lt;br /&gt;
Läuft der Homebridge Server auf dem gleichen Rechner wie FHEM, kann die IP 127.0.0.1 benutzt werden.&lt;br /&gt;
&lt;br /&gt;
WICHTIG: Damit nicht alle Devices von Homebridge berücksichtig werden, bietet es sich an, die Devices zu filtern. &lt;br /&gt;
&lt;br /&gt;
In diesem Beispiel wurden alle Devices, die über Siri steuerbar sein sollen zusätzlich in den ROOM Homekit per FHEM eingerichtet. &lt;br /&gt;
&lt;br /&gt;
Der PIN kann beliebig in dem Format xxx-xx-xxx angepasst werden. Dieser muss nur einmal bei der Einrichtung in iOS eingegeben werden.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
    &amp;quot;bridge&amp;quot;: {&lt;br /&gt;
        &amp;quot;name&amp;quot;: &amp;quot;Homebridge&amp;quot;,&lt;br /&gt;
        &amp;quot;username&amp;quot;: &amp;quot;CC:22:3D:E3:CE:30&amp;quot;,&lt;br /&gt;
        &amp;quot;port&amp;quot;: 51826,&lt;br /&gt;
        &amp;quot;pin&amp;quot;: &amp;quot;031-45-154&amp;quot;&lt;br /&gt;
    },&lt;br /&gt;
&lt;br /&gt;
    &amp;quot;platforms&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;platform&amp;quot;: &amp;quot;FHEM&amp;quot;,&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;FHEM&amp;quot;,&lt;br /&gt;
            &amp;quot;server&amp;quot;: &amp;quot;192.168.xxx.xxx&amp;quot;,&lt;br /&gt;
            &amp;quot;port&amp;quot;: &amp;quot;8083&amp;quot;,&lt;br /&gt;
            &amp;quot;filter&amp;quot;: &amp;quot;room=Homekit&amp;quot;,&lt;br /&gt;
            &amp;quot;auth&amp;quot;: {&amp;quot;user&amp;quot;: &amp;quot;FhemUser&amp;quot;, &amp;quot;pass&amp;quot;: &amp;quot;XXX&amp;quot;}&lt;br /&gt;
        }&lt;br /&gt;
     ],&lt;br /&gt;
&lt;br /&gt;
    &amp;quot;accessories&amp;quot;: []&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Achtung: Für ein FHEM Web Interface mit SSL Zertifikat muss die config wo folgt aussehen:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
    &amp;quot;bridge&amp;quot;: {&lt;br /&gt;
        &amp;quot;name&amp;quot;: &amp;quot;Homebridge&amp;quot;,&lt;br /&gt;
        &amp;quot;username&amp;quot;: &amp;quot;CC:22:3D:E3:CE:30&amp;quot;,&lt;br /&gt;
        &amp;quot;port&amp;quot;: 51826,&lt;br /&gt;
        &amp;quot;pin&amp;quot;: &amp;quot;031-45-154&amp;quot;&lt;br /&gt;
    },&lt;br /&gt;
&lt;br /&gt;
    &amp;quot;platforms&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;platform&amp;quot;: &amp;quot;FHEM&amp;quot;,&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;FHEM&amp;quot;,&lt;br /&gt;
            &amp;quot;server&amp;quot;: &amp;quot;192.168.xxx.xxx&amp;quot;,&lt;br /&gt;
            &amp;quot;port&amp;quot;: &amp;quot;8083&amp;quot;,&lt;br /&gt;
            &amp;quot;filter&amp;quot;: &amp;quot;room=Homekit&amp;quot;,&lt;br /&gt;
            &amp;quot;ssl&amp;quot;: &amp;quot;true&amp;quot;,&lt;br /&gt;
            &amp;quot;auth&amp;quot;: {&amp;quot;user&amp;quot;: &amp;quot;FhemUser&amp;quot;, &amp;quot;pass&amp;quot;: &amp;quot;XXX&amp;quot;}&lt;br /&gt;
        }&lt;br /&gt;
     ],&lt;br /&gt;
&lt;br /&gt;
    &amp;quot;accessories&amp;quot;: []&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== FHEM konfigurieren ==&lt;br /&gt;
Um die Device richtig mit FHEM und Homebridge vertraut zu machen, müssen wir noch unter global etwas ergänzen:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;perl&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
attr global userattr genericDeviceType:ignore,switch,outlet,light,blind,speaker,thermostat,ignore,lock,window,contact&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Einfach folgende Zeilen an die bestehenden Attribute anhängen:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;perl&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
genericDeviceType:ignore,switch,outlet,light,blind,speaker,thermostat,ignore,lock,window,contact&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Diese Einstellungen können auch bei den Einzelnen Devices gemacht werden.&lt;br /&gt;
Beispiel bei einem HM-CC-RT-DN, hier wird der subType thermostat gesetzt.&lt;br /&gt;
Einfach in das Device gehen hier das Attr subtype erstellen und thermostat auswählen.&lt;br /&gt;
&lt;br /&gt;
== Homebridge starten ==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
homebridge&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Hombridge sollte nun laufen.&lt;br /&gt;
Hier kann man die Kommunikation nachverfolgen.&lt;br /&gt;
Abbrechen kann das ganze mit ctrl +c.&lt;br /&gt;
Es sind keine Befehle mehr mit Siri möglich.&lt;br /&gt;
&lt;br /&gt;
Damit Siri auch Befehle ohne ständig offenes Terminal bearbeiten kann, bitten nächsten Punkt beachten.&lt;br /&gt;
&lt;br /&gt;
== Homebridge automatisch starten ==&lt;br /&gt;
Eine Anleitung um die Homebridge automatisch zu starten findet sich &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;Beide Links sind obsoloet da es die app.js nicht mehr gibt&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* hier: [https://github.com/nfarina/homebridge/wiki/Running-HomeBridge-on-a-Raspberry-Pi] oder&lt;br /&gt;
* [http://www.meintechblog.de/2015/10/mit-siri-und-fhem-das-gesamte-smart-home-per-stimme-steuern/]&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;&#039;&#039;Alternative Methode&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
sudo nano /etc/init.d/homebridge&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Code einfügen und ggf. den Pfad zu &amp;quot;.homebridge&amp;quot; anpassen&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=bash&amp;gt;&lt;br /&gt;
#!/bin/sh&lt;br /&gt;
### BEGIN INIT INFO&lt;br /&gt;
# Provides: homebridge&lt;br /&gt;
# Required-Start: $network $remote_fs $syslog&lt;br /&gt;
# Required-Stop: $remote_fs $syslog&lt;br /&gt;
# Default-Start: 2 3 4 5&lt;br /&gt;
# Default-Stop: 0 1 6&lt;br /&gt;
# Short-Description: Start daemon at boot time for homebridge&lt;br /&gt;
# Description: Enable service provided by daemon.&lt;br /&gt;
### END INIT INFO&lt;br /&gt;
export PATH=$PATH:/usr/local/bin&lt;br /&gt;
export NODE_PATH=$NODE_PATH:/usr/local/lib/node_modules&lt;br /&gt;
PID=`pidof homebridge`&lt;br /&gt;
case &amp;quot;$1&amp;quot; in&lt;br /&gt;
start)&lt;br /&gt;
if ps -p $PID &amp;gt; /dev/null 2&amp;gt;&amp;amp;1; then&lt;br /&gt;
        echo &amp;quot;Homebridge is already running&amp;quot;&lt;br /&gt;
else&lt;br /&gt;
        homebridge -U /home/pi/.homebridge/ &amp;gt; /dev/null 2&amp;gt;&amp;amp;1 &amp;amp;&lt;br /&gt;
        echo &amp;quot;Homebridge starting&amp;quot;&lt;br /&gt;
fi&lt;br /&gt;
;;&lt;br /&gt;
stop)&lt;br /&gt;
if ! ps -p $PID &amp;gt; /dev/null 2&amp;gt;&amp;amp;1; then&lt;br /&gt;
        echo &amp;quot;Homebridge is not running&amp;quot;&lt;br /&gt;
else&lt;br /&gt;
        kill $PID&lt;br /&gt;
        echo &amp;quot;Homebridge closed&amp;quot;&lt;br /&gt;
fi&lt;br /&gt;
;;&lt;br /&gt;
restart)&lt;br /&gt;
if ! ps -p $PID &amp;gt; /dev/null 2&amp;gt;&amp;amp;1; then&lt;br /&gt;
        homebridge -U /home/pi/.homebridge/ &amp;gt; /dev/null 2&amp;gt;&amp;amp;1 &amp;amp;&lt;br /&gt;
        echo &amp;quot;Homebridge starting&amp;quot;&lt;br /&gt;
else&lt;br /&gt;
        kill $PID&lt;br /&gt;
        echo &amp;quot;Homebridge closed&amp;quot;&lt;br /&gt;
        homebridge -U /home/pi/.homebridge/ &amp;gt; /dev/null 2&amp;gt;&amp;amp;1 &amp;amp;&lt;br /&gt;
        echo &amp;quot;Homebridge starting&amp;quot;&lt;br /&gt;
fi&lt;br /&gt;
;;&lt;br /&gt;
status)&lt;br /&gt;
if ps -p $PID &amp;gt; /dev/null 2&amp;gt;&amp;amp;1; then&lt;br /&gt;
        echo &amp;quot;Homebridge is running PID $PID&amp;quot;&lt;br /&gt;
else&lt;br /&gt;
        echo &amp;quot;Homebridge is not running&amp;quot;&lt;br /&gt;
fi&lt;br /&gt;
;;&lt;br /&gt;
*)&lt;br /&gt;
echo &amp;quot;Usage: /etc/init.d/homebridge {start|stop|status|restart}&amp;quot;&lt;br /&gt;
exit 1&lt;br /&gt;
;;&lt;br /&gt;
esac&lt;br /&gt;
exit 0&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Autostart aktivieren&#039;&#039;&#039;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
sudo chmod 755 /etc/init.d/homebridge&lt;br /&gt;
sudo update-rc.d homebridge defaults&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Nun kann man mit &lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
sudo service homebridge start&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
bzw.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&lt;br /&gt;
sudo /etc/init.d/homebridge start&lt;br /&gt;
&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
den Dienst starten&lt;br /&gt;
&lt;br /&gt;
== FHEM Device Einstellungen ==&lt;br /&gt;
Damit die zu schaltenden Geräte überhaupt in der Homebridge aufgenommen werden muss man sie im Raum Homekit hinzufügen.&lt;br /&gt;
&lt;br /&gt;
Um HM-CC-RT-DN Thermostate steuern zu können, muss folgendes attribute gesetzt werden&lt;br /&gt;
# attr Heizung Subtype thermostat&lt;br /&gt;
Für einen Dummy muss man folgendes machen.&lt;br /&gt;
# attr Dummy genericDeviceType switch&lt;br /&gt;
# attr Dummy setList on off&lt;br /&gt;
&lt;br /&gt;
== HomeKit in iOS einrichten ==&lt;br /&gt;
Um FHEM über Homebridge in iOS nutzen zu können, muss HomeKit eingerichtet werden. &lt;br /&gt;
&lt;br /&gt;
Es gibt verschiedene Apps. Im folgenden wird die App EVE von Elgato empfohlen, die aus dem App-Store geladen werden muss.&lt;br /&gt;
In der App auf:&lt;br /&gt;
&amp;lt;pre style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
Gerät hinzufügen&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Es sollte ein Gerät mit der Bezeichnung &amp;quot;Homebridge&amp;quot; zur Auswahl erscheinen. Zur Ersteinrichtung auf PIN manuell eingeben gehen und (falls in der config.json nicht geändert):&lt;br /&gt;
&amp;lt;pre style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
031-45-154&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
eingeben.&lt;br /&gt;
&lt;br /&gt;
Im Anschluss können die Devices nach Belieben in verschiedene Räume zugeteilt werden, sowie Szenen und Bereiche erstellt werden.&lt;br /&gt;
&lt;br /&gt;
== HomeBridge Allgemein ==&lt;br /&gt;
Nach allen Änderungen die in FHEM gemacht werden, welche Homebridge betreffen, muss Homebridge neu gestartet werden.&lt;br /&gt;
&lt;br /&gt;
Der Neustart ist abhängig davon, wie man Homebridge gestartet hat.&lt;br /&gt;
&lt;br /&gt;
Bitte den entsprechenden Methoden entnehmen.&lt;br /&gt;
&lt;br /&gt;
== Steuerung von MiLight Allgemein ==&lt;br /&gt;
Wie hier im Forum http://forum.fhem.de/index.php/topic,32652.msg351706.html#msg351706 erwähnt, ist es möglich auch MiLight gGeräte per Siri anzusprechen.&lt;br /&gt;
Hierzu muss die config.jason angepasst werden.&lt;br /&gt;
&lt;br /&gt;
1. Es muss die Bridge hinterlegt werden. Beispiel&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;platform&amp;quot;: &amp;quot;MiLight&amp;quot;,&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;MiLight&amp;quot;,&lt;br /&gt;
            &amp;quot;ip_address&amp;quot;: &amp;quot;192.168.001.033&amp;quot;,&lt;br /&gt;
            &amp;quot;port&amp;quot;: 8899,&lt;br /&gt;
            &amp;quot;type&amp;quot;: &amp;quot;rgbw&amp;quot;,&lt;br /&gt;
            &amp;quot;delay&amp;quot;: 30,&lt;br /&gt;
            &amp;quot;repeat&amp;quot;: 3,&lt;br /&gt;
            &amp;quot;zones&amp;quot;:[&amp;quot;Wohnzimmer Lampen&amp;quot;,&amp;quot;Badezimmer Lampen&amp;quot;,&amp;quot;Büro Lampen&amp;quot;,&amp;quot;Keller Lampen&amp;quot;]&lt;br /&gt;
        },&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Es muss für jedes zu Steuernde Gerät ein Dummy angelegt werden. Beispiel:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;accessory&amp;quot;: &amp;quot;Http&amp;quot;,&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;Kitchen Lamp&amp;quot;,&lt;br /&gt;
            &amp;quot;on_url&amp;quot;: &amp;quot;https://192.168.1.22:3030/devices/23222/on&amp;quot;,&lt;br /&gt;
            &amp;quot;off_url&amp;quot;: &amp;quot;https://192.168.1.22:3030/devices/23222/off&amp;quot;,&lt;br /&gt;
            &amp;quot;brightness_url&amp;quot;: &amp;quot;https://192.168.1.22:3030/devices/23222/brightness/%b&amp;quot;,&lt;br /&gt;
            &amp;quot;http_method&amp;quot;: &amp;quot;POST&amp;quot;&lt;br /&gt;
        },&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Schalten mit Siri ==&lt;br /&gt;
&#039;&#039;&#039;HolyMoly&#039;&#039;&#039; aus dem FHEM-Forum hat ein paar Beispiele gegeben, wie man Siri dazu bringt Devices zu schalten:&lt;br /&gt;
&amp;lt;pre style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;quot;Schalte alle Lampen im Obergeschoss ein.&amp;quot;&lt;br /&gt;
&amp;quot;Schalte Chloes Licht aus.&amp;quot;&lt;br /&gt;
&amp;quot;Dimme das Licht in der Küche.&amp;quot;&lt;br /&gt;
&amp;quot;Dimme das Licht im Esszimmer auf 50 %.&amp;quot;&lt;br /&gt;
&amp;quot;Stelle das Licht in der Küche am hellsten ein.&amp;quot;&lt;br /&gt;
&amp;quot;Stelle die Temperatur im Tahoe-Haus auf 22 °C ein.&amp;quot;&lt;br /&gt;
&amp;quot;Stelle das Thermostat im Erdgeschoss auf 21 °C ein.&lt;br /&gt;
&amp;quot;Schalte den Drucker im Büro ein.&amp;quot;&lt;br /&gt;
&amp;quot;Siri, bereite alles für eine Party vor.&amp;quot;&lt;br /&gt;
&amp;quot;Bereite das Ambiente fürs Abendessen vor.&amp;quot;&lt;br /&gt;
&amp;quot;Aktiviere den Nachtruhemodus.&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mittlerweile kann Siri auch noch die Lichtfarbe von LEDs ändern.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Unterstütze Devices ==&lt;br /&gt;
Das Fhem Plugin von {{Link2FU|430|Andre (justme1968)}} unterstützt folgende Geräte&lt;br /&gt;
&lt;br /&gt;
    switches (devices with set on and set off commands)&lt;br /&gt;
    lights (devices with set on and set off commands)&lt;br /&gt;
    homematc and FS20 dimmers (devices with set on, set off and set dim or set pct commands)&lt;br /&gt;
    HUE, WifiLight, SWAP_0000002200000003 (hue, sat, bri, rgb)&lt;br /&gt;
    homematic, max and pid20 thermostats&lt;br /&gt;
    homematic blinds&lt;br /&gt;
    hommatic, MAX and FHTTK contact sensors (door, window)&lt;br /&gt;
    HM-SEC-WIN, HM-SEC-KEY&lt;br /&gt;
    presence, ROOMMATE&lt;br /&gt;
    SONOS (power, volume)&lt;br /&gt;
    harmony scenes&lt;br /&gt;
    temperaturecw and humidity sensors&lt;br /&gt;
    CO20 air quality sensor&lt;br /&gt;
    probably some more ...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:HOWTOS]]&lt;/div&gt;</summary>
		<author><name>Netbus</name></author>
	</entry>
	<entry>
		<id>http://wiki.fhem.de/w/index.php?title=Homebridge_einrichten&amp;diff=12859</id>
		<title>Homebridge einrichten</title>
		<link rel="alternate" type="text/html" href="http://wiki.fhem.de/w/index.php?title=Homebridge_einrichten&amp;diff=12859"/>
		<updated>2015-11-11T09:03:40Z</updated>

		<summary type="html">&lt;p&gt;Netbus: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dieses HOWTO zeigt die Installation und Erstinbetriebnahme von Homebridge. &lt;br /&gt;
&lt;br /&gt;
Damit kann Siri benutzt werden, um FHEM-Devices zu steuern. So können Devices angesprochen werden, die offiziell HomeKit nicht unterstützen (die Vorgehensweise wurde auf einem Intel NUC mit Ubuntu Server 14.04 LTS und auf einem Raspberry Pi mit Raspian getestet).&lt;br /&gt;
&lt;br /&gt;
Um Homebridge erfolgreich zu installieren, müssen zunächst NPM, NodeJS, Python, g++, MDNS, sowie benötigte Hilfspakete installiert werden:&lt;br /&gt;
&lt;br /&gt;
Der WIKI-Eintrag bezieht sich hauptsächlich auf diese {{Link2Forum|Topic=32652|LinkText=Diskussion im FHEM-Forum}}. Ein Riesendank gilt vor allem {{Link2FU|430|Andre (justme1968)}}.&lt;br /&gt;
&lt;br /&gt;
Eine Sammlung funktionsfähiger Homebridge FHEM Konfiguration können hier gefunden werden http://www.fhemwiki.de/wiki/Hombridge_User_Configs&lt;br /&gt;
Die Sammlung befindet sich noch im Aufbau&lt;br /&gt;
&lt;br /&gt;
== NodeJS installieren ==&lt;br /&gt;
In der Konsole folgende Befehle eingeben:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get upgrade&lt;br /&gt;
sudo apt-get install build-essential libssl-dev&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
UPDATE: Homebridge funktioniert mit einer kleinen Einschränkung nun auch mit node 4.0.0. Laut&lt;br /&gt;
[https://github.com/cflurin/homebridge-shims/wiki/Minimalist-Homebridge-on-a-Raspberry-Pi Homebridge on a Raspberry Pi] müssen die folgenden Abhängigkeiten (Dependencies) aus der &#039;&#039;&#039;package.json&#039;&#039;&#039; entfernt werden:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;quot;harmonyhubjs-client&amp;quot;: &amp;quot;^1.1.4&amp;quot;,&lt;br /&gt;
&amp;quot;harmonyhubjs-discover&amp;quot;: &amp;quot;git+https://github.com/swissmanu/harmonyhubjs-discover.git&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Damit es auf einem Raspberry schneller läuft wird darüber hinaus empfohlen auch diese Abhängigkeiten aus der &#039;&#039;&#039;package.json&#039;&#039;&#039; zu entfernen:&lt;br /&gt;
&lt;br /&gt;
Vorher noch ein ein Backup der Datei anlegen &lt;br /&gt;
&amp;lt;pre&amp;gt;cp package.json package.json.bkp oder sudo cp package.json package.json.bkp &amp;lt;/pre&amp;gt;&lt;br /&gt;
Am einfachsten geht das entfernen der Zeilen mit dem Editor vi.&lt;br /&gt;
&amp;lt;!-- Bist Du sicher, dass &amp;quot;vi&amp;quot; das Einfachste ist? Ist nicht auf vielen Linux Systemen &lt;br /&gt;
     mittlerweile auch der &amp;quot;nano&amp;quot; Editor drauf? Der dürfte eigentlich !noch! einfacher sein.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;vi package.json oder sudo vi package.json&amp;lt;/pre&amp;gt;&lt;br /&gt;
Mit dem Cursor vor die entsprechende Zeile gehen und mit zwei mal Taste d (dd tippen) wird die Zeile gelöscht.&lt;br /&gt;
&lt;br /&gt;
Eventuell muss vi mit sudo vi aufgerufen werden, je nach verwendeter Distribution.&lt;br /&gt;
&lt;br /&gt;
Gespeichert wird dann mit folgendem Ablauf: ESC :wq! Enter&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;quot;ad2usb&amp;quot;: &amp;quot;git+https://github.com/alistairg/node-ad2usb.git#local&amp;quot;,&lt;br /&gt;
&amp;quot;carwingsjs&amp;quot;: &amp;quot;0.0.x&amp;quot;,&lt;br /&gt;
&amp;quot;chokidar&amp;quot;: &amp;quot;^1.0.5&amp;quot;,&lt;br /&gt;
&amp;quot;eibd&amp;quot;: &amp;quot;^0.3.1&amp;quot;,&lt;br /&gt;
&amp;quot;elkington&amp;quot;: &amp;quot;kevinohara80/elkington&amp;quot;,&lt;br /&gt;
&amp;quot;harmonyhubjs-client&amp;quot;: &amp;quot;^1.1.4&amp;quot;,&lt;br /&gt;
&amp;quot;harmonyhubjs-discover&amp;quot;: &amp;quot;git+https://github.com/swissmanu/harmonyhubjs-discover.git&amp;quot;,&lt;br /&gt;
&amp;quot;lifx-api&amp;quot;: &amp;quot;^1.0.1&amp;quot;,&lt;br /&gt;
&amp;quot;lifx&amp;quot;: &amp;quot;git+https://github.com/magicmonkey/lifxjs.git&amp;quot;,&lt;br /&gt;
&amp;quot;node-hue-api&amp;quot;: &amp;quot;^1.0.5&amp;quot;,&lt;br /&gt;
&amp;quot;node-icontrol&amp;quot;: &amp;quot;^0.1.4&amp;quot;,&lt;br /&gt;
&amp;quot;node-milight-promise&amp;quot;: &amp;quot;0.0.x&amp;quot;,&lt;br /&gt;
&amp;quot;tough-cookie&amp;quot;: &amp;quot;^2.0.0&amp;quot;,&lt;br /&gt;
&amp;quot;sonos&amp;quot;: &amp;quot;0.8.x&amp;quot;,&lt;br /&gt;
&amp;quot;telldus-live&amp;quot;: &amp;quot;0.2.x&amp;quot;,&lt;br /&gt;
&amp;quot;teslams&amp;quot;: &amp;quot;1.0.1&amp;quot;,&lt;br /&gt;
&amp;quot;unofficial-nest-api&amp;quot;: &amp;quot;git+https://github.com/hachidorii/unofficial_nodejs_nest.git#d8d48edc952b049ff6320ef99afa7b2f04cdee98&amp;quot;,&lt;br /&gt;
&amp;quot;wemo&amp;quot;: &amp;quot;0.2.x&amp;quot;,&lt;br /&gt;
&amp;quot;wink-js&amp;quot;: &amp;quot;0.0.5&amp;quot;,&lt;br /&gt;
&amp;quot;komponist&amp;quot; : &amp;quot;0.1.0&amp;quot;,&lt;br /&gt;
&amp;quot;yamaha-nodejs&amp;quot;: &amp;quot;0.4.x&amp;quot;,&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Das Konfig file sollte dann wie folgt aussehen: Achtung vor den letzten zwei } am Ende dar kein Komma sein.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;name&amp;quot;: &amp;quot;homebridge&amp;quot;,&lt;br /&gt;
  &amp;quot;description&amp;quot;: &amp;quot;HomeKit support for the impatient&amp;quot;,&lt;br /&gt;
  &amp;quot;version&amp;quot;: &amp;quot;0.1.1&amp;quot;,&lt;br /&gt;
  &amp;quot;scripts&amp;quot;: {&lt;br /&gt;
    &amp;quot;start&amp;quot;: &amp;quot;DEBUG=* node app.js || true&amp;quot;&lt;br /&gt;
  },&lt;br /&gt;
  &amp;quot;repository&amp;quot;: {&lt;br /&gt;
    &amp;quot;type&amp;quot;: &amp;quot;git&amp;quot;,&lt;br /&gt;
    &amp;quot;url&amp;quot;: &amp;quot;git://github.com/nfarina/homebridge.git&amp;quot;&lt;br /&gt;
  },&lt;br /&gt;
  &amp;quot;license&amp;quot;: &amp;quot;ISC&amp;quot;,&lt;br /&gt;
  &amp;quot;dependencies&amp;quot;: {&lt;br /&gt;
    &amp;quot;async&amp;quot;: &amp;quot;^1.4.2&amp;quot;,&lt;br /&gt;
    &amp;quot;color&amp;quot;: &amp;quot;0.10.x&amp;quot;,&lt;br /&gt;
    &amp;quot;debug&amp;quot;: &amp;quot;^2.2.0&amp;quot;,&lt;br /&gt;
    &amp;quot;hap-nodejs&amp;quot;: &amp;quot;^0.0.2&amp;quot;,&lt;br /&gt;
    &amp;quot;isy-js&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
    &amp;quot;mdns&amp;quot;: &amp;quot;^2.2.4&amp;quot;,&lt;br /&gt;
    &amp;quot;netatmo&amp;quot;: &amp;quot;1.3.0&amp;quot;,&lt;br /&gt;
    &amp;quot;node-cache&amp;quot;: &amp;quot;3.0.0&amp;quot;,&lt;br /&gt;
    &amp;quot;node-persist&amp;quot;: &amp;quot;0.0.x&amp;quot;,&lt;br /&gt;
    &amp;quot;node-xmpp-client&amp;quot;: &amp;quot;1.0.0-alpha23&amp;quot;,&lt;br /&gt;
    &amp;quot;q&amp;quot;: &amp;quot;1.4.x&amp;quot;,&lt;br /&gt;
    &amp;quot;queue&amp;quot;: &amp;quot;^3.1.0&amp;quot;,&lt;br /&gt;
    &amp;quot;request&amp;quot;: &amp;quot;2.49.x&amp;quot;,&lt;br /&gt;
    &amp;quot;xml2js&amp;quot;: &amp;quot;0.4.x&amp;quot;,&lt;br /&gt;
    &amp;quot;xmldoc&amp;quot;: &amp;quot;0.1.x&amp;quot;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Python, g++, MDNS installieren ==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
sudo apt-get install python&lt;br /&gt;
sudo apt-get install g++&lt;br /&gt;
sudo apt-get install libavahi-compat-libdnssd-dev&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Homebridge installieren ==&lt;br /&gt;
Die aktuelle Homebridge version wird mit&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
npm install -g homebridge&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
installiert, der FHEM platform shim mit&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;width:60%;&amp;quot;&amp;gt;&lt;br /&gt;
npm install -g https://github.com/justme-1968/homebridge-fhem.git&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== ERR während der Installation ==&lt;br /&gt;
Bei folgendem Fehler ist das abrufen von Github nicht möglich.&lt;br /&gt;
&amp;lt;pre&amp;gt;npm ERR! git clone --template=/home/hs-server-admin/.npm/_git-remotes/_templates --mirror &lt;br /&gt;
git://github.com/KhaosT/ed25519.git /home/hs-server-admin/.npm/_git-remotes/git-github-com-KhaosT-ed25519-git-d8bdee1d: &lt;br /&gt;
github.com[0: 192.30.252.128]: errno=Die Wartezeit für die Verbindung ist abgelaufen&amp;lt;/pre&amp;gt;&lt;br /&gt;
Fehlerursache konnte hier durch eine aktive Firewall verursacht werden.&lt;br /&gt;
&lt;br /&gt;
== Homebridge konfigurieren ==&lt;br /&gt;
Im Verzeichnis ~/.homebridge/ muss nun noch die config.json erstellt bzw. angepasst werden:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
nano config.json&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Homebridge muss nicht, kann aber auf dem selben Server laufen wie FHEM. &lt;br /&gt;
&lt;br /&gt;
Unter &amp;quot;server&amp;quot; muss die IP des FHEM-Servers und unter &amp;quot;port&amp;quot; der benutzte Port des benutzten FHEMWEBS eingetragen werden.&lt;br /&gt;
&lt;br /&gt;
Läuft der Homebridge Server auf dem gleichen Rechner wie FHEM, kann die IP 127.0.0.1 benutzt werden.&lt;br /&gt;
&lt;br /&gt;
WICHTIG: Damit nicht alle Devices von Homebridge berücksichtig werden, bietet es sich an, die Devices zu filtern. &lt;br /&gt;
&lt;br /&gt;
In diesem Beispiel wurden alle Devices, die über Siri steuerbar sein sollen zusätzlich in den ROOM Homekit per FHEM eingerichtet. &lt;br /&gt;
&lt;br /&gt;
Der PIN kann beliebig in dem Format xxx-xx-xxx angepasst werden. Dieser muss nur einmal bei der Einrichtung in iOS eingegeben werden.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
    &amp;quot;bridge&amp;quot;: {&lt;br /&gt;
        &amp;quot;name&amp;quot;: &amp;quot;Homebridge&amp;quot;,&lt;br /&gt;
        &amp;quot;username&amp;quot;: &amp;quot;CC:22:3D:E3:CE:30&amp;quot;,&lt;br /&gt;
        &amp;quot;port&amp;quot;: 51826,&lt;br /&gt;
        &amp;quot;pin&amp;quot;: &amp;quot;031-45-154&amp;quot;&lt;br /&gt;
    },&lt;br /&gt;
&lt;br /&gt;
    &amp;quot;platforms&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;platform&amp;quot;: &amp;quot;FHEM&amp;quot;,&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;FHEM&amp;quot;,&lt;br /&gt;
            &amp;quot;server&amp;quot;: &amp;quot;192.168.xxx.xxx&amp;quot;,&lt;br /&gt;
            &amp;quot;port&amp;quot;: &amp;quot;8083&amp;quot;,&lt;br /&gt;
            &amp;quot;filter&amp;quot;: &amp;quot;room=Homekit&amp;quot;,&lt;br /&gt;
            &amp;quot;auth&amp;quot;: {&amp;quot;user&amp;quot;: &amp;quot;FhemUser&amp;quot;, &amp;quot;pass&amp;quot;: &amp;quot;XXX&amp;quot;}&lt;br /&gt;
        }&lt;br /&gt;
     ],&lt;br /&gt;
&lt;br /&gt;
    &amp;quot;accessories&amp;quot;: []&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Achtung: Für ein FHEM Web Interface mit SSL Zertifikat muss die config wo folgt aussehen:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
    &amp;quot;bridge&amp;quot;: {&lt;br /&gt;
        &amp;quot;name&amp;quot;: &amp;quot;Homebridge&amp;quot;,&lt;br /&gt;
        &amp;quot;username&amp;quot;: &amp;quot;CC:22:3D:E3:CE:30&amp;quot;,&lt;br /&gt;
        &amp;quot;port&amp;quot;: 51826,&lt;br /&gt;
        &amp;quot;pin&amp;quot;: &amp;quot;031-45-154&amp;quot;&lt;br /&gt;
    },&lt;br /&gt;
&lt;br /&gt;
    &amp;quot;platforms&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;platform&amp;quot;: &amp;quot;FHEM&amp;quot;,&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;FHEM&amp;quot;,&lt;br /&gt;
            &amp;quot;server&amp;quot;: &amp;quot;192.168.xxx.xxx&amp;quot;,&lt;br /&gt;
            &amp;quot;port&amp;quot;: &amp;quot;8083&amp;quot;,&lt;br /&gt;
            &amp;quot;filter&amp;quot;: &amp;quot;room=Homekit&amp;quot;,&lt;br /&gt;
            &amp;quot;ssl&amp;quot;: &amp;quot;true&amp;quot;,&lt;br /&gt;
            &amp;quot;auth&amp;quot;: {&amp;quot;user&amp;quot;: &amp;quot;FhemUser&amp;quot;, &amp;quot;pass&amp;quot;: &amp;quot;XXX&amp;quot;}&lt;br /&gt;
        }&lt;br /&gt;
     ],&lt;br /&gt;
&lt;br /&gt;
    &amp;quot;accessories&amp;quot;: []&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== FHEM konfigurieren ==&lt;br /&gt;
Um die Device richtig mit FHEM und Homebridge vertraut zu machen, müssen wir noch unter global etwas ergänzen:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;perl&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
attr global userattr genericDeviceType:ignore,switch,outlet,light,blind,speaker,thermostat,ignore,lock,window,contact&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Einfach folgende Zeilen an die bestehenden Attribute anhängen:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;perl&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
genericDeviceType:ignore,switch,outlet,light,blind,speaker,thermostat,ignore,lock,window,contact&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Diese Einstellungen können auch bei den Einzelnen Devices gemacht werden.&lt;br /&gt;
Beispiel bei einem HM-CC-RT-DN, hier wird der subType thermostat gesetzt.&lt;br /&gt;
Einfach in das Device gehen hier das Attr subtype erstellen und thermostat auswählen.&lt;br /&gt;
&lt;br /&gt;
== Homebridge starten ==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
homebridge&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Hombridge sollte nun laufen.&lt;br /&gt;
Hier kann man die Kommunikation nachverfolgen.&lt;br /&gt;
Abbrechen kann das ganze mit ctrl +c.&lt;br /&gt;
Es sind keine Befehle mehr mit Siri möglich.&lt;br /&gt;
&lt;br /&gt;
Damit Siri auch Befehle ohne ständig offenes Terminal bearbeiten kann, bitten nächsten Punkt beachten.&lt;br /&gt;
&lt;br /&gt;
== Homebridge automatisch starten ==&lt;br /&gt;
Eine Anleitung um die Homebridge automatisch zu starten findet sich &lt;br /&gt;
* hier: [https://github.com/nfarina/homebridge/wiki/Running-HomeBridge-on-a-Raspberry-Pi] oder&lt;br /&gt;
* [http://www.meintechblog.de/2015/10/mit-siri-und-fhem-das-gesamte-smart-home-per-stimme-steuern/]&lt;br /&gt;
&lt;br /&gt;
Link 2 arbeitet mit den von Ubuntu bekannten Services. So ist es möglich mit z.B. sudo service homebridge start/stop/status&lt;br /&gt;
&lt;br /&gt;
== FHEM Device Einstellungen ==&lt;br /&gt;
Damit die zu schaltenden Geräte überhaupt in der Homebridge aufgenommen werden muss man sie im Raum Homekit hinzufügen.&lt;br /&gt;
&lt;br /&gt;
Um HM-CC-RT-DN Thermostate steuern zu können, muss folgendes attribute gesetzt werden&lt;br /&gt;
# attr Heizung Subtype thermostat&lt;br /&gt;
Für einen Dummy muss man folgendes machen.&lt;br /&gt;
# attr Dummy genericDeviceType switch&lt;br /&gt;
# attr Dummy setList on off&lt;br /&gt;
&lt;br /&gt;
== HomeKit in iOS einrichten ==&lt;br /&gt;
Um FHEM über Homebridge in iOS nutzen zu können, muss HomeKit eingerichtet werden. &lt;br /&gt;
&lt;br /&gt;
Es gibt verschiedene Apps. Im folgenden wird die App EVE von Elgato empfohlen, die aus dem App-Store geladen werden muss.&lt;br /&gt;
In der App auf:&lt;br /&gt;
&amp;lt;pre style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
Gerät hinzufügen&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Es sollte ein Gerät mit der Bezeichnung &amp;quot;Homebridge&amp;quot; zur Auswahl erscheinen. Zur Ersteinrichtung auf PIN manuell eingeben gehen und (falls in der config.json nicht geändert):&lt;br /&gt;
&amp;lt;pre style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
031-45-154&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
eingeben.&lt;br /&gt;
&lt;br /&gt;
Im Anschluss können die Devices nach Belieben in verschiedene Räume zugeteilt werden, sowie Szenen und Bereiche erstellt werden.&lt;br /&gt;
&lt;br /&gt;
== HomeBridge Allgemein ==&lt;br /&gt;
Nach allen Änderungen die in FHEM gemacht werden, welche Homebridge betreffen, muss Homebridge neu gestartet werden.&lt;br /&gt;
&lt;br /&gt;
Der Neustart ist abhängig davon, wie man Homebridge gestartet hat.&lt;br /&gt;
&lt;br /&gt;
Bitte den entsprechenden Methoden entnehmen.&lt;br /&gt;
&lt;br /&gt;
== Steuerung von MiLight Allgemein ==&lt;br /&gt;
Wie hier im Forum http://forum.fhem.de/index.php/topic,32652.msg351706.html#msg351706 erwähnt, ist es möglich auch MiLight gGeräte per Siri anzusprechen.&lt;br /&gt;
Hierzu muss die config.jason angepasst werden.&lt;br /&gt;
&lt;br /&gt;
1. Es muss die Bridge hinterlegt werden. Beispiel&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;platform&amp;quot;: &amp;quot;MiLight&amp;quot;,&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;MiLight&amp;quot;,&lt;br /&gt;
            &amp;quot;ip_address&amp;quot;: &amp;quot;192.168.001.033&amp;quot;,&lt;br /&gt;
            &amp;quot;port&amp;quot;: 8899,&lt;br /&gt;
            &amp;quot;type&amp;quot;: &amp;quot;rgbw&amp;quot;,&lt;br /&gt;
            &amp;quot;delay&amp;quot;: 30,&lt;br /&gt;
            &amp;quot;repeat&amp;quot;: 3,&lt;br /&gt;
            &amp;quot;zones&amp;quot;:[&amp;quot;Wohnzimmer Lampen&amp;quot;,&amp;quot;Badezimmer Lampen&amp;quot;,&amp;quot;Büro Lampen&amp;quot;,&amp;quot;Keller Lampen&amp;quot;]&lt;br /&gt;
        },&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Es muss für jedes zu Steuernde Gerät ein Dummy angelegt werden. Beispiel:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;accessory&amp;quot;: &amp;quot;Http&amp;quot;,&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;Kitchen Lamp&amp;quot;,&lt;br /&gt;
            &amp;quot;on_url&amp;quot;: &amp;quot;https://192.168.1.22:3030/devices/23222/on&amp;quot;,&lt;br /&gt;
            &amp;quot;off_url&amp;quot;: &amp;quot;https://192.168.1.22:3030/devices/23222/off&amp;quot;,&lt;br /&gt;
            &amp;quot;brightness_url&amp;quot;: &amp;quot;https://192.168.1.22:3030/devices/23222/brightness/%b&amp;quot;,&lt;br /&gt;
            &amp;quot;http_method&amp;quot;: &amp;quot;POST&amp;quot;&lt;br /&gt;
        },&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Schalten mit Siri ==&lt;br /&gt;
&#039;&#039;&#039;HolyMoly&#039;&#039;&#039; aus dem FHEM-Forum hat ein paar Beispiele gegeben, wie man Siri dazu bringt Devices zu schalten:&lt;br /&gt;
&amp;lt;pre style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;quot;Schalte alle Lampen im Obergeschoss ein.&amp;quot;&lt;br /&gt;
&amp;quot;Schalte Chloes Licht aus.&amp;quot;&lt;br /&gt;
&amp;quot;Dimme das Licht in der Küche.&amp;quot;&lt;br /&gt;
&amp;quot;Dimme das Licht im Esszimmer auf 50 %.&amp;quot;&lt;br /&gt;
&amp;quot;Stelle das Licht in der Küche am hellsten ein.&amp;quot;&lt;br /&gt;
&amp;quot;Stelle die Temperatur im Tahoe-Haus auf 22 °C ein.&amp;quot;&lt;br /&gt;
&amp;quot;Stelle das Thermostat im Erdgeschoss auf 21 °C ein.&lt;br /&gt;
&amp;quot;Schalte den Drucker im Büro ein.&amp;quot;&lt;br /&gt;
&amp;quot;Siri, bereite alles für eine Party vor.&amp;quot;&lt;br /&gt;
&amp;quot;Bereite das Ambiente fürs Abendessen vor.&amp;quot;&lt;br /&gt;
&amp;quot;Aktiviere den Nachtruhemodus.&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mittlerweile kann Siri auch noch die Lichtfarbe von LEDs ändern.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Unterstütze Devices ==&lt;br /&gt;
Das Fhem Plugin von {{Link2FU|430|Andre (justme1968)}} unterstützt folgende Geräte&lt;br /&gt;
&lt;br /&gt;
    switches (devices with set on and set off commands)&lt;br /&gt;
    lights (devices with set on and set off commands)&lt;br /&gt;
    homematc and FS20 dimmers (devices with set on, set off and set dim or set pct commands)&lt;br /&gt;
    HUE, WifiLight, SWAP_0000002200000003 (hue, sat, bri, rgb)&lt;br /&gt;
    homematic, max and pid20 thermostats&lt;br /&gt;
    homematic blinds&lt;br /&gt;
    hommatic, MAX and FHTTK contact sensors (door, window)&lt;br /&gt;
    HM-SEC-WIN, HM-SEC-KEY&lt;br /&gt;
    presence, ROOMMATE&lt;br /&gt;
    SONOS (power, volume)&lt;br /&gt;
    harmony scenes&lt;br /&gt;
    temperaturecw and humidity sensors&lt;br /&gt;
    CO20 air quality sensor&lt;br /&gt;
    probably some more ...&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:HOWTOS]]&lt;/div&gt;</summary>
		<author><name>Netbus</name></author>
	</entry>
	<entry>
		<id>http://wiki.fhem.de/w/index.php?title=Homebridge_einrichten&amp;diff=12858</id>
		<title>Homebridge einrichten</title>
		<link rel="alternate" type="text/html" href="http://wiki.fhem.de/w/index.php?title=Homebridge_einrichten&amp;diff=12858"/>
		<updated>2015-11-11T08:55:31Z</updated>

		<summary type="html">&lt;p&gt;Netbus: /* FHEM Device Einstellungen */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dieses HOWTO zeigt die Installation und Erstinbetriebnahme von Homebridge. &lt;br /&gt;
&lt;br /&gt;
Damit kann Siri benutzt werden, um FHEM-Devices zu steuern. So können Devices angesprochen werden, die offiziell HomeKit nicht unterstützen (die Vorgehensweise wurde auf einem Intel NUC mit Ubuntu Server 14.04 LTS und auf einem Raspberry Pi mit Raspian getestet).&lt;br /&gt;
&lt;br /&gt;
Um Homebridge erfolgreich zu installieren, müssen zunächst NPM, NodeJS, Python, g++, MDNS, sowie benötigte Hilfspakete installiert werden:&lt;br /&gt;
&lt;br /&gt;
Der WIKI-Eintrag bezieht sich hauptsächlich auf diese {{Link2Forum|Topic=32652|LinkText=Diskussion im FHEM-Forum}}. Ein Riesendank gilt vor allem {{Link2FU|430|Andre (justme1968)}}.&lt;br /&gt;
&lt;br /&gt;
Eine Sammlung funktionsfähiger Homebridge FHEM Konfiguration können hier gefunden werden http://www.fhemwiki.de/wiki/Hombridge_User_Configs&lt;br /&gt;
Die Sammlung befindet sich noch im Aufbau&lt;br /&gt;
&lt;br /&gt;
== NodeJS installieren ==&lt;br /&gt;
In der Konsole folgende Befehle eingeben:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get upgrade&lt;br /&gt;
sudo apt-get install build-essential libssl-dev&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
UPDATE: Homebridge funktioniert mit einer kleinen Einschränkung nun auch mit node 4.0.0. Laut&lt;br /&gt;
[https://github.com/cflurin/homebridge-shims/wiki/Minimalist-Homebridge-on-a-Raspberry-Pi Homebridge on a Raspberry Pi] müssen die folgenden Abhängigkeiten (Dependencies) aus der &#039;&#039;&#039;package.json&#039;&#039;&#039; entfernt werden:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;quot;harmonyhubjs-client&amp;quot;: &amp;quot;^1.1.4&amp;quot;,&lt;br /&gt;
&amp;quot;harmonyhubjs-discover&amp;quot;: &amp;quot;git+https://github.com/swissmanu/harmonyhubjs-discover.git&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Damit es auf einem Raspberry schneller läuft wird darüber hinaus empfohlen auch diese Abhängigkeiten aus der &#039;&#039;&#039;package.json&#039;&#039;&#039; zu entfernen:&lt;br /&gt;
&lt;br /&gt;
Vorher noch ein ein Backup der Datei anlegen &lt;br /&gt;
&amp;lt;pre&amp;gt;cp package.json package.json.bkp oder sudo cp package.json package.json.bkp &amp;lt;/pre&amp;gt;&lt;br /&gt;
Am einfachsten geht das entfernen der Zeilen mit dem Editor vi.&lt;br /&gt;
&amp;lt;!-- Bist Du sicher, dass &amp;quot;vi&amp;quot; das Einfachste ist? Ist nicht auf vielen Linux Systemen &lt;br /&gt;
     mittlerweile auch der &amp;quot;nano&amp;quot; Editor drauf? Der dürfte eigentlich !noch! einfacher sein.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;vi package.json oder sudo vi package.json&amp;lt;/pre&amp;gt;&lt;br /&gt;
Mit dem Cursor vor die entsprechende Zeile gehen und mit zwei mal Taste d (dd tippen) wird die Zeile gelöscht.&lt;br /&gt;
&lt;br /&gt;
Eventuell muss vi mit sudo vi aufgerufen werden, je nach verwendeter Distribution.&lt;br /&gt;
&lt;br /&gt;
Gespeichert wird dann mit folgendem Ablauf: ESC :wq! Enter&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;quot;ad2usb&amp;quot;: &amp;quot;git+https://github.com/alistairg/node-ad2usb.git#local&amp;quot;,&lt;br /&gt;
&amp;quot;carwingsjs&amp;quot;: &amp;quot;0.0.x&amp;quot;,&lt;br /&gt;
&amp;quot;chokidar&amp;quot;: &amp;quot;^1.0.5&amp;quot;,&lt;br /&gt;
&amp;quot;eibd&amp;quot;: &amp;quot;^0.3.1&amp;quot;,&lt;br /&gt;
&amp;quot;elkington&amp;quot;: &amp;quot;kevinohara80/elkington&amp;quot;,&lt;br /&gt;
&amp;quot;harmonyhubjs-client&amp;quot;: &amp;quot;^1.1.4&amp;quot;,&lt;br /&gt;
&amp;quot;harmonyhubjs-discover&amp;quot;: &amp;quot;git+https://github.com/swissmanu/harmonyhubjs-discover.git&amp;quot;,&lt;br /&gt;
&amp;quot;lifx-api&amp;quot;: &amp;quot;^1.0.1&amp;quot;,&lt;br /&gt;
&amp;quot;lifx&amp;quot;: &amp;quot;git+https://github.com/magicmonkey/lifxjs.git&amp;quot;,&lt;br /&gt;
&amp;quot;node-hue-api&amp;quot;: &amp;quot;^1.0.5&amp;quot;,&lt;br /&gt;
&amp;quot;node-icontrol&amp;quot;: &amp;quot;^0.1.4&amp;quot;,&lt;br /&gt;
&amp;quot;node-milight-promise&amp;quot;: &amp;quot;0.0.x&amp;quot;,&lt;br /&gt;
&amp;quot;tough-cookie&amp;quot;: &amp;quot;^2.0.0&amp;quot;,&lt;br /&gt;
&amp;quot;sonos&amp;quot;: &amp;quot;0.8.x&amp;quot;,&lt;br /&gt;
&amp;quot;telldus-live&amp;quot;: &amp;quot;0.2.x&amp;quot;,&lt;br /&gt;
&amp;quot;teslams&amp;quot;: &amp;quot;1.0.1&amp;quot;,&lt;br /&gt;
&amp;quot;unofficial-nest-api&amp;quot;: &amp;quot;git+https://github.com/hachidorii/unofficial_nodejs_nest.git#d8d48edc952b049ff6320ef99afa7b2f04cdee98&amp;quot;,&lt;br /&gt;
&amp;quot;wemo&amp;quot;: &amp;quot;0.2.x&amp;quot;,&lt;br /&gt;
&amp;quot;wink-js&amp;quot;: &amp;quot;0.0.5&amp;quot;,&lt;br /&gt;
&amp;quot;komponist&amp;quot; : &amp;quot;0.1.0&amp;quot;,&lt;br /&gt;
&amp;quot;yamaha-nodejs&amp;quot;: &amp;quot;0.4.x&amp;quot;,&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Das Konfig file sollte dann wie folgt aussehen: Achtung vor den letzten zwei } am Ende dar kein Komma sein.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;name&amp;quot;: &amp;quot;homebridge&amp;quot;,&lt;br /&gt;
  &amp;quot;description&amp;quot;: &amp;quot;HomeKit support for the impatient&amp;quot;,&lt;br /&gt;
  &amp;quot;version&amp;quot;: &amp;quot;0.1.1&amp;quot;,&lt;br /&gt;
  &amp;quot;scripts&amp;quot;: {&lt;br /&gt;
    &amp;quot;start&amp;quot;: &amp;quot;DEBUG=* node app.js || true&amp;quot;&lt;br /&gt;
  },&lt;br /&gt;
  &amp;quot;repository&amp;quot;: {&lt;br /&gt;
    &amp;quot;type&amp;quot;: &amp;quot;git&amp;quot;,&lt;br /&gt;
    &amp;quot;url&amp;quot;: &amp;quot;git://github.com/nfarina/homebridge.git&amp;quot;&lt;br /&gt;
  },&lt;br /&gt;
  &amp;quot;license&amp;quot;: &amp;quot;ISC&amp;quot;,&lt;br /&gt;
  &amp;quot;dependencies&amp;quot;: {&lt;br /&gt;
    &amp;quot;async&amp;quot;: &amp;quot;^1.4.2&amp;quot;,&lt;br /&gt;
    &amp;quot;color&amp;quot;: &amp;quot;0.10.x&amp;quot;,&lt;br /&gt;
    &amp;quot;debug&amp;quot;: &amp;quot;^2.2.0&amp;quot;,&lt;br /&gt;
    &amp;quot;hap-nodejs&amp;quot;: &amp;quot;^0.0.2&amp;quot;,&lt;br /&gt;
    &amp;quot;isy-js&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
    &amp;quot;mdns&amp;quot;: &amp;quot;^2.2.4&amp;quot;,&lt;br /&gt;
    &amp;quot;netatmo&amp;quot;: &amp;quot;1.3.0&amp;quot;,&lt;br /&gt;
    &amp;quot;node-cache&amp;quot;: &amp;quot;3.0.0&amp;quot;,&lt;br /&gt;
    &amp;quot;node-persist&amp;quot;: &amp;quot;0.0.x&amp;quot;,&lt;br /&gt;
    &amp;quot;node-xmpp-client&amp;quot;: &amp;quot;1.0.0-alpha23&amp;quot;,&lt;br /&gt;
    &amp;quot;q&amp;quot;: &amp;quot;1.4.x&amp;quot;,&lt;br /&gt;
    &amp;quot;queue&amp;quot;: &amp;quot;^3.1.0&amp;quot;,&lt;br /&gt;
    &amp;quot;request&amp;quot;: &amp;quot;2.49.x&amp;quot;,&lt;br /&gt;
    &amp;quot;xml2js&amp;quot;: &amp;quot;0.4.x&amp;quot;,&lt;br /&gt;
    &amp;quot;xmldoc&amp;quot;: &amp;quot;0.1.x&amp;quot;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Python, g++, MDNS installieren ==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
sudo apt-get install python&lt;br /&gt;
sudo apt-get install g++&lt;br /&gt;
sudo apt-get install libavahi-compat-libdnssd-dev&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Homebridge installieren ==&lt;br /&gt;
Die aktuelle Homebridge version wird mit&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
npm install -g homebridge&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
installiert, der FHEM platform shim mit&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;width:60%;&amp;quot;&amp;gt;&lt;br /&gt;
npm install -g https://github.com/justme-1968/homebridge-fhem.git&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== ERR während der Installation ==&lt;br /&gt;
Bei folgendem Fehler ist das abrufen von Github nicht möglich.&lt;br /&gt;
&amp;lt;pre&amp;gt;npm ERR! git clone --template=/home/hs-server-admin/.npm/_git-remotes/_templates --mirror &lt;br /&gt;
git://github.com/KhaosT/ed25519.git /home/hs-server-admin/.npm/_git-remotes/git-github-com-KhaosT-ed25519-git-d8bdee1d: &lt;br /&gt;
github.com[0: 192.30.252.128]: errno=Die Wartezeit für die Verbindung ist abgelaufen&amp;lt;/pre&amp;gt;&lt;br /&gt;
Fehlerursache konnte hier durch eine aktive Firewall verursacht werden.&lt;br /&gt;
&lt;br /&gt;
== Homebridge konfigurieren ==&lt;br /&gt;
Im Verzeichnis ~/.homebridge/ muss nun noch die config.json erstellt bzw. angepasst werden:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
nano config.json&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Homebridge muss nicht, kann aber auf dem selben Server laufen wie FHEM. &lt;br /&gt;
&lt;br /&gt;
Unter &amp;quot;server&amp;quot; muss die IP des FHEM-Servers und unter &amp;quot;port&amp;quot; der benutzte Port des benutzten FHEMWEBS eingetragen werden.&lt;br /&gt;
&lt;br /&gt;
Läuft der Homebridge Server auf dem gleichen Rechner wie FHEM, kann die IP 127.0.0.1 benutzt werden.&lt;br /&gt;
&lt;br /&gt;
WICHTIG: Damit nicht alle Devices von Homebridge berücksichtig werden, bietet es sich an, die Devices zu filtern. &lt;br /&gt;
&lt;br /&gt;
In diesem Beispiel wurden alle Devices, die über Siri steuerbar sein sollen zusätzlich in den ROOM Homekit per FHEM eingerichtet. &lt;br /&gt;
&lt;br /&gt;
Der PIN kann beliebig in dem Format xxx-xx-xxx angepasst werden. Dieser muss nur einmal bei der Einrichtung in iOS eingegeben werden.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
    &amp;quot;bridge&amp;quot;: {&lt;br /&gt;
        &amp;quot;name&amp;quot;: &amp;quot;Homebridge&amp;quot;,&lt;br /&gt;
        &amp;quot;username&amp;quot;: &amp;quot;CC:22:3D:E3:CE:30&amp;quot;,&lt;br /&gt;
        &amp;quot;port&amp;quot;: 51826,&lt;br /&gt;
        &amp;quot;pin&amp;quot;: &amp;quot;031-45-154&amp;quot;&lt;br /&gt;
    },&lt;br /&gt;
&lt;br /&gt;
    &amp;quot;platforms&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;platform&amp;quot;: &amp;quot;FHEM&amp;quot;,&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;FHEM&amp;quot;,&lt;br /&gt;
            &amp;quot;server&amp;quot;: &amp;quot;192.168.xxx.xxx&amp;quot;,&lt;br /&gt;
            &amp;quot;port&amp;quot;: &amp;quot;8083&amp;quot;,&lt;br /&gt;
            &amp;quot;filter&amp;quot;: &amp;quot;room=Homekit&amp;quot;,&lt;br /&gt;
            &amp;quot;auth&amp;quot;: {&amp;quot;user&amp;quot;: &amp;quot;FhemUser&amp;quot;, &amp;quot;pass&amp;quot;: &amp;quot;XXX&amp;quot;}&lt;br /&gt;
        }&lt;br /&gt;
     ],&lt;br /&gt;
&lt;br /&gt;
    &amp;quot;accessories&amp;quot;: []&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Achtung: Für ein FHEM Web Interface mit SSL Zertifikat muss die config wo folgt aussehen:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
    &amp;quot;bridge&amp;quot;: {&lt;br /&gt;
        &amp;quot;name&amp;quot;: &amp;quot;Homebridge&amp;quot;,&lt;br /&gt;
        &amp;quot;username&amp;quot;: &amp;quot;CC:22:3D:E3:CE:30&amp;quot;,&lt;br /&gt;
        &amp;quot;port&amp;quot;: 51826,&lt;br /&gt;
        &amp;quot;pin&amp;quot;: &amp;quot;031-45-154&amp;quot;&lt;br /&gt;
    },&lt;br /&gt;
&lt;br /&gt;
    &amp;quot;platforms&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;platform&amp;quot;: &amp;quot;FHEM&amp;quot;,&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;FHEM&amp;quot;,&lt;br /&gt;
            &amp;quot;server&amp;quot;: &amp;quot;192.168.xxx.xxx&amp;quot;,&lt;br /&gt;
            &amp;quot;port&amp;quot;: &amp;quot;8083&amp;quot;,&lt;br /&gt;
            &amp;quot;filter&amp;quot;: &amp;quot;room=Homekit&amp;quot;,&lt;br /&gt;
            &amp;quot;ssl&amp;quot;: &amp;quot;true&amp;quot;,&lt;br /&gt;
            &amp;quot;auth&amp;quot;: {&amp;quot;user&amp;quot;: &amp;quot;FhemUser&amp;quot;, &amp;quot;pass&amp;quot;: &amp;quot;XXX&amp;quot;}&lt;br /&gt;
        }&lt;br /&gt;
     ],&lt;br /&gt;
&lt;br /&gt;
    &amp;quot;accessories&amp;quot;: []&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== FHEM konfigurieren ==&lt;br /&gt;
Um die Device richtig mit FHEM und Homebridge vertraut zu machen, müssen wir noch unter global etwas ergänzen:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;perl&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
attr global userattr genericDeviceType:ignore,switch,outlet,light,blind,speaker,thermostat,ignore,lock,window,contact&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Einfach folgende Zeilen an die bestehenden Attribute anhängen:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;perl&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
genericDeviceType:ignore,switch,outlet,light,blind,speaker,thermostat,ignore,lock,window,contact&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Diese Einstellungen können auch bei den Einzelnen Devices gemacht werden.&lt;br /&gt;
Beispiel bei einem HM-CC-RT-DN, hier wird der subType thermostat gesetzt.&lt;br /&gt;
Einfach in das Device gehen hier das Attr subtype erstellen und thermostat auswählen.&lt;br /&gt;
&lt;br /&gt;
== Homebridge starten ==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
homebridge&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Hombridge sollte nun laufen.&lt;br /&gt;
Hier kann man die Kommunikation nachverfolgen.&lt;br /&gt;
Abbrechen kann das ganze mit ctrl +c.&lt;br /&gt;
Es sind keine Befehle mehr mit Siri möglich.&lt;br /&gt;
&lt;br /&gt;
Damit Siri auch Befehle ohne ständig offenes Terminal bearbeiten kann, bitten nächsten Punkt beachten.&lt;br /&gt;
&lt;br /&gt;
== Homebridge automatisch starten ==&lt;br /&gt;
Eine Anleitung um die Homebridge automatisch zu starten findet sich &lt;br /&gt;
* hier: [https://github.com/nfarina/homebridge/wiki/Running-HomeBridge-on-a-Raspberry-Pi] oder&lt;br /&gt;
* [http://www.meintechblog.de/2015/10/mit-siri-und-fhem-das-gesamte-smart-home-per-stimme-steuern/]&lt;br /&gt;
&lt;br /&gt;
Link 2 arbeitet mit den von Ubuntu bekannten Services. So ist es möglich mit z.B. sudo service homebridge start/stop/status&lt;br /&gt;
&lt;br /&gt;
== FHEM Device Einstellungen ==&lt;br /&gt;
Damit die zu schaltenden Geräte überhaupt in der Homebridge aufgenommen werden muss man sie im Raum Homekit hinzufügen.&lt;br /&gt;
&lt;br /&gt;
Um HM-CC-RT-DN Thermostate steuern zu können, muss folgendes attribute gesetzt werden&lt;br /&gt;
# attr Heizung Subtype thermostat&lt;br /&gt;
Für einen Dummy muss man folgendes machen.&lt;br /&gt;
# attr Dummy genericDeviceType switch&lt;br /&gt;
# attr Dummy setList on off&lt;br /&gt;
&lt;br /&gt;
== HomeKit in iOS einrichten ==&lt;br /&gt;
Um FHEM über Homebridge in iOS nutzen zu können, muss HomeKit eingerichtet werden. &lt;br /&gt;
&lt;br /&gt;
Es gibt verschiedene Apps. Im folgenden wird die App EVE von Elgato empfohlen, die aus dem App-Store geladen werden muss.&lt;br /&gt;
In der App auf:&lt;br /&gt;
&amp;lt;pre style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
Gerät hinzufügen&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Es sollte ein Gerät mit der Bezeichnung &amp;quot;Homebridge&amp;quot; zur Auswahl erscheinen. Zur Ersteinrichtung auf PIN manuell eingeben gehen und (falls in der config.json nicht geändert):&lt;br /&gt;
&amp;lt;pre style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
031-45-154&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
eingeben.&lt;br /&gt;
&lt;br /&gt;
Im Anschluss können die Devices nach Belieben in verschiedene Räume zugeteilt werden, sowie Szenen und Bereiche erstellt werden.&lt;br /&gt;
&lt;br /&gt;
== HomeBridge Allgemein ==&lt;br /&gt;
Nach allen Änderungen die in FHEM gemacht werden, welche Homebridge betreffen, muss Homebridge neu gestartet werden.&lt;br /&gt;
&lt;br /&gt;
Der Neustart ist abhängig davon, wie man Homebridge gestartet hat.&lt;br /&gt;
&lt;br /&gt;
Bitte den entsprechenden Methoden entnehmen.&lt;br /&gt;
&lt;br /&gt;
== Steuerung von MiLight Allgemein ==&lt;br /&gt;
Wie hier im Forum http://forum.fhem.de/index.php/topic,32652.msg351706.html#msg351706 erwähnt, ist es möglich auch MiLight gGeräte per Siri anzusprechen.&lt;br /&gt;
Hierzu muss die config.jason angepasst werden.&lt;br /&gt;
&lt;br /&gt;
1. Es muss die Bridge hinterlegt werden. Beispiel&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;platform&amp;quot;: &amp;quot;MiLight&amp;quot;,&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;MiLight&amp;quot;,&lt;br /&gt;
            &amp;quot;ip_address&amp;quot;: &amp;quot;192.168.001.033&amp;quot;,&lt;br /&gt;
            &amp;quot;port&amp;quot;: 8899,&lt;br /&gt;
            &amp;quot;type&amp;quot;: &amp;quot;rgbw&amp;quot;,&lt;br /&gt;
            &amp;quot;delay&amp;quot;: 30,&lt;br /&gt;
            &amp;quot;repeat&amp;quot;: 3,&lt;br /&gt;
            &amp;quot;zones&amp;quot;:[&amp;quot;Wohnzimmer Lampen&amp;quot;,&amp;quot;Badezimmer Lampen&amp;quot;,&amp;quot;Büro Lampen&amp;quot;,&amp;quot;Keller Lampen&amp;quot;]&lt;br /&gt;
        },&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Es muss für jedes zu Steuernde Gerät ein Dummy angelegt werden. Beispiel:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;accessory&amp;quot;: &amp;quot;Http&amp;quot;,&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;Kitchen Lamp&amp;quot;,&lt;br /&gt;
            &amp;quot;on_url&amp;quot;: &amp;quot;https://192.168.1.22:3030/devices/23222/on&amp;quot;,&lt;br /&gt;
            &amp;quot;off_url&amp;quot;: &amp;quot;https://192.168.1.22:3030/devices/23222/off&amp;quot;,&lt;br /&gt;
            &amp;quot;brightness_url&amp;quot;: &amp;quot;https://192.168.1.22:3030/devices/23222/brightness/%b&amp;quot;,&lt;br /&gt;
            &amp;quot;http_method&amp;quot;: &amp;quot;POST&amp;quot;&lt;br /&gt;
        },&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Schalten mit Siri ==&lt;br /&gt;
&#039;&#039;&#039;HolyMoly&#039;&#039;&#039; aus dem FHEM-Forum hat ein paar Beispiele gegeben, wie man Siri dazu bringt Devices zu schalten:&lt;br /&gt;
&amp;lt;pre style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;quot;Schalte alle Lampen im Obergeschoss ein.&amp;quot;&lt;br /&gt;
&amp;quot;Schalte Chloes Licht aus.&amp;quot;&lt;br /&gt;
&amp;quot;Dimme das Licht in der Küche.&amp;quot;&lt;br /&gt;
&amp;quot;Dimme das Licht im Esszimmer auf 50 %.&amp;quot;&lt;br /&gt;
&amp;quot;Stelle das Licht in der Küche am hellsten ein.&amp;quot;&lt;br /&gt;
&amp;quot;Stelle die Temperatur im Tahoe-Haus auf 22 °C ein.&amp;quot;&lt;br /&gt;
&amp;quot;Stelle das Thermostat im Erdgeschoss auf 21 °C ein.&lt;br /&gt;
&amp;quot;Schalte den Drucker im Büro ein.&amp;quot;&lt;br /&gt;
&amp;quot;Siri, bereite alles für eine Party vor.&amp;quot;&lt;br /&gt;
&amp;quot;Bereite das Ambiente fürs Abendessen vor.&amp;quot;&lt;br /&gt;
&amp;quot;Aktiviere den Nachtruhemodus.&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mittlerweile kann Siri auch noch die Lichtfarbe von LEDs ändern.&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:HOWTOS]]&lt;/div&gt;</summary>
		<author><name>Netbus</name></author>
	</entry>
	<entry>
		<id>http://wiki.fhem.de/w/index.php?title=Homebridge_einrichten&amp;diff=12857</id>
		<title>Homebridge einrichten</title>
		<link rel="alternate" type="text/html" href="http://wiki.fhem.de/w/index.php?title=Homebridge_einrichten&amp;diff=12857"/>
		<updated>2015-11-11T08:47:00Z</updated>

		<summary type="html">&lt;p&gt;Netbus: /* FHEM Device Einstellungen */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Dieses HOWTO zeigt die Installation und Erstinbetriebnahme von Homebridge. &lt;br /&gt;
&lt;br /&gt;
Damit kann Siri benutzt werden, um FHEM-Devices zu steuern. So können Devices angesprochen werden, die offiziell HomeKit nicht unterstützen (die Vorgehensweise wurde auf einem Intel NUC mit Ubuntu Server 14.04 LTS und auf einem Raspberry Pi mit Raspian getestet).&lt;br /&gt;
&lt;br /&gt;
Um Homebridge erfolgreich zu installieren, müssen zunächst NPM, NodeJS, Python, g++, MDNS, sowie benötigte Hilfspakete installiert werden:&lt;br /&gt;
&lt;br /&gt;
Der WIKI-Eintrag bezieht sich hauptsächlich auf diese {{Link2Forum|Topic=32652|LinkText=Diskussion im FHEM-Forum}}. Ein Riesendank gilt vor allem {{Link2FU|430|Andre (justme1968)}}.&lt;br /&gt;
&lt;br /&gt;
Eine Sammlung funktionsfähiger Homebridge FHEM Konfiguration können hier gefunden werden http://www.fhemwiki.de/wiki/Hombridge_User_Configs&lt;br /&gt;
Die Sammlung befindet sich noch im Aufbau&lt;br /&gt;
&lt;br /&gt;
== NodeJS installieren ==&lt;br /&gt;
In der Konsole folgende Befehle eingeben:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
sudo apt-get update&lt;br /&gt;
sudo apt-get upgrade&lt;br /&gt;
sudo apt-get install build-essential libssl-dev&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
UPDATE: Homebridge funktioniert mit einer kleinen Einschränkung nun auch mit node 4.0.0. Laut&lt;br /&gt;
[https://github.com/cflurin/homebridge-shims/wiki/Minimalist-Homebridge-on-a-Raspberry-Pi Homebridge on a Raspberry Pi] müssen die folgenden Abhängigkeiten (Dependencies) aus der &#039;&#039;&#039;package.json&#039;&#039;&#039; entfernt werden:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;quot;harmonyhubjs-client&amp;quot;: &amp;quot;^1.1.4&amp;quot;,&lt;br /&gt;
&amp;quot;harmonyhubjs-discover&amp;quot;: &amp;quot;git+https://github.com/swissmanu/harmonyhubjs-discover.git&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Damit es auf einem Raspberry schneller läuft wird darüber hinaus empfohlen auch diese Abhängigkeiten aus der &#039;&#039;&#039;package.json&#039;&#039;&#039; zu entfernen:&lt;br /&gt;
&lt;br /&gt;
Vorher noch ein ein Backup der Datei anlegen &lt;br /&gt;
&amp;lt;pre&amp;gt;cp package.json package.json.bkp oder sudo cp package.json package.json.bkp &amp;lt;/pre&amp;gt;&lt;br /&gt;
Am einfachsten geht das entfernen der Zeilen mit dem Editor vi.&lt;br /&gt;
&amp;lt;!-- Bist Du sicher, dass &amp;quot;vi&amp;quot; das Einfachste ist? Ist nicht auf vielen Linux Systemen &lt;br /&gt;
     mittlerweile auch der &amp;quot;nano&amp;quot; Editor drauf? Der dürfte eigentlich !noch! einfacher sein.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;vi package.json oder sudo vi package.json&amp;lt;/pre&amp;gt;&lt;br /&gt;
Mit dem Cursor vor die entsprechende Zeile gehen und mit zwei mal Taste d (dd tippen) wird die Zeile gelöscht.&lt;br /&gt;
&lt;br /&gt;
Eventuell muss vi mit sudo vi aufgerufen werden, je nach verwendeter Distribution.&lt;br /&gt;
&lt;br /&gt;
Gespeichert wird dann mit folgendem Ablauf: ESC :wq! Enter&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&amp;quot;ad2usb&amp;quot;: &amp;quot;git+https://github.com/alistairg/node-ad2usb.git#local&amp;quot;,&lt;br /&gt;
&amp;quot;carwingsjs&amp;quot;: &amp;quot;0.0.x&amp;quot;,&lt;br /&gt;
&amp;quot;chokidar&amp;quot;: &amp;quot;^1.0.5&amp;quot;,&lt;br /&gt;
&amp;quot;eibd&amp;quot;: &amp;quot;^0.3.1&amp;quot;,&lt;br /&gt;
&amp;quot;elkington&amp;quot;: &amp;quot;kevinohara80/elkington&amp;quot;,&lt;br /&gt;
&amp;quot;harmonyhubjs-client&amp;quot;: &amp;quot;^1.1.4&amp;quot;,&lt;br /&gt;
&amp;quot;harmonyhubjs-discover&amp;quot;: &amp;quot;git+https://github.com/swissmanu/harmonyhubjs-discover.git&amp;quot;,&lt;br /&gt;
&amp;quot;lifx-api&amp;quot;: &amp;quot;^1.0.1&amp;quot;,&lt;br /&gt;
&amp;quot;lifx&amp;quot;: &amp;quot;git+https://github.com/magicmonkey/lifxjs.git&amp;quot;,&lt;br /&gt;
&amp;quot;node-hue-api&amp;quot;: &amp;quot;^1.0.5&amp;quot;,&lt;br /&gt;
&amp;quot;node-icontrol&amp;quot;: &amp;quot;^0.1.4&amp;quot;,&lt;br /&gt;
&amp;quot;node-milight-promise&amp;quot;: &amp;quot;0.0.x&amp;quot;,&lt;br /&gt;
&amp;quot;tough-cookie&amp;quot;: &amp;quot;^2.0.0&amp;quot;,&lt;br /&gt;
&amp;quot;sonos&amp;quot;: &amp;quot;0.8.x&amp;quot;,&lt;br /&gt;
&amp;quot;telldus-live&amp;quot;: &amp;quot;0.2.x&amp;quot;,&lt;br /&gt;
&amp;quot;teslams&amp;quot;: &amp;quot;1.0.1&amp;quot;,&lt;br /&gt;
&amp;quot;unofficial-nest-api&amp;quot;: &amp;quot;git+https://github.com/hachidorii/unofficial_nodejs_nest.git#d8d48edc952b049ff6320ef99afa7b2f04cdee98&amp;quot;,&lt;br /&gt;
&amp;quot;wemo&amp;quot;: &amp;quot;0.2.x&amp;quot;,&lt;br /&gt;
&amp;quot;wink-js&amp;quot;: &amp;quot;0.0.5&amp;quot;,&lt;br /&gt;
&amp;quot;komponist&amp;quot; : &amp;quot;0.1.0&amp;quot;,&lt;br /&gt;
&amp;quot;yamaha-nodejs&amp;quot;: &amp;quot;0.4.x&amp;quot;,&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Das Konfig file sollte dann wie folgt aussehen: Achtung vor den letzten zwei } am Ende dar kein Komma sein.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
  &amp;quot;name&amp;quot;: &amp;quot;homebridge&amp;quot;,&lt;br /&gt;
  &amp;quot;description&amp;quot;: &amp;quot;HomeKit support for the impatient&amp;quot;,&lt;br /&gt;
  &amp;quot;version&amp;quot;: &amp;quot;0.1.1&amp;quot;,&lt;br /&gt;
  &amp;quot;scripts&amp;quot;: {&lt;br /&gt;
    &amp;quot;start&amp;quot;: &amp;quot;DEBUG=* node app.js || true&amp;quot;&lt;br /&gt;
  },&lt;br /&gt;
  &amp;quot;repository&amp;quot;: {&lt;br /&gt;
    &amp;quot;type&amp;quot;: &amp;quot;git&amp;quot;,&lt;br /&gt;
    &amp;quot;url&amp;quot;: &amp;quot;git://github.com/nfarina/homebridge.git&amp;quot;&lt;br /&gt;
  },&lt;br /&gt;
  &amp;quot;license&amp;quot;: &amp;quot;ISC&amp;quot;,&lt;br /&gt;
  &amp;quot;dependencies&amp;quot;: {&lt;br /&gt;
    &amp;quot;async&amp;quot;: &amp;quot;^1.4.2&amp;quot;,&lt;br /&gt;
    &amp;quot;color&amp;quot;: &amp;quot;0.10.x&amp;quot;,&lt;br /&gt;
    &amp;quot;debug&amp;quot;: &amp;quot;^2.2.0&amp;quot;,&lt;br /&gt;
    &amp;quot;hap-nodejs&amp;quot;: &amp;quot;^0.0.2&amp;quot;,&lt;br /&gt;
    &amp;quot;isy-js&amp;quot;: &amp;quot;&amp;quot;,&lt;br /&gt;
    &amp;quot;mdns&amp;quot;: &amp;quot;^2.2.4&amp;quot;,&lt;br /&gt;
    &amp;quot;netatmo&amp;quot;: &amp;quot;1.3.0&amp;quot;,&lt;br /&gt;
    &amp;quot;node-cache&amp;quot;: &amp;quot;3.0.0&amp;quot;,&lt;br /&gt;
    &amp;quot;node-persist&amp;quot;: &amp;quot;0.0.x&amp;quot;,&lt;br /&gt;
    &amp;quot;node-xmpp-client&amp;quot;: &amp;quot;1.0.0-alpha23&amp;quot;,&lt;br /&gt;
    &amp;quot;q&amp;quot;: &amp;quot;1.4.x&amp;quot;,&lt;br /&gt;
    &amp;quot;queue&amp;quot;: &amp;quot;^3.1.0&amp;quot;,&lt;br /&gt;
    &amp;quot;request&amp;quot;: &amp;quot;2.49.x&amp;quot;,&lt;br /&gt;
    &amp;quot;xml2js&amp;quot;: &amp;quot;0.4.x&amp;quot;,&lt;br /&gt;
    &amp;quot;xmldoc&amp;quot;: &amp;quot;0.1.x&amp;quot;&lt;br /&gt;
  }&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Python, g++, MDNS installieren ==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
sudo apt-get install python&lt;br /&gt;
sudo apt-get install g++&lt;br /&gt;
sudo apt-get install libavahi-compat-libdnssd-dev&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Homebridge installieren ==&lt;br /&gt;
Die aktuelle Homebridge version wird mit&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
npm install -g homebridge&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
installiert, der FHEM platform shim mit&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;width:60%;&amp;quot;&amp;gt;&lt;br /&gt;
npm install -g https://github.com/justme-1968/homebridge-fhem.git&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== ERR während der Installation ==&lt;br /&gt;
Bei folgendem Fehler ist das abrufen von Github nicht möglich.&lt;br /&gt;
&amp;lt;pre&amp;gt;npm ERR! git clone --template=/home/hs-server-admin/.npm/_git-remotes/_templates --mirror &lt;br /&gt;
git://github.com/KhaosT/ed25519.git /home/hs-server-admin/.npm/_git-remotes/git-github-com-KhaosT-ed25519-git-d8bdee1d: &lt;br /&gt;
github.com[0: 192.30.252.128]: errno=Die Wartezeit für die Verbindung ist abgelaufen&amp;lt;/pre&amp;gt;&lt;br /&gt;
Fehlerursache konnte hier durch eine aktive Firewall verursacht werden.&lt;br /&gt;
&lt;br /&gt;
== Homebridge konfigurieren ==&lt;br /&gt;
Im Verzeichnis ~/.homebridge/ muss nun noch die config.json erstellt bzw. angepasst werden:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
nano config.json&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Homebridge muss nicht, kann aber auf dem selben Server laufen wie FHEM. &lt;br /&gt;
&lt;br /&gt;
Unter &amp;quot;server&amp;quot; muss die IP des FHEM-Servers und unter &amp;quot;port&amp;quot; der benutzte Port des benutzten FHEMWEBS eingetragen werden.&lt;br /&gt;
&lt;br /&gt;
Läuft der Homebridge Server auf dem gleichen Rechner wie FHEM, kann die IP 127.0.0.1 benutzt werden.&lt;br /&gt;
&lt;br /&gt;
WICHTIG: Damit nicht alle Devices von Homebridge berücksichtig werden, bietet es sich an, die Devices zu filtern. &lt;br /&gt;
&lt;br /&gt;
In diesem Beispiel wurden alle Devices, die über Siri steuerbar sein sollen zusätzlich in den ROOM Homekit per FHEM eingerichtet. &lt;br /&gt;
&lt;br /&gt;
Der PIN kann beliebig in dem Format xxx-xx-xxx angepasst werden. Dieser muss nur einmal bei der Einrichtung in iOS eingegeben werden.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
    &amp;quot;bridge&amp;quot;: {&lt;br /&gt;
        &amp;quot;name&amp;quot;: &amp;quot;Homebridge&amp;quot;,&lt;br /&gt;
        &amp;quot;username&amp;quot;: &amp;quot;CC:22:3D:E3:CE:30&amp;quot;,&lt;br /&gt;
        &amp;quot;port&amp;quot;: 51826,&lt;br /&gt;
        &amp;quot;pin&amp;quot;: &amp;quot;031-45-154&amp;quot;&lt;br /&gt;
    },&lt;br /&gt;
&lt;br /&gt;
    &amp;quot;platforms&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;platform&amp;quot;: &amp;quot;FHEM&amp;quot;,&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;FHEM&amp;quot;,&lt;br /&gt;
            &amp;quot;server&amp;quot;: &amp;quot;192.168.xxx.xxx&amp;quot;,&lt;br /&gt;
            &amp;quot;port&amp;quot;: &amp;quot;8083&amp;quot;,&lt;br /&gt;
            &amp;quot;filter&amp;quot;: &amp;quot;room=Homekit&amp;quot;,&lt;br /&gt;
            &amp;quot;auth&amp;quot;: {&amp;quot;user&amp;quot;: &amp;quot;FhemUser&amp;quot;, &amp;quot;pass&amp;quot;: &amp;quot;XXX&amp;quot;}&lt;br /&gt;
        }&lt;br /&gt;
     ],&lt;br /&gt;
&lt;br /&gt;
    &amp;quot;accessories&amp;quot;: []&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Achtung: Für ein FHEM Web Interface mit SSL Zertifikat muss die config wo folgt aussehen:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
{&lt;br /&gt;
    &amp;quot;bridge&amp;quot;: {&lt;br /&gt;
        &amp;quot;name&amp;quot;: &amp;quot;Homebridge&amp;quot;,&lt;br /&gt;
        &amp;quot;username&amp;quot;: &amp;quot;CC:22:3D:E3:CE:30&amp;quot;,&lt;br /&gt;
        &amp;quot;port&amp;quot;: 51826,&lt;br /&gt;
        &amp;quot;pin&amp;quot;: &amp;quot;031-45-154&amp;quot;&lt;br /&gt;
    },&lt;br /&gt;
&lt;br /&gt;
    &amp;quot;platforms&amp;quot;: [&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;platform&amp;quot;: &amp;quot;FHEM&amp;quot;,&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;FHEM&amp;quot;,&lt;br /&gt;
            &amp;quot;server&amp;quot;: &amp;quot;192.168.xxx.xxx&amp;quot;,&lt;br /&gt;
            &amp;quot;port&amp;quot;: &amp;quot;8083&amp;quot;,&lt;br /&gt;
            &amp;quot;filter&amp;quot;: &amp;quot;room=Homekit&amp;quot;,&lt;br /&gt;
            &amp;quot;ssl&amp;quot;: &amp;quot;true&amp;quot;,&lt;br /&gt;
            &amp;quot;auth&amp;quot;: {&amp;quot;user&amp;quot;: &amp;quot;FhemUser&amp;quot;, &amp;quot;pass&amp;quot;: &amp;quot;XXX&amp;quot;}&lt;br /&gt;
        }&lt;br /&gt;
     ],&lt;br /&gt;
&lt;br /&gt;
    &amp;quot;accessories&amp;quot;: []&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== FHEM konfigurieren ==&lt;br /&gt;
Um die Device richtig mit FHEM und Homebridge vertraut zu machen, müssen wir noch unter global etwas ergänzen:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;perl&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
attr global userattr genericDeviceType:ignore,switch,outlet,light,blind,speaker,thermostat,ignore,lock,window,contact&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Einfach folgende Zeilen an die bestehenden Attribute anhängen:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;perl&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
genericDeviceType:ignore,switch,outlet,light,blind,speaker,thermostat,ignore,lock,window,contact&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Diese Einstellungen können auch bei den Einzelnen Devices gemacht werden.&lt;br /&gt;
Beispiel bei einem HM-CC-RT-DN, hier wird der subType thermostat gesetzt.&lt;br /&gt;
Einfach in das Device gehen hier das Attr subtype erstellen und thermostat auswählen.&lt;br /&gt;
&lt;br /&gt;
== Homebridge starten ==&lt;br /&gt;
&amp;lt;source lang=&amp;quot;bash&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
homebridge&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Hombridge sollte nun laufen.&lt;br /&gt;
Hier kann man die Kommunikation nachverfolgen.&lt;br /&gt;
Abbrechen kann das ganze mit ctrl +c.&lt;br /&gt;
Es sind keine Befehle mehr mit Siri möglich.&lt;br /&gt;
&lt;br /&gt;
Damit Siri auch Befehle ohne ständig offenes Terminal bearbeiten kann, bitten nächsten Punkt beachten.&lt;br /&gt;
&lt;br /&gt;
== Homebridge automatisch starten ==&lt;br /&gt;
Eine Anleitung um die Homebridge automatisch zu starten findet sich &lt;br /&gt;
* hier: [https://github.com/nfarina/homebridge/wiki/Running-HomeBridge-on-a-Raspberry-Pi] oder&lt;br /&gt;
* [http://www.meintechblog.de/2015/10/mit-siri-und-fhem-das-gesamte-smart-home-per-stimme-steuern/]&lt;br /&gt;
&lt;br /&gt;
Link 2 arbeitet mit den von Ubuntu bekannten Services. So ist es möglich mit z.B. sudo service homebridge start/stop/status&lt;br /&gt;
&lt;br /&gt;
== FHEM Device Einstellungen ==&lt;br /&gt;
Damit man mit Siri auch HM-CC-RT-DN Thermostate steuern kann, muss folgendes beachtet werden&lt;br /&gt;
# HM-CC-RT-DN_Clima in den Homekit Raum hinzufügen&lt;br /&gt;
# attr Subtype thermostat setzten.&lt;br /&gt;
Für einen Dummy muss man folgendes machen.&lt;br /&gt;
# attr Dummy genericDeviceType switch&lt;br /&gt;
# attr Dummy setList on off&lt;br /&gt;
&lt;br /&gt;
== HomeKit in iOS einrichten ==&lt;br /&gt;
Um FHEM über Homebridge in iOS nutzen zu können, muss HomeKit eingerichtet werden. &lt;br /&gt;
&lt;br /&gt;
Es gibt verschiedene Apps. Im folgenden wird die App EVE von Elgato empfohlen, die aus dem App-Store geladen werden muss.&lt;br /&gt;
In der App auf:&lt;br /&gt;
&amp;lt;pre style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
Gerät hinzufügen&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Es sollte ein Gerät mit der Bezeichnung &amp;quot;Homebridge&amp;quot; zur Auswahl erscheinen. Zur Ersteinrichtung auf PIN manuell eingeben gehen und (falls in der config.json nicht geändert):&lt;br /&gt;
&amp;lt;pre style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
031-45-154&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
eingeben.&lt;br /&gt;
&lt;br /&gt;
Im Anschluss können die Devices nach Belieben in verschiedene Räume zugeteilt werden, sowie Szenen und Bereiche erstellt werden.&lt;br /&gt;
&lt;br /&gt;
== HomeBridge Allgemein ==&lt;br /&gt;
Nach allen Änderungen die in FHEM gemacht werden, welche Homebridge betreffen, muss Homebridge neu gestartet werden.&lt;br /&gt;
&lt;br /&gt;
Der Neustart ist abhängig davon, wie man Homebridge gestartet hat.&lt;br /&gt;
&lt;br /&gt;
Bitte den entsprechenden Methoden entnehmen.&lt;br /&gt;
&lt;br /&gt;
== Steuerung von MiLight Allgemein ==&lt;br /&gt;
Wie hier im Forum http://forum.fhem.de/index.php/topic,32652.msg351706.html#msg351706 erwähnt, ist es möglich auch MiLight gGeräte per Siri anzusprechen.&lt;br /&gt;
Hierzu muss die config.jason angepasst werden.&lt;br /&gt;
&lt;br /&gt;
1. Es muss die Bridge hinterlegt werden. Beispiel&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;platform&amp;quot;: &amp;quot;MiLight&amp;quot;,&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;MiLight&amp;quot;,&lt;br /&gt;
            &amp;quot;ip_address&amp;quot;: &amp;quot;192.168.001.033&amp;quot;,&lt;br /&gt;
            &amp;quot;port&amp;quot;: 8899,&lt;br /&gt;
            &amp;quot;type&amp;quot;: &amp;quot;rgbw&amp;quot;,&lt;br /&gt;
            &amp;quot;delay&amp;quot;: 30,&lt;br /&gt;
            &amp;quot;repeat&amp;quot;: 3,&lt;br /&gt;
            &amp;quot;zones&amp;quot;:[&amp;quot;Wohnzimmer Lampen&amp;quot;,&amp;quot;Badezimmer Lampen&amp;quot;,&amp;quot;Büro Lampen&amp;quot;,&amp;quot;Keller Lampen&amp;quot;]&lt;br /&gt;
        },&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Es muss für jedes zu Steuernde Gerät ein Dummy angelegt werden. Beispiel:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;source lang=&amp;quot;javascript&amp;quot; style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
        {&lt;br /&gt;
            &amp;quot;accessory&amp;quot;: &amp;quot;Http&amp;quot;,&lt;br /&gt;
            &amp;quot;name&amp;quot;: &amp;quot;Kitchen Lamp&amp;quot;,&lt;br /&gt;
            &amp;quot;on_url&amp;quot;: &amp;quot;https://192.168.1.22:3030/devices/23222/on&amp;quot;,&lt;br /&gt;
            &amp;quot;off_url&amp;quot;: &amp;quot;https://192.168.1.22:3030/devices/23222/off&amp;quot;,&lt;br /&gt;
            &amp;quot;brightness_url&amp;quot;: &amp;quot;https://192.168.1.22:3030/devices/23222/brightness/%b&amp;quot;,&lt;br /&gt;
            &amp;quot;http_method&amp;quot;: &amp;quot;POST&amp;quot;&lt;br /&gt;
        },&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Schalten mit Siri ==&lt;br /&gt;
&#039;&#039;&#039;HolyMoly&#039;&#039;&#039; aus dem FHEM-Forum hat ein paar Beispiele gegeben, wie man Siri dazu bringt Devices zu schalten:&lt;br /&gt;
&amp;lt;pre style=&amp;quot;width:50%;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;quot;Schalte alle Lampen im Obergeschoss ein.&amp;quot;&lt;br /&gt;
&amp;quot;Schalte Chloes Licht aus.&amp;quot;&lt;br /&gt;
&amp;quot;Dimme das Licht in der Küche.&amp;quot;&lt;br /&gt;
&amp;quot;Dimme das Licht im Esszimmer auf 50 %.&amp;quot;&lt;br /&gt;
&amp;quot;Stelle das Licht in der Küche am hellsten ein.&amp;quot;&lt;br /&gt;
&amp;quot;Stelle die Temperatur im Tahoe-Haus auf 22 °C ein.&amp;quot;&lt;br /&gt;
&amp;quot;Stelle das Thermostat im Erdgeschoss auf 21 °C ein.&lt;br /&gt;
&amp;quot;Schalte den Drucker im Büro ein.&amp;quot;&lt;br /&gt;
&amp;quot;Siri, bereite alles für eine Party vor.&amp;quot;&lt;br /&gt;
&amp;quot;Bereite das Ambiente fürs Abendessen vor.&amp;quot;&lt;br /&gt;
&amp;quot;Aktiviere den Nachtruhemodus.&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Mittlerweile kann Siri auch noch die Lichtfarbe von LEDs ändern.&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:HOWTOS]]&lt;/div&gt;</summary>
		<author><name>Netbus</name></author>
	</entry>
	<entry>
		<id>http://wiki.fhem.de/w/index.php?title=FlammEx_Rauchmelder&amp;diff=8958</id>
		<title>FlammEx Rauchmelder</title>
		<link rel="alternate" type="text/html" href="http://wiki.fhem.de/w/index.php?title=FlammEx_Rauchmelder&amp;diff=8958"/>
		<updated>2014-12-23T12:49:55Z</updated>

		<summary type="html">&lt;p&gt;Netbus: /* Hardware */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Features ==&lt;br /&gt;
Die FlammEx Rauchmelder der Serie FL 100 sind VdS-zertifizierte Rauchmelder, die über Kabel oder ein optionales Funk-Vernetzungsmodul untereinander und unabhängig von einer Zentrale zu einer Gruppe zusammengefasst werden können. &lt;br /&gt;
&lt;br /&gt;
FlammEx bietet die Funk-Vernetzungsmodule sowohl in einer 433 MHz als auch in einer 868 MHz Variante an.&lt;br /&gt;
&lt;br /&gt;
== Hinweise zum Betrieb mit FHEM ==&lt;br /&gt;
Da das von den Funk-Vernetzungsmodulen verwendete Protokoll proprietär und bisher noch nicht über FHEM Sender wie [[CUL]] verwendbar ist, besteht momentan nur die Möglichkeit, die Rauchmelder über ein Funkmodul anzubinden, das bereits von FHEM unterstützt wird. &lt;br /&gt;
&lt;br /&gt;
Aufgrund des geringen Preises bieten sich hier die FS20 oder HomeMatic Funk-Tür-/Fensterkontakt an. Am Beispiel eines HomeMatic [[HM-SEC-SC Tür-Fensterkontakt]] soll hier beschrieben werden, wie die Rauchmelder an FHEM angebunden werden können.&lt;br /&gt;
&lt;br /&gt;
=== Hardware ===&lt;br /&gt;
Benötig werden:&lt;br /&gt;
&lt;br /&gt;
* FlammEx FL 100 Rauchmelder mit Funk-Vernetzungsmodul&lt;br /&gt;
* FlammEx Relaismodul FL 00 4738K&lt;br /&gt;
* FlammEx Anschlussdose FL 100 KAD&lt;br /&gt;
* HomeMatic [[HM-SEC-SC Tür-Fensterkontakt]]&lt;br /&gt;
* etwas zweiadriges Kabel, Lötkolben und Werkzeug &lt;br /&gt;
&lt;br /&gt;
Der [[HM-SEC-SC Tür-Fensterkontakt]] wird wie in der unten Verlinkten Anleitung aus dem FHEM Forum mit zwei Anschlußdrähten versehen. Diese werden rechts und links an den Reed-Kontakt angelötet. Die Kabel können dann durch die bestehende Öffnung in der Batteriefachabdeckung nach außen geführt werden.&lt;br /&gt;
&lt;br /&gt;
[[Datei:FlammEx1.JPG|600px]] &lt;br /&gt;
&lt;br /&gt;
Anschließend wird das Relaismodul mit dem Funk-Vernetzungsmodul des Rauchmelders verbunden und in die Anschlussdose gesetzt. Der HM-SEC-SC passt auch noch in die Dose. Die beiden am HM-SEC-SC festgelöteten Kabel werden jetzt mit den Schließer-Kontakten des Relaismoduls verbunden und dann kann alles montiert werden.&lt;br /&gt;
&lt;br /&gt;
[[Datei:FlammEx2.JPG|600px]] &lt;br /&gt;
&lt;br /&gt;
Da am Rauchmelder und am Funk-Vernetzungsmodul keine Modifikationen vorgenommen werden, sollte es hinsichtlich der VdS-Zertifizierung und Garantie keine Probleme geben. Die Garantie des HM-SEC-SC erlischt natürlich durch das anlöten der Kabel!&lt;br /&gt;
&lt;br /&gt;
[[Datei:flammex.PNG|600px]]&lt;br /&gt;
&lt;br /&gt;
[[Datei:flammex-relais.PNG|300px]]&lt;br /&gt;
&lt;br /&gt;
[[Datei:FlammEx3.JPG|600px]]&lt;br /&gt;
&lt;br /&gt;
=== FHEM Config-Auszug ===&lt;br /&gt;
Beispiel für die Konfiguration der Einbindung über einen [[HM-SEC-SC Tür-Fensterkontakt]]:&lt;br /&gt;
&lt;br /&gt;
ssssss -&amp;amp;gt; 6-stellige hexadezimale Seriennummer. (Siehe Logfile: CUL_HM Unknown device CUL_HM_SD_ssssss, please define it)&lt;br /&gt;
&lt;br /&gt;
xxxxxxxxxx -&amp;amp;gt; 10-stellige Seriennummern (vom Aufkleber auf dem Gerät)&lt;br /&gt;
&lt;br /&gt;
Nach dem Pairing des HM-SEC-SC und umbenenen des Devices in &amp;quot;Rauchmelder&amp;quot; sollte folgendes in der fhem.cfg stehen:&lt;br /&gt;
&lt;br /&gt;
 define Rauchmelder CUL_HM ssssss&lt;br /&gt;
 attr Rauchmelder .devInfo 810101&lt;br /&gt;
 attr Rauchmelder .stc 80&lt;br /&gt;
 attr Rauchmelder actCycle 028:00&lt;br /&gt;
 attr Rauchmelder actStatus dead&lt;br /&gt;
 attr Rauchmelder autoReadReg 4_reqStatus&lt;br /&gt;
 attr Rauchmelder expert 2_full&lt;br /&gt;
 attr Rauchmelder firmware 2.1&lt;br /&gt;
 attr Rauchmelder model HM-SEC-SC&lt;br /&gt;
 attr Rauchmelder peerIDs &lt;br /&gt;
 attr Rauchmelder serialNr xxxxxxxxxx&lt;br /&gt;
 attr Rauchmelder subType threeStateSensor&lt;br /&gt;
&lt;br /&gt;
Zusätzlich sollten dann noch diese Attribute gesetzt werden:&lt;br /&gt;
&lt;br /&gt;
 attr Rauchmelder autoReadReg 5_readMissing&lt;br /&gt;
 attr Rauchmelder event-on-change-reading .*&lt;br /&gt;
 &lt;br /&gt;
Je nach Wunsch können dann noch weitere nützliche Attribute gesetzt werden um das Device z.B. in den entsprechenden Räumen anzuzeigen und die Darstellung im Web Interface zu verbessern:&lt;br /&gt;
&lt;br /&gt;
 attr Rauchmelder expert 0_off&lt;br /&gt;
 attr Rauchmelder room Flur,FlammEx,Device&lt;br /&gt;
 attr Rauchmelder devStateIcon off:general_ok *:secur_alarm&lt;br /&gt;
 attr Rauchmelder icon secur_smoke_detector&lt;br /&gt;
&lt;br /&gt;
== Links ==&lt;br /&gt;
Anleitung zur Modifikation des HM-Sec-Sc Funk-Tür-/Fensterkontakt [http://forum.fhem.de/index.php/topic,12379.0.html]&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Other Components]]&lt;br /&gt;
[[Kategorie:HomeMatic Components]]&lt;br /&gt;
[[Kategorie:Rauchmelder]]&lt;br /&gt;
[[Kategorie:Examples]]&lt;/div&gt;</summary>
		<author><name>Netbus</name></author>
	</entry>
	<entry>
		<id>http://wiki.fhem.de/w/index.php?title=Datei:Flammex-relais.PNG&amp;diff=8957</id>
		<title>Datei:Flammex-relais.PNG</title>
		<link rel="alternate" type="text/html" href="http://wiki.fhem.de/w/index.php?title=Datei:Flammex-relais.PNG&amp;diff=8957"/>
		<updated>2014-12-23T12:47:46Z</updated>

		<summary type="html">&lt;p&gt;Netbus: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Netbus</name></author>
	</entry>
	<entry>
		<id>http://wiki.fhem.de/w/index.php?title=Datei:Flammex.PNG&amp;diff=8956</id>
		<title>Datei:Flammex.PNG</title>
		<link rel="alternate" type="text/html" href="http://wiki.fhem.de/w/index.php?title=Datei:Flammex.PNG&amp;diff=8956"/>
		<updated>2014-12-23T12:42:32Z</updated>

		<summary type="html">&lt;p&gt;Netbus: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Netbus</name></author>
	</entry>
	<entry>
		<id>http://wiki.fhem.de/w/index.php?title=HM-CFG-LAN_LAN_Konfigurations-Adapter&amp;diff=8309</id>
		<title>HM-CFG-LAN LAN Konfigurations-Adapter</title>
		<link rel="alternate" type="text/html" href="http://wiki.fhem.de/w/index.php?title=HM-CFG-LAN_LAN_Konfigurations-Adapter&amp;diff=8309"/>
		<updated>2014-11-01T11:41:33Z</updated>

		<summary type="html">&lt;p&gt;Netbus: /* Firmware */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Datei:HM-CFG-LAN.jpg|thumb|right|HomeMatic LAN Konfigurations-Adapter]]&lt;br /&gt;
== Vorbemerkungen ==&lt;br /&gt;
Der HomeMatic Konfigurations-Adapter LAN ([http://www.eq-3.de/produkt-detail-zentralen-und-gateways/items/hm-cfg-lan.html HM-CFG-LAN]), kurz HMLAN, ist ein Schnittstellengerät (IO) ohne wesentliche Intelligenz. Die Aufgabe ist, ein Interface von der Zentrale zu den Geräten bereitzustellen. Ein HMLAN selbst steuert keine Geräte, es überträgt nur Nachrichten in beide Richtungen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Alternativen ===&lt;br /&gt;
Alternativen zu einem HMLAN sind [[HM-CFG-USB USB Konfigurations-Adapter]], [[CUN]], [[CUNO]] und [[CUL]].&lt;br /&gt;
&lt;br /&gt;
==== HMUSB ====&lt;br /&gt;
Ein HMUSB hat nahezu identische Eigenschaften wie ein HMLAN. Der wesentliche Unterschied ist die Anbindung über USB anstatt Ethernet. Es hat sich erwiesen, dass USB eine bessere Latenz hat als LAN - also eine kürzere Verzögerung. Damit hat ein HMUSB leichte Vorteile zu HMLAN, was aber in den bei Weitem meisten Fällen durch die interne Timing Kalkulation abgefangen wird. &lt;br /&gt;
Dafür bietet der HMLAN mit seinem Netzwerkanschluss Vorteile bei der Platzierung.&lt;br /&gt;
&lt;br /&gt;
==== CUL/CUN(O) ====&lt;br /&gt;
* Die Devices liefern keine eigenen Zeitstempel, wodurch eine Timingkorrektur durch FHEM nicht möglich ist. Je nach Systemgeschwindigkeit kann dies zu Problemen, Nachrichten wiederholen und ggf. auch Nachrichtenverlust führen&lt;br /&gt;
* Da USB kurze Reaktionszeiten und geringe Timingschwankungen hat ist der Einsatz von [[CUL]] und [[CUNO]] mit HM möglich. &amp;lt;br&amp;gt;Die Timingschwankungen der Ethernet-schnittstelle hingegen können in FHEM nicht ausgeglichen werden. Daher kann der Einsatz der [[CUNO]] über Ethernet &#039;&#039;&#039;nicht empfohlen&#039;&#039;&#039; werden.&lt;br /&gt;
* [[AES Encryption]] wird nicht unterstützt&lt;br /&gt;
* lacyConfig (ein Übertragungsmode) wird nicht unterstützt&lt;br /&gt;
&lt;br /&gt;
=== Funktionen ===&lt;br /&gt;
==== AES ====&lt;br /&gt;
siehe [[AES Encryption]].&lt;br /&gt;
&lt;br /&gt;
==== Übertragungsmode ====&lt;br /&gt;
Es werden alle HM-Modi unterstützt. Diese sind Always, Burst, Wakeup und Config. Weiter gibt es lacyConfig und conditionalBurst. Siehe [[HomeMatic]] für Details.&lt;br /&gt;
&lt;br /&gt;
==== KeepAlive ====&lt;br /&gt;
Das HMLAN baut eine Verbindung zur Zentrale über das LAN Interface auf. HMLAN erwartet alle 30sec eine keep-alive Nachricht von der Zentrale. Sollte diese ausbleiben baut HMLAN die LAN-Verbindung ab. Das führt zu einem Disconnect, der in State gemeldet wird. Die Verbindung wird automatisch wieder aufgebaut. &lt;br /&gt;
FHEM sendet den keep-alive alle 25 sec, was einen 5sec Puffer einräumt. In Internals &#039;&#039;&#039;msgKeepAlive&#039;&#039;&#039; kann man sehen, wie hoch die maximale Verzögerung der Zentrale beim Senden war und wie viel Puffer (in sec) noch war. &lt;br /&gt;
Die Wiederholrate von 25 sec des keep-alive kann man mit dem Attribut &#039;&#039;&#039;wdTimer&#039;&#039;&#039; reduzieren werden, was den Puffer erhöhen. Es wird jedoch dringend geraten, im Problemfall die Ursache der Verzögerung zu finden und zu eliminieren. &lt;br /&gt;
&lt;br /&gt;
==== Nachrichtenübertragung - Performance ====&lt;br /&gt;
* Mit Internal &#039;&#039;&#039;msgParseDly&#039;&#039;&#039; kann man ablesen, wie viel Verzögerung eine Nachricht von Empfangen im HMLAN bis zur Verarbeitung in der Zentrale hat.&lt;br /&gt;
* HMLAN hält sich an den Funkstandard, der einem Sender eine maximale Sendezeit je Stunde erlaubt. Wird dieser Wert überschritten stellt HMLAN das Senden ein. Empfangen wird weiter. Ist eine Kapazität von 90% erreicht wird im Reading &#039;&#039;&#039;cond&#039;&#039;&#039; &#039;&#039;&#039;Warning-HighLoad&#039;&#039;&#039; gemeldet. Bei cond &#039;&#039;&#039;ERROR-Overload&#039;&#039;&#039; wird das Senden eingestellt ist. &lt;br /&gt;
&lt;br /&gt;
==== Loggen/Mitschneiden ====&lt;br /&gt;
Es stehen die üblichen Funktionen des Attribute &#039;&#039;&#039;verbose&#039;&#039;&#039; zu Verfügung. Darüber hinaus gibt es die Attribute hmProtocolEvents und logIDs. Siehe auch &amp;lt;u&amp;gt;[[Homematic Nachrichten sniffen|Homematic Nachrichten sniffen]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
== Vorbereitung ==&lt;br /&gt;
[[Datei:HMLAN_CONFIG_IP_AES.png|300px|thumb|right|HomeMatic Lan-Interface Configurator]][[Datei:HMLAN_CONFIG_AES.png|300px|thumb|right|HomeMatic Konfigurator]]Bevor man den HMLAN mit Fhem nutzen kann, müssen noch Einstellungen vorgenommen werden. Dazu braucht man Software die bei [http://www.eq-3.de/software.html HomeMatic] in der Version 1.512 (Stand 19. Dezember 2013) herunter zu laden ist und nach der Installation mit der Verknüpfung &amp;quot;HomeMatic-Lan-Interface konfigurieren&amp;quot; oder &amp;quot;HomeMatic-Komponenten konfigurieren&amp;quot; gestartet wird und unter Windows läuft. Für andere Betriebssystem (siehe Anhang im Beitrag {{Link2Forum|Topic=11506|Message=67417|LinkText=Anleitung für OS X}}) braucht man eine Windows-Emulation. Dem HMLAN liegen zwei Konfigurationsprogramme bei, bitte darauf achten, das richtige zu verwenden. Wenn das Konfigurationsprogramm den HMLAN-Konfigurator nicht findet, sollten alle nicht benutzten Netzwerkinterfaces vorübergehend deaktiviert werden, siehe {{Link2Forum|Topic=10933|Message=62960|LinkText=Beitrag im Fhem Forum}} und [[HM-CFG-LAN_LAN_Konfigurations-Adapter#Bekannte_Probleme|bekannte Probleme]].&lt;br /&gt;
&lt;br /&gt;
=== Firmware ===&lt;br /&gt;
Die aktuelle Firmware Version des HMLAN ist 0.964 (Stand November 2014). Ein Update ist unter &#039;&#039;&amp;quot;Update Firmware&amp;quot;&#039;&#039; mit der &#039;&#039;&amp;quot;HomeMatic Lan-Interface Configurator&amp;quot;&#039;&#039; Software möglich.&lt;br /&gt;
&lt;br /&gt;
=== IP Adresse ===&lt;br /&gt;
Der HMLAN Konfigurator ist ähnlich wie der CUN(O) ein Netzwerkgerät. Er beherrscht DHCP und bezieht bei einem im Netzwerk erreichbaren DHCP Servers von diesem eine IP-Adresse. Da Fhem zwecks Kommunikation die IP-Adresse wissen muss, ist es sinnvoll, dem HMLAN eine statische Adresse zuzuweisen. &lt;br /&gt;
* mit der auf der CD mitgelieferten &#039;&#039;&amp;quot;HomeMatic Lan-Interface Configurator&amp;quot;&#039;&#039; Software unter &#039;&#039;&amp;quot;Change IP Settings&amp;quot;&#039;&#039; oder&lt;br /&gt;
* im DHCP-Server eine feste IP-Adresse zuzuweisen (sofern dies vom gegeben DHCP Server als Konfigurationsoption unterstützt wird).&lt;br /&gt;
&lt;br /&gt;
=== AES Encryptet LAN Communication ===&lt;br /&gt;
Wichtig ist, dass vor Verwendung die &amp;quot;AES Encryptet LAN Communication&amp;quot; abgeschaltet wird, da diese FHEM nicht unterstützt. Dies ist unter &#039;&#039;&amp;quot;Change IP Settings&amp;quot;&#039;&#039; der &#039;&#039;&amp;quot;HomeMatic Lan-Interface Configurator&amp;quot;&#039;&#039; Software möglich. AES auf dem LAN ist zu unterscheiden von HMLAN auf der Funktschnittstelle. siehe [[AES Encryption]].&lt;br /&gt;
&lt;br /&gt;
== Einbindung in FHEM ==&lt;br /&gt;
Der HMLAN-Konfigurator muss in FHEM definiert werden. Dazu in die fhem.cfg eintragen:&lt;br /&gt;
&lt;br /&gt;
 define HMLAN1 HMLAN &amp;lt;IP Adresse&amp;gt;:1000 &lt;br /&gt;
 attr HMLAN1 hmId 123ABC&lt;br /&gt;
Der Name HMLAN1 kann frei vergeben werden. Standard IP-Port des HMLAN-Konfigurators ist 1000.&lt;br /&gt;
&lt;br /&gt;
HMLAN kennt mehrere Attribute ([http://fhem.de/commandref.html#HMLAN commandref]). &lt;br /&gt;
Wichtig ist die &#039;&#039;&#039;hmId&#039;&#039;&#039; zu vergeben. Diese ist ein 3-Byte hexadezimal-Wert, somit ein 6-steliger String in &#039;&#039;&#039;Großbuchstaben&#039;&#039;&#039;. 000000 und FFFFFF sind ungültig. &lt;br /&gt;
Wenn HM-Geräte mit der Zentrale gepairt werden wir ihnen diese hmId eingetragen. Wechselt man die hmId müssen &#039;&#039;&#039;aller&#039;&#039;&#039; damit gepairten Geräte neu gepairt werden. &lt;br /&gt;
&lt;br /&gt;
Die Adresse wird in Grossbuchstaben eingegeben, siehe [[HMLAN_Konfigurator#Bekannte_Probleme|&amp;quot;Bekannte Probleme&amp;quot;]].&lt;br /&gt;
&lt;br /&gt;
Ein &#039;&#039;&#039;gleichzeitiger&#039;&#039;&#039; Zugriff von Fhem und der HomeMatic-Software auf den HMLAN-Konfigurator ist nicht möglich, da letzterer nur eine Verbindung zulässt. Wollen Sie temporär z.B. mit der Windows-Software von HomeMatic zugreifen, ist Fhem zu deaktivieren.&lt;br /&gt;
Sinnvoll ist es, die hmId mit der der PC-Software gleichzusetzen. Dann kann man von beiden Zentralen alternativ zugreifen ohne pairen zu müssen.&lt;br /&gt;
&lt;br /&gt;
=== Nutzung mehrere IOs ===&lt;br /&gt;
==== Empfangen ====&lt;br /&gt;
Man kann an einem FHEM mehrere IOs (HMLAN/USB, CUL/CUNO) betreiben. Generell empfangen alle IOs von allen Geräten in ihrem Empfangsbereich - unabhängig von der hmId. &lt;br /&gt;
&lt;br /&gt;
==== Senden ====&lt;br /&gt;
An ein Gerät wird nur über das IO gesendet, das in Internals-&amp;gt;IODev angezeigt wird. Nutzt man mehrere IOs sollte im HM Device das Attribut IODev auf das gewünschte IO setzen. Ansonsten sucht FHEM zufällig ein IO aus.&lt;br /&gt;
&lt;br /&gt;
==== hmId bei mehreren IOs ====&lt;br /&gt;
Man kann allen IOs die gleiche HMId setzen. Das erlaubt die wahlfreie Umschaltung des Sende-IOs für das Device. &lt;br /&gt;
Sollte man unterschiedliche hmIds wählen simuliert dies mehrere Zentralen. Das Device, an das man sendet, muss über ein IO angesprochen werden, mit einer hmId auf die das Device gepairt ist. &lt;br /&gt;
&lt;br /&gt;
=== Attribute ===&lt;br /&gt;
* &#039;&#039;&#039;hmId&#039;&#039;&#039;: Adresse, die das IO auf der funkstrecke nutzt. Es ist ein 3-byte hexwert (6 Zeichen) in Großbuchstaben. &lt;br /&gt;
* &#039;&#039;&#039;hmkey, hmkey2..5&#039;&#039;&#039;: bis zu 5 AES keys, die auf der Funkstrecke genutzt werden. Siehe [[AES Encryption]]&lt;br /&gt;
* &#039;&#039;&#039;hmLanQlen&#039;&#039;&#039; legt fest, wie viele Nachrichten parallel gesendet werden dürfen, also auf wie viele Antworten die Zentrale parallel warten darf. Ein Wert von 1 ist max defensiv, erzeugt aber eine höhere Verzögerung. Wählt man einen höheren Wert kann es zu Nachrichten-Wiederholern kommen. &lt;br /&gt;
* &#039;&#039;&#039;hmProtocolEvents&#039;&#039;&#039;: alle Nachrichten werden dekodiert ausgegeben. Diese Einstellung benötigt einige Performance insbesondere bei höheren Level. Man sollte es vorsichtig nutzen. &lt;br /&gt;
* &#039;&#039;&#039;logIDs&#039;&#039;&#039;: zeichnet Rohmessages auf und bietet die genaueste Methode bei der Fehlersuche. Da Nachrichten undekodiert ausgegeben werden ist es im Wesentlichen für Spezialisten von Bedeutung. Man gibt eine Komma getrennte Liste von IDs an, die geloggt werden sollen. Mit &#039;&#039;&#039;all&#039;&#039;&#039; werden alle IDs aufgezeichnet. &#039;&#039;&#039;sys&#039;&#039;&#039; zeichnet zusätzlich Systemmessages auf. &#039;&#039;&#039;sys,all&#039;&#039;&#039; somit alles.&lt;br /&gt;
* &#039;&#039;&#039;respTime&#039;&#039;&#039;: Antwortzeit des HMLAN auf ein keep-alive kann hier eingestellt werden. Normal sollte das HMLAN in 1 sec der Zentrale antworten. Sollte dies nicht passieren, wird die Message wiederholt. Der Wert sollte nur in Ausnahmefällen verändert werden.&lt;br /&gt;
&lt;br /&gt;
=== Readings ===&lt;br /&gt;
* &#039;&#039;&#039;Xmit-Events&#039;&#039;&#039;: Anzahl der Ereignisse &lt;br /&gt;
* &#039;&#039;&#039;cond&#039;&#039;&#039;: aktueller Zustand des IO. &lt;br /&gt;
** ok&lt;br /&gt;
** Warning-HighLoad: 90% der 1h sendekapazität sind erreicht&lt;br /&gt;
** ERROR-Overload: 100% der sendekapazität sind erreicht, &#039;&#039;&#039;das IO sendet nicht mehr&#039;&#039;&#039;&lt;br /&gt;
** timeout&lt;br /&gt;
** disconnected: die Verbindung FHEM /IO ist unterbrochen&lt;br /&gt;
** Overload-released: das IO ist aus ERROR-Overload zurück im Sendebetrieb&lt;br /&gt;
** init: Das IO wurde neu initialisiert. &lt;br /&gt;
* &#039;&#039;&#039;prot_ERROR-Overload&#039;&#039;&#039;: Anzahl des Events, Zeitstempel des letzten Auftretens&lt;br /&gt;
* &#039;&#039;&#039;prot_Warning-HighLoad&#039;&#039;&#039;: Anzahl des Events, Zeitstempel des letzten Auftretens&lt;br /&gt;
* &#039;&#039;&#039;prot_disconnected&#039;&#039;&#039;: Anzahl des Events, Zeitstempel des letzten Auftretens&lt;br /&gt;
* &#039;&#039;&#039;prot_init&#039;&#039;&#039;: Anzahl des Events, Zeitstempel des letzten Auftretens&lt;br /&gt;
* &#039;&#039;&#039;prot_ok&#039;&#039;&#039;: Anzahl des Events, Zeitstempel des letzten Auftretens&lt;br /&gt;
* &#039;&#039;&#039;prot_timeout&#039;&#039;&#039;: Anzahl des Events, Zeitstempel des letzten Auftretens&lt;br /&gt;
&lt;br /&gt;
=== Internals ===&lt;br /&gt;
* &#039;&#039;&#039;XmitOpen&#039;&#039;&#039;: 1 = HMLAN ist sende bereit&lt;br /&gt;
* &#039;&#039;&#039;assignedIDs&#039;&#039;&#039;: HMIDs der HM Devices, die über dieses IO bedient werden&lt;br /&gt;
* &#039;&#039;&#039;assignedIDsCnt&#039;&#039;&#039;: Anzahl der zugewiesenen HMIds von FHEM&lt;br /&gt;
* &#039;&#039;&#039;assignedIDsReport&#039;&#039;&#039;: Anzahl der HMIds, die das HMLAN angibt zu bedienen. Die Zahl sollte identisch sein mit assignedIDsCnt&lt;br /&gt;
* &#039;&#039;&#039;msgKeepAlive&#039;&#039;&#039;: dlyMax: maximale Verzögerung, die ein keep-alive hatte. bufferMin: der minimale Zeitpuffer, der übrig blieb, bis das keep-alive zu spät gekommen wäre. Der Puffer sollte 2 oder größer sein, sonst könnte man gelegentlich disconnects bekommen. &lt;br /&gt;
* &#039;&#039;&#039;msgLoadEst&#039;&#039;&#039;: Funkbelastung des HMLAN. Der Wert wird über 1 Stunde akkumuliert. Sollten 100% erreicht sein, wird das HMLAN den Sendebetrieb einstellen. Der Wert ist eine Hochrechnung in FHEM. Es ist möglich, dass das HMLAN mehr belastet ist. Die 10 min werte zeigen die Belastung in den letzten 10min Perioden an.&lt;br /&gt;
* &#039;&#039;&#039;msgParseDly&#039;&#039;&#039;: Verzögerung der Message Verarbeitung vom Empfang im IO bis zur Verarbeitung in FHEM. Eine Verzögerung kann durch Prozesse an LAN, durch FHEM Prozesse oder sonstige Prozesse/Applikationen der CPU  hervorgerufen werden.&lt;br /&gt;
&lt;br /&gt;
== Pairen von Geräten ==&lt;br /&gt;
Jedes HM Geräte muss vor Verwendung mit der HM-Zentrale gepairt werden. Dabei wird die hmId des gewählten IOs in das Device programmiert. Ändert man die hmId des IO, mit dem an das Device anspricht, muss man das Device neu pairen. &lt;br /&gt;
Alle Geräte haben eine eigene hmId, das nicht änderbar ist. Details zum Pairen auf der Seite [[HomeMatic Devices pairen]].&lt;br /&gt;
&lt;br /&gt;
== Bekannte Probleme ==&lt;br /&gt;
Selten lehnt der HMLAN-Konfigurator ohne erkennbaren Grund nach monatelangem störungsfreiem Betrieb die Verbindung ab:&lt;br /&gt;
&lt;br /&gt;
 Opening HMLAN1 device 192.168.168.60:1000&lt;br /&gt;
 192.168.168.60:1000 connection refused&lt;br /&gt;
Der HMLAN-Konfigurator kann aber über die mitgelieferte Konfigurationssoftware problemlos erreicht werden. Der Zustand lässt sich auch durch einen Reboot des HMLAN-Konfigurators (oder Fhem) nicht beheben, wohl aber durch eine Aktualisierung der Firmware des HMLAN-Konfigurators, selbst wenn die installierte Version aktuell ist.&lt;br /&gt;
&lt;br /&gt;
Wenn das Konfigurationsprogramm den HM-CFG-LAN LAN Konfigurations-Adapter zu finden, sollten alle nicht benutzten Netzwerkinterfaces vorübergehend deaktiviert werden.  Vereinzelt gibt es Hinweise darauf, dass es unter  Windows 7 eventuell nicht reicht, die Netzwerkverbindungen im &amp;quot;Netzwerk- und Freigabecenter&amp;quot; zu deaktivieren, sondern ein Deaktivierung der Netzwerkadapter im Gerätemanager erforderlich ist.&lt;br /&gt;
&lt;br /&gt;
== Wechsel von CUL zu HMLAN ==&lt;br /&gt;
Sollten Sie ein [[CUL]] als IO für Homematic-Geräte eingesetzt haben und jetzt einen Wechsel auf den HMLAN Konfigurator planen, hält sich der Aufwand in Grenzen:&lt;br /&gt;
&lt;br /&gt;
* deaktivieren Sie das CUL in der &#039;&#039;fhem.cfg&#039;&#039;.&lt;br /&gt;
* konfigurieren Sie den HMLAN Konfigurator &#039;&#039;&#039;von Hand&#039;&#039;&#039; &lt;br /&gt;
* Ändern sie das Attribut IODev aller HM-Devices vom Namen der CUL auf den Namen des HMLAN&lt;br /&gt;
* sollte sie das Attribut IODev nicht nutzen (nicht empfohlen) achten sie darauf, dass im fhem.cfg das IO vor allen HM-devices definiert wird. Eine automatischen Zuweisung des IO zu den Devices ist sonst nicht möglich. &lt;br /&gt;
** der HMLAN &#039;&#039;&#039;muss&#039;&#039;&#039; die gleiche &#039;&#039;hmId&#039;&#039; wie das bisherige CUL erhalten. Ansonsten müssen alle Geräte neu gepairt / angelernt werden.&lt;br /&gt;
** AES muss im HMLAN abgeschaltet werden.&lt;br /&gt;
* verbinden Sie den HMLAN Konfigurator mit ihrem Netzwerk und ziehen das CUL aus der USB-Buchse.&lt;br /&gt;
* geben Sie in der FHEM-Befehlszeile &#039;&#039;shutdown restart&#039;&#039; gefolgt von &amp;amp;lt;Enter&amp;amp;gt; (nicht &amp;quot;save&amp;quot;) ein (evtl. reicht auch ein &#039;&#039;rereadcfg&#039;&#039;).&lt;br /&gt;
* kontrollieren Sie im Event-Monitor und in den HM-Device-Logs von Fhem die Kommunikation.&lt;br /&gt;
&lt;br /&gt;
Bitte beachten: Falls dem CUL keine explizite hmId per Attribut zugewiesen wurde, wird diese ID aus &amp;quot;F1&amp;amp;lt;FHT-ID&amp;amp;gt;&amp;quot; zusammengebaut. Die hmId muss auf dem HMLAN explizit gesetzt werden.&lt;br /&gt;
&lt;br /&gt;
== Links ==&lt;br /&gt;
* [http://www.eq-3.de/software.html Software] für den Konfigurationsadapter von der eQ-3 Site&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:HomeMatic Components]]&lt;br /&gt;
[[Kategorie:Interfaces]]&lt;/div&gt;</summary>
		<author><name>Netbus</name></author>
	</entry>
</feed>