<?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=Michael</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=Michael"/>
	<link rel="alternate" type="text/html" href="http://wiki.fhem.de/wiki/Spezial:Beitr%C3%A4ge/Michael"/>
	<updated>2026-05-03T04:41:22Z</updated>
	<subtitle>Benutzerbeiträge</subtitle>
	<generator>MediaWiki 1.43.6</generator>
	<entry>
		<id>http://wiki.fhem.de/w/index.php?title=SiSi&amp;diff=29487</id>
		<title>SiSi</title>
		<link rel="alternate" type="text/html" href="http://wiki.fhem.de/w/index.php?title=SiSi&amp;diff=29487"/>
		<updated>2019-02-13T08:24:01Z</updated>

		<summary type="html">&lt;p&gt;Michael: /* Einrichten der Kommunikation über D-Bus */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Infobox Modul&lt;br /&gt;
|ModPurpose=Senden und Empfangen von Nachrichten (Text und Fotos) mit dem freien Messenger Signal&lt;br /&gt;
|ModType=x&lt;br /&gt;
|ModForumArea=Codeschnipsel&lt;br /&gt;
|ModFTopic=84996&lt;br /&gt;
|ModTechName=32_SiSi.pm&lt;br /&gt;
|ModOwner=Quantum ({{Link2FU|35410|Forum}})}}&lt;br /&gt;
Das Modul [[SiSi]] ermöglicht den Versand von Nachrichten über den Instant-Messaging-Dienst [https://signal.org Signal] aus FHEM heraus.&lt;br /&gt;
&lt;br /&gt;
Um dies zu ermöglichen, sind mehrere Schritte notwendig:&lt;br /&gt;
#Installation des [https://github.com/AsamK/signal-cli Signal Messenger Command Line Interface (signal-cli)].&lt;br /&gt;
#Registrierung einer Rufnummer bei Signal&lt;br /&gt;
#Einrichtung der [https://de.wikipedia.org/wiki/D-Bus D-Bus]-Schnittstelle&lt;br /&gt;
#Inbetriebnahme des FHEM-Moduls&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Diese Anleitung geht davon aus, dass&lt;br /&gt;
*als Betriebssystem Debian oder Raspbian verwendet wird&lt;br /&gt;
*FHEM im Verzeichnis &#039;&#039;/opt/fhem&#039;&#039; installiert wurde (ansonsten müssen die Pfade in der Anleitung angepasst werden)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Alle in dieser Anleitung vorkommenden Textstellen in spitzen Klammern (z.B. &amp;lt;ErsetzMich&amp;gt;) sind durch eigene Werte zu ersetzen, sofern es sich nicht um Auszüge aus Konfigurationsdateien handelt.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Voraussetzungen==&lt;br /&gt;
Um sowohl das &#039;&#039;signal-cli&#039;&#039; als auch das Modul verwenden zu können, müssen bestimmmte Linux-Pakete installiert sein. Im Folgenden eine Liste der Pakete für Debian/Raspbian:&lt;br /&gt;
*&#039;&#039;&#039;&#039;&#039;libunixsocket-java&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;&#039;&#039;dbus&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;&#039;&#039;libnet-dbus-perl&#039;&#039;&#039;&#039;&#039;&lt;br /&gt;
*&#039;&#039;&#039;&#039;&#039;haveged&#039;&#039;&#039;&#039;&#039; (Dient dazu, genügend Entropie für den Zufallszahlengenerator zu erzeugen.)&lt;br /&gt;
*&#039;&#039;&#039;&#039;&#039;openjdk-9-jre-headless&#039;&#039;&#039;&#039;&#039; (Es sollte eine Version &amp;gt; 7 installiert werden. Welche genau, hängt von Betriebssystem und dem Installationszeitpunkt ab.)&lt;br /&gt;
&lt;br /&gt;
Optional kann noch das Paket &#039;&#039;&#039;&#039;&#039;shared-mime-info&#039;&#039;&#039;&#039;&#039; installiert werden wenn ein gesendeter Anhang nicht direkt im Chatverlauf angezeigt werden soll, sondern erst durch einen Klick auf das Datei-Icon.&lt;br /&gt;
&lt;br /&gt;
Installation der Pakete in einem Rutsch:&lt;br /&gt;
 sudo apt-get update&lt;br /&gt;
 sudo apt-get install libunixsocket-java dbus libnet-dbus-perl shared-mime-info haveged openjdk-9-jre-headless&lt;br /&gt;
&lt;br /&gt;
==Installation des signal-cli==&lt;br /&gt;
[https://github.com/AsamK/signal-cli signal-cli] ist ein Kommandozeilen-Interface für [https://github.com/signalapp/libsignal-service-java libsignal-service-java]&amp;lt;ref&amp;gt;libsignal-service-java ist eine Java/Android Bibliothek zur Kommunikation mit dem Signal Messaging Service&amp;lt;/ref&amp;gt;. Es unterstützt das Registrieren und Verifizieren einer Rufnummer sowie das Senden und Empfangen von Nachrichten.&lt;br /&gt;
&lt;br /&gt;
Der erste Schritt zur Installation von &#039;&#039;signal-cli&#039;&#039; ist, die aktuellste Versionsnummer auf der GitHub-Seite des Projektes unter &amp;quot;[https://github.com/AsamK/signal-cli/releases Releases]&amp;quot; zu finden. Zum Zeitpunkt der Erstfassung dieser Anleitung war das die Version 0.6.0.&lt;br /&gt;
&lt;br /&gt;
Anschließend wird die Release heruntergeladen und als Benutzer &#039;&#039;&#039;&#039;&#039;fhem&#039;&#039;&#039;&#039;&#039; in den Wurzelordner von FHEM (z.B. &#039;&#039;/opt/fhem&#039;&#039;) entpackt.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
export VERSION=0.6.0&lt;br /&gt;
wget https://github.com/AsamK/signal-cli/releases/download/v&amp;quot;${VERSION}&amp;quot;/signal-cli-&amp;quot;${VERSION}&amp;quot;.tar.gz&lt;br /&gt;
sudo -u fhem tar xf signal-cli-&amp;quot;${VERSION}&amp;quot;.tar.gz -C /opt/fhem&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Zur einfacheren Handhabung kann der neu erstellte Ordner umbenannt und ein symbolischer Link in &#039;&#039;/usr/local/bin/&#039;&#039; erstellt werden.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
sudo mv /opt/fhem/signal-cli-&amp;quot;${VERSION}&amp;quot; /opt/fhem/signal-cli&lt;br /&gt;
sudo ln -sf /opt/fhem/signal-cli/bin/signal-cli /usr/local/bin/&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Registrierung einer Rufnummer==&lt;br /&gt;
Um Signal nutzen zu können, ist eine Rufnummer zwingend erforderlich. Für diesen Fall empfiehlt es sich, eine Nummer zu verwenden, die nicht schon für die Kommunikation mit Signal verwendet wird. Zum Beispiel eine Festnetznummer.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Die Registrierung einer Nummer läuft wie folgt ab:&lt;br /&gt;
#Registrierung der Nummer mittels &#039;&#039;signal-cli&#039;&#039;&lt;br /&gt;
#Erhalt einer Textnachricht mit dem Verifizierungscode an angegebene Nummer. Wenn an der Rufnummer keine Textnachrichten empfangen werden können, kann - wie in diesem Beispiel - mit dem Parameter &#039;&#039;--voice&#039;&#039; ein Sprachanruf erzwungen werden. In beiden Fällen kann es durchaus etwas länger dauern, bis man den Verifizierungscode erhält.&lt;br /&gt;
#Verifizierung der Nummer mittels &#039;&#039;signal-cli&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Hinweis|Alle der folgenden Befehle werden als Benutzer &#039;&#039;&#039;&#039;&#039;fhem&#039;&#039;&#039;&#039;&#039; ausgeführt, damit die Konfigurationsdateien im Home-Verzeichnis des Benutzers (z.B. &#039;&#039;&amp;lt;FHEM-Root&amp;gt;/.config/signal&#039;&#039;) landen.}}&lt;br /&gt;
&lt;br /&gt;
Im ersten Schritt registriert man eine Nummer mittels &#039;&#039;signal-cli&#039;&#039;.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;sudo -u fhem signal-cli -u &amp;lt;Telefonnummer&amp;gt; register --voice&amp;lt;/source&amp;gt;&lt;br /&gt;
Wenn alles in Ordnung ist, erhält man keine Rückmeldung. Wenn es lange dauert, hat man nicht genug Entropie. &lt;br /&gt;
Kurz darauf erhält man einen Sprachanruf auf Englisch, mit dem einem der sechsstellige Verifizierungscode yyyyyy mitgeteilt wird.&lt;br /&gt;
&lt;br /&gt;
Im zweiten Schritt wird diese Nummer mit Hilfe des erhaltenen Codes verifiziert.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;sudo -u fhem signal-cli -u &amp;lt;Telefonnummer&amp;gt; verify &amp;lt;VerificationCode&amp;gt;&amp;lt;/source&amp;gt;&lt;br /&gt;
Auch hier gibt es keine Rückmeldung, solange alles funktioniert hat.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
War die Registrierung erfolgreich, können nun Nachrichten via &#039;&#039;signal-cli&#039;&#039; versendet werden:&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;signal-cli -u &amp;lt;RegistrierteNummer&amp;gt; send -m &amp;quot;Greetings from FHEM!&amp;quot; &amp;lt;Empfängernummer&amp;gt;&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Einrichten der Kommunikation über D-Bus ==&lt;br /&gt;
Damit das FHEM-Modul über die D-Bus Schnittstelle mit &#039;&#039;signal-cli&#039;&#039; kommunizieren kann, ist die Einrichtung von D-Bus sowie die Erstellung eines [https://de.wikipedia.org/wiki/Systemd systemd]-Scripts notwendig.&lt;br /&gt;
&lt;br /&gt;
{{Hinweis|Alle der folgenden drei Dateien müssen als Benutzer &#039;&#039;&#039;&#039;&#039;root&#039;&#039;&#039;&#039;&#039; angelegt und editiert werden.}}&lt;br /&gt;
&lt;br /&gt;
;/etc/dbus-1/system.d/org.asamk.Signal.conf&lt;br /&gt;
Die Datei in einem Editor öffnen&lt;br /&gt;
 sudo nano /etc/dbus-1/system.d/org.asamk.Signal.conf&lt;br /&gt;
und mit folgendem Inhalt befüllen&lt;br /&gt;
&amp;lt;source lang=&amp;quot;xml&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;?xml version=&amp;quot;1.0&amp;quot;?&amp;gt; &amp;lt;!--*-nxml-*--&amp;gt;&lt;br /&gt;
&amp;lt;!DOCTYPE busconfig PUBLIC &amp;quot;-//freedesktop//DTD D-BUS Bus Configuration 1.0//EN&amp;quot;&lt;br /&gt;
        &amp;quot;http://www.freedesktop.org/standards/dbus/1.0/busconfig.dtd&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;busconfig&amp;gt;&lt;br /&gt;
        &amp;lt;policy user=&amp;quot;fhem&amp;quot;&amp;gt;&lt;br /&gt;
                &amp;lt;allow own=&amp;quot;org.asamk.Signal&amp;quot;/&amp;gt;&lt;br /&gt;
                &amp;lt;allow send_destination=&amp;quot;org.asamk.Signal&amp;quot;/&amp;gt;&lt;br /&gt;
                &amp;lt;allow receive_sender=&amp;quot;org.asamk.Signal&amp;quot;/&amp;gt;&lt;br /&gt;
        &amp;lt;/policy&amp;gt;&lt;br /&gt;
&lt;br /&gt;
        &amp;lt;policy context=&amp;quot;default&amp;quot;&amp;gt;&lt;br /&gt;
                &amp;lt;allow send_destination=&amp;quot;org.asamk.Signal&amp;quot;/&amp;gt;&lt;br /&gt;
                &amp;lt;allow receive_sender=&amp;quot;org.asamk.Signal&amp;quot;/&amp;gt;&lt;br /&gt;
        &amp;lt;/policy&amp;gt;&lt;br /&gt;
&amp;lt;/busconfig&amp;gt;&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;/usr/share/dbus-1/system-services/org.asamk.Signal.service&lt;br /&gt;
Die Datei in einem Editor öffnen&lt;br /&gt;
 sudo nano /usr/share/dbus-1/system-services/org.asamk.Signal.service&lt;br /&gt;
und mit folgendem Inhalt befüllen&lt;br /&gt;
&amp;lt;source lang=&amp;quot;ini&amp;quot;&amp;gt;&lt;br /&gt;
[D-BUS Service]&lt;br /&gt;
Name=org.asamk.Signal&lt;br /&gt;
Exec=/bin/false&lt;br /&gt;
SystemdService=dbus-org.asamk.Signal.service&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
;/etc/systemd/system/signal.service&lt;br /&gt;
Die Datei in einem Editor öffnen&lt;br /&gt;
 sudo nano /etc/systemd/system/signal.service&lt;br /&gt;
und mit folgendem Inhalt befüllen.&lt;br /&gt;
Achtung! Die Rufnummer im Script muss durch die in den vorigen Schritten registrierte ersetzt werden. Außerdem muss unter Umständen der Pfad des FHEM-Wurzelverzeichnisses angepasst werden.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;ini&amp;quot;&amp;gt;&lt;br /&gt;
[Unit]&lt;br /&gt;
Description=Send secure messages to Signal clients&lt;br /&gt;
Requires=dbus.socket&lt;br /&gt;
After=dbus.socket&lt;br /&gt;
Wants=network-online.target&lt;br /&gt;
After=network-online.target&lt;br /&gt;
&lt;br /&gt;
[Service]&lt;br /&gt;
Type=dbus&lt;br /&gt;
Environment=&amp;quot;SIGNAL_CLI_OPTS=-Xms2m&amp;quot;&lt;br /&gt;
ExecStart=/opt/fhem/signal-cli/bin/signal-cli -u +49xxxxxxxxxxx --config /opt/fhem/.local/share/signal-cli daemon --system&lt;br /&gt;
User=fhem&lt;br /&gt;
BusName=org.asamk.Signal&lt;br /&gt;
&lt;br /&gt;
[Install]&lt;br /&gt;
Alias=dbus-org.asamk.Signal.service&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Sind alle Dateien angelegt, können die Services mit diesen Befehlen aktiviert und gestartet werden.&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
sudo systemctl daemon-reload&lt;br /&gt;
sudo systemctl reload dbus.service&lt;br /&gt;
sudo systemctl enable signal.service&lt;br /&gt;
sudo systemctl start signal.service&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Ob alles funktioniert, kann wie folgt getestet werden:&lt;br /&gt;
*D-Bus:&lt;br /&gt;
 sudo -u fhem dbus-send --system --type=method_call --print-reply --dest=&amp;quot;org.asamk.Signal&amp;quot; /org/asamk/Signal org.asamk.Signal.sendMessage string:&amp;lt;Nachricht&amp;gt; array:string: string:&amp;lt;EmpfängerNummer&amp;gt;&lt;br /&gt;
*signal-cli über D-Bus:&lt;br /&gt;
 signal-cli --dbus-system  send -m &amp;quot;&amp;lt;Nachricht&amp;gt;&amp;quot; &amp;lt;EmpfängerNummer&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Einbindung des FHEM-Moduls ==&lt;br /&gt;
Solange das Modul &#039;&#039;&#039;32_SiSi.pm&#039;&#039;&#039; noch nicht via FHEM-Update verteilt wird, ist eine manuelle Installation notwendig. Das geschieht, in dem es von der [https://github.com/Quantum1337/32_SiSi.pm GitHub-Seite] des Modul-Autors heruntergeladen und in den FHEM-Ordner kopiert wird.&lt;br /&gt;
&lt;br /&gt;
Der Befehl&lt;br /&gt;
 wget https://raw.githubusercontent.com/Quantum1337/32_SiSi.pm/master/FHEM/32_SiSi.pm&lt;br /&gt;
speichert das Modul im aktuellen Verzeichnis.&lt;br /&gt;
&lt;br /&gt;
Mit den folgenden Befehlen wird das Modul ins das FHEM-Verzeichnis verschoben und anschließend die Datei-Rechte angepasst.&lt;br /&gt;
 sudo mv 32_SiSi.pm /opt/fhem/FHEM/&lt;br /&gt;
 sudo chown fhem:dialout /opt/fhem/FHEM/32_SiSi.pm&lt;br /&gt;
&lt;br /&gt;
Anschließend wird noch die lokale CommandRef aktualisiert:&lt;br /&gt;
 cd /opt/fhem&lt;br /&gt;
 sudo /usr/bin/perl contrib/commandref_join.pl&lt;br /&gt;
&lt;br /&gt;
Zum Abschluss wird das Modul noch FHEM bekannt gemacht. Dazu in der FHEM-Kommandozeile folgenden Befehl eingeben:&lt;br /&gt;
 reload 32_SiSi.pm&lt;br /&gt;
&lt;br /&gt;
==Verwendung des FHEM-Moduls==&lt;br /&gt;
Die genaue Verwendung des Moduls 32_SiSi.pm ist in der CommandRef beschrieben. Hier deshalb nur ein kleines Beispiel.&lt;br /&gt;
&lt;br /&gt;
SiSi-Device definieren:&lt;br /&gt;
 define Signal SiSi&lt;br /&gt;
&lt;br /&gt;
Dem Device mitteilen, dass es eine Verbindung zum signal-cli D-Bus Service herstellen soll:&lt;br /&gt;
 attr sisi enable yes&lt;br /&gt;
&lt;br /&gt;
Eine Standard-Empfängernummer definieren, falls im Befehlsaufruf keine angegeben ist:&lt;br /&gt;
 attr sisi defaultPeer +49170zzzzzzzz&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Anschließend kann aus FHEM heraus eine Nachricht gesendet werden:&lt;br /&gt;
 set Signal msg Hurra, es funktioniert!&lt;br /&gt;
&lt;br /&gt;
===Zusammenspiel mit den Modulen Msg und Roommate===&lt;br /&gt;
Um mithilfe des Moduls [[Msg]] Signal-Nachrichten versenden zu können, ist im Device &#039;&#039;globalMsg&#039;&#039; das Attribut &#039;&#039;&#039;msgCmdPush&#039;&#039;&#039; zu setzen.&lt;br /&gt;
 attr globalMsg msgCmdPush set %DEVICE% msg @%RECIPIENT% %MSG%&lt;br /&gt;
&lt;br /&gt;
Optional kann ein Standard-Empfänger gesetzt werden der die Nachricht erhält, wenn beim Aufruf von &#039;&#039;Msg&#039;&#039; kein Empfänger angegeben wurde:&lt;br /&gt;
 attr globalMsg msgContactPush &amp;lt;Signal-Device&amp;gt;:&amp;lt;Empfängernummer&amp;gt;&lt;br /&gt;
Danach kann mit &amp;lt;code&amp;gt;msg Testnachricht&amp;lt;/code&amp;gt; eine Signal-Nachricht versendet werden.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Werden {{Link2CmdRef|Anker=ROOMMATE|Lang=de|Label=ROOMMATE-Devices}} verwendet, kann jedem eine Kontaktadresse hinterlegt werden, damit beim Aufruf von &#039;&#039;Msg&#039;&#039; einfach der Device-Name anstatt der Nummer angegeben werden kann. (Funktioniert natürlich  bei jedem anderen Device auch. Aber ein ROOMMATE-Device macht das ganze anschaulicher.)&lt;br /&gt;
&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;&lt;br /&gt;
attr &amp;lt;ROOMMATE-Device&amp;gt; msgContactPush &amp;lt;Signal-Device&amp;gt;:&amp;lt;Empfängernummer&amp;gt;&lt;br /&gt;
&lt;br /&gt;
z.B.:&lt;br /&gt;
attr rr_Max msgContactPush Signal:+49...&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
Anschließend kann mit &amp;lt;code&amp;gt;msg @rr_Max Testnachricht&amp;lt;/code&amp;gt; eine Nachricht an Max gesendet werden.&lt;br /&gt;
&lt;br /&gt;
==Hinweise==&lt;br /&gt;
Derzeit ist es aufgrund von Einschränkungen in der D-Bus-API noch nicht möglich, mit dem SiSi-Modul neue Fingerprints von Kontakten hinzuzufügen oder aus Gruppen auszutreten. Daher muss beides noch manuell auf der Linux-Kommandozeile erfolgen.&lt;br /&gt;
&lt;br /&gt;
;Neuer Fingerprint&lt;br /&gt;
:Mit folgendem Befehl wird dieser Nummer wieder vertraut und &#039;&#039;signal-cli&#039;&#039; fügt den geänderten Fingerprint dann automatisch zu seiner Liste hinzu.&lt;br /&gt;
:&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;sudo -u fhem signal-cli -u &amp;lt;FHEM-NUMMER&amp;gt; trust -a &amp;lt;Nummer mit geänderten Fingerprint&amp;gt;&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
;Aus einer Gruppe austreten&lt;br /&gt;
:Soll die &amp;quot;FHEM-Signal-Rufnummer&amp;quot; aus einer bestehende Gruppe entfernt werden, kann dieser Aufruf von &#039;&#039;signal-cli&#039;&#039; verwendet werden.&lt;br /&gt;
:&amp;lt;source lang=&amp;quot;text&amp;quot;&amp;gt;sudo -u fhem signal-cli -u &amp;lt;FHEM-NUMMER&amp;gt; quitGroup -g &amp;lt;GroupID&amp;gt;&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Querverweise==&lt;br /&gt;
&amp;lt;references/&amp;gt;&lt;br /&gt;
[[Kategorie:Signal]]&lt;/div&gt;</summary>
		<author><name>Michael</name></author>
	</entry>
	<entry>
		<id>http://wiki.fhem.de/w/index.php?title=HM-MOD-RPI-PCB_HomeMatic_Funkmodul_f%C3%BCr_Raspberry_Pi&amp;diff=18346</id>
		<title>HM-MOD-RPI-PCB HomeMatic Funkmodul für Raspberry Pi</title>
		<link rel="alternate" type="text/html" href="http://wiki.fhem.de/w/index.php?title=HM-MOD-RPI-PCB_HomeMatic_Funkmodul_f%C3%BCr_Raspberry_Pi&amp;diff=18346"/>
		<updated>2017-01-07T13:39:57Z</updated>

		<summary type="html">&lt;p&gt;Michael: /* Remoteanbindung - Pi + RPI Modul = LAN Modul */ Autostart auf Debian Jessie (systemd)&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Infobox Hardware&lt;br /&gt;
|Bild=HM-MOD-RPI-PCB.jpg&lt;br /&gt;
|Bildbeschreibung=HomeMatic Funkmodul für Raspberry Pi &lt;br /&gt;
|HWProtocol=HomeMatic&lt;br /&gt;
|HWType=Gateway&lt;br /&gt;
|HWCategory=HomeMatic&lt;br /&gt;
|HWComm=868,3/869,525 MHz&lt;br /&gt;
|HWChannels=n/a&lt;br /&gt;
|HWVoltage=1,8–3,6 V&amp;amp;nbsp;DC&lt;br /&gt;
|HWPowerConsumption=50 mA max.&lt;br /&gt;
|HWPoweredBy=RasPi&lt;br /&gt;
|HWSize=19x41x14mm&lt;br /&gt;
|HWDeviceFHEM=[[HMUARTLGW]]&lt;br /&gt;
|HWManufacturer=ELV / eQ-3 &lt;br /&gt;
}}&lt;br /&gt;
&lt;br /&gt;
Das [[HM-MOD-RPI-PCB HomeMatic Funkmodul für Raspberry Pi]] ist eine Zusatzplatine, die auf die GPIO-Schnittstelle des [[Raspberry Pi]] aufgesteckt werden und damit als [[Interface]] zu [[HomeMatic]] Geräten dienen kann.&lt;br /&gt;
&lt;br /&gt;
== Features ==&lt;br /&gt;
(Noch zu ergänzen)&lt;br /&gt;
* ...&lt;br /&gt;
&lt;br /&gt;
== Hinweise zum Betrieb mit FHEM ==&lt;br /&gt;
Juni 2016: Beginn der Entwicklung eines FHEM-Moduls (HMUARTLGW) für dieses Interface, beschrieben im Forum unter dem Titel {{Link2Forum|Topic=54511|LinkText=Modul für HomeMatic UART-Modul (RPi) und HomeMatic LAN Gateway}}. Dieses Modul unterstützt gleichzeitig auch das &amp;quot;neue&amp;quot; [[HM-LGW-O-TW-W-EU Funk-LAN Gateway|Funk-LAN Gateway HM-LGW-O-TW-W-EU]].&lt;br /&gt;
&lt;br /&gt;
Juli 2016: [[HMUARTLGW]] wird über FHEM [[update]] verteilt, damit ist dieses Funkmodul offiziell unterstützt.&lt;br /&gt;
&lt;br /&gt;
=== Vorbereitung serielle Schnittstelle unter Jessie===&lt;br /&gt;
Diese Beschreibung gilt für Jessie Version 27.05.2016.&lt;br /&gt;
Die Grundlagen findet man hier: [[Raspberry Pi 3: GPIO-Port Module und Bluetooth]]&lt;br /&gt;
&lt;br /&gt;
Die Datei /boot/config.txt um diese Zeile ergänzen&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;enable_uart=1&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Beim PI 3 zusätzlich diese Zeilen ergänzen&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;dtoverlay=pi3-miniuart-bt&lt;br /&gt;
core_freq=250&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In der Datei /boot/cmdline.txt diesen Eintrag löschen:&lt;br /&gt;
&amp;lt;pre&amp;gt;console=serial0,115200 &amp;lt;/pre&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Den Dienst serial-getty deaktivieren&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;systemctl disable serial-getty@ttyAMA0.service&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Der Benutzer fhem muss Mitglied in der Gruppe dialout sein!&lt;br /&gt;
Beim PI 3 kann man wegen Timingproblemen den Start von FHEM etwas verzögern. Dazu die /etc/init.d/fhem um sleep 10 am Anfang ergänzen.&lt;br /&gt;
&lt;br /&gt;
Das System unbedingt neu starten!&lt;br /&gt;
&lt;br /&gt;
=== Vorbereitung serielle Schnittstelle unter Wheezy===&lt;br /&gt;
Diese Beschreibung gilt für Wheezy Version Stand 26.07.2016.&lt;br /&gt;
&lt;br /&gt;
Die Datei /boot/config.txt um diese Zeile ergänzen&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;enable_uart=1&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In der Datei /boot/cmdline.txt diesen Eintrag löschen:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;console=ttyAMA0,115200&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Die Datei sollte dann den folgenden Inhalt aufweisen:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;dwc_otg.lpm_enable=0 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 elevator=deadline rootwait&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Den Dienst serial-getty deaktivieren&lt;br /&gt;
&lt;br /&gt;
in der Datei /etc/inittab wie folgt die Zeile (ziemlich am Ende) mit einer # auskommentieren&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;# T0:23:respawn:/sbin/getty -L ttyAMA0 115200 vt100&amp;lt;/pre&amp;gt;&lt;br /&gt;
Mit folgendem Befehlen überprüfen, dass kein getty auf der Schnittstelle läuft&lt;br /&gt;
&amp;lt;pre&amp;gt;ps -A |grep getty&lt;br /&gt;
cat /etc/inittab&amp;lt;/pre&amp;gt;&lt;br /&gt;
{{Randnotiz|RNText=Tipp: Sollte der HM-MOD-RPI-PCB nach der Einrichtung immer wieder den Status zwischen init und disconnect wechseln, alle aufgeführten Punkte erneut kontrollieren! reboot nicht vergessen! In ganz hartnäckigen Fällen von der Stromversorgung trennen!}}&lt;br /&gt;
&lt;br /&gt;
Der Benutzer fhem muss Mitglied in der Gruppe dialout sein! Bitte prüfen:&lt;br /&gt;
&amp;lt;pre&amp;gt;groups fhem&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Das System unbedingt neu starten!&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Kontrolle ===&lt;br /&gt;
Berechtigungen der Schnittstelle kontrollieren&lt;br /&gt;
&amp;lt;pre&amp;gt;ls -l /dev/ttyAMA0&amp;lt;/pre&amp;gt; liefert die Ausgabe unter Jessie&lt;br /&gt;
&amp;lt;pre&amp;gt;crw-rw---- 1 root dialout 204, 64 Jul 27 23:39 /dev/ttyAMA0&amp;lt;/pre&amp;gt;&lt;br /&gt;
bzw. unter wheezy&lt;br /&gt;
&amp;lt;pre&amp;gt;crw-rw---T 1 root dialout 204, 64 Aug  9 18:07 /dev/ttyAMA0&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Definition in FHEM===&lt;br /&gt;
&amp;lt;pre&amp;gt;define myHmUART HMUARTLGW /dev/ttyAMA0&lt;br /&gt;
attr myHmUART hmId xxxxxx&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Verwendung AES in FHEM===&lt;br /&gt;
Das Modul beherrscht AES.&lt;br /&gt;
Für weitere Informationen gibt es einen separaten Wiki Eintrag [[AES Encryption]]&lt;br /&gt;
&lt;br /&gt;
=== Logbeispiel ===&lt;br /&gt;
Typischerweise meldet sich das Modul beim Start so:&lt;br /&gt;
   2016.10.06 17:11:16 3: Opening myHmUART device /dev/ttyAMA0&lt;br /&gt;
   2016.10.06 17:11:16 3: Setting myHmUART serial parameters to 115200,8,N,1&lt;br /&gt;
   2016.10.06 17:11:16 3: myHmUART device opened&lt;br /&gt;
   2016.10.06 17:11:17 3: HMUARTLGW myHmUART currently running Co_CPU_BL&lt;br /&gt;
   2016.10.06 17:11:17 3: HMUARTLGW myHmUART currently running Co_CPU_App&lt;br /&gt;
&lt;br /&gt;
=== Firmware Update HM-MOD-RPI-PCB ===&lt;br /&gt;
&lt;br /&gt;
Die Module werden mit einer Firmware 1.2.1 ausgeliefert. Dies Firmware ist nicht für einen stabilen Betrieb geeignet!&lt;br /&gt;
Firmware 1.4.1 ist die minimal lauffähige Version!&lt;br /&gt;
&lt;br /&gt;
1. Firmware herunterladen&lt;br /&gt;
 wget https://raw.githubusercontent.com/eq-3/occu/28045df83480122f90ab92f7c6e625f9bf3b61aa/firmware/HM-MOD-UART/coprocessor_update.eq3&lt;br /&gt;
&lt;br /&gt;
2. Kopieren an einen Ort wo FHEM Zugriff hat, am Besten nach /opt/fhem/FHEM/firmware&lt;br /&gt;
 sudo cp coprocessor_update.eq3 /opt/fhem/FHEM/firmware/&lt;br /&gt;
3. Flashen der neuen Firmware aus Fhem&lt;br /&gt;
 fhem&amp;gt; set myHmUART updateCoPro /opt/fhem/FHEM/firmware/coprocessor_update.eq3&lt;br /&gt;
&lt;br /&gt;
=== Alternative Methode zum Firmware Update ohne FHEM ===&lt;br /&gt;
&lt;br /&gt;
Sollte das Update über FHEM nicht funktionieren oder FHEM nicht verfügbar sein, kann die Firmware auch wie folgt eingespielt werden (Quelle: [http://heinz-otto.blogspot.com/2016/07/raspberry-pi-homematic-modul.html Ottos Technik Blog])&lt;br /&gt;
&lt;br /&gt;
  sudo su&lt;br /&gt;
  apt-get update &amp;amp;&amp;amp; apt-get -y install libusb-1.0-0-dev build-essential git&lt;br /&gt;
  systemctl stop fhem&lt;br /&gt;
  git clone git://git.zerfleddert.de/hmcfgusb&lt;br /&gt;
  cd hmcfgusb/&lt;br /&gt;
  make&lt;br /&gt;
  # Firmware runterladen&lt;br /&gt;
  wget https://raw.githubusercontent.com/eq-3/occu/ee68faf77e42ed5e3641790b43a710a3301cea7e/firmware/HM-MOD-UART/coprocessor_update.eq3&lt;br /&gt;
  # eigentliches flashen:&lt;br /&gt;
  ./flash-hmmoduart -U /dev/ttyAMA0 coprocessor_update.eq3&lt;br /&gt;
&lt;br /&gt;
== Remoteanbindung - Pi + RPI Modul = LAN Modul ==&lt;br /&gt;
&#039;&#039;Noch in Bearbeitung&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Es ist nicht dazu gedacht zwei FHEM Instanzen zu koppeln, sondern das RPI Modul über socat auf dem entfernten Raspi verfügbar zu machen. &lt;br /&gt;
auf dem Pi wo das Modul angeschlossen ist: &lt;br /&gt;
Kein FHEM Zugriff!&lt;br /&gt;
Kein define HmUART_EG HMUARTLGW /dev/ttyAMA0&lt;br /&gt;
Kein define RM_HmUART_EG HMUARTLGW uart://192.168.17.185:2000&lt;br /&gt;
&lt;br /&gt;
Installation auf Remote Instanz&lt;br /&gt;
&lt;br /&gt;
   sudo apt-get install socat&lt;br /&gt;
&lt;br /&gt;
Auf diesem Pi, also wo das Modul steckt:&lt;br /&gt;
&lt;br /&gt;
   sudo socat TCP4-LISTEN:2000,fork,reuseaddr /dev/ttyAMA0,raw,echo=0,b115200&lt;br /&gt;
&lt;br /&gt;
In welcher Datei lege ich diesen Befehl am besten ab damit dieser bei einem Neustart ausgeführt wird.&lt;br /&gt;
Würde die rc.local ohne sudo dafür verwenden.&lt;br /&gt;
&lt;br /&gt;
Auf einen Debian Jessie mit systemd legt man am besten folgende Datei an:&lt;br /&gt;
&lt;br /&gt;
   $cat /etc/systemd/system/hmlangw.service&lt;br /&gt;
   [Install]&lt;br /&gt;
   WantedBy=multi-user.target&lt;br /&gt;
   Type=forking&lt;br /&gt;
   &lt;br /&gt;
   [Service]&lt;br /&gt;
   ExecStart=/usr/bin/socat TCP4-LISTEN:2000,fork,reuseaddr /dev/ttyAMA0,raw,echo=0,b115200&lt;br /&gt;
   User=root&lt;br /&gt;
   Restart=always&lt;br /&gt;
   RestartSec=10&lt;br /&gt;
&lt;br /&gt;
Dann kann mit &lt;br /&gt;
&lt;br /&gt;
  sudo systemctl enable hmlangw&lt;br /&gt;
&lt;br /&gt;
der Service zum Autostart konfiguriert werden.&lt;br /&gt;
Auf dem Modul wo FHEM läuft und das Modul Remote angeschlossen werden soll:&lt;br /&gt;
&lt;br /&gt;
   define RM_HmUART_EG HMUARTLGW uart://192.168.17.185:2000&lt;br /&gt;
&lt;br /&gt;
Es handelt sich nicht um sharing der seriellen Schnittstelle und damit &amp;quot;verfügbar machen&amp;quot; des Moduls all over the World!&lt;br /&gt;
Es handelt sich um ein exklusives &amp;quot;Kabel&amp;quot; von Pi zu Pi zur Schnittstelle zum RPI Modul.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
PI1:              FHEM -&amp;gt; uart://IP:Port -&amp;gt; Netzwerk -&amp;gt; &lt;br /&gt;
Remote PI2: Netzwerk -&amp;gt; socat listener -&amp;gt; socat serial -&amp;gt; RPI Modul auf PI2&lt;br /&gt;
&lt;br /&gt;
RPI Modul auf PI2 -&amp;gt; serial -&amp;gt; socat -&amp;gt; Netzwerk -&amp;gt; uart://IP:Port -&amp;gt;  FHEM auf PI1&lt;br /&gt;
&lt;br /&gt;
== Bekannte Probleme ==&lt;br /&gt;
Sollten beim Flashen der Firmware hartnäckige Probleme auftreten (kein Erfolg aber auch gar keine Fehlermeldungen) ist das Modul vom Strom zu trennen, ein Neustart des Pi reicht nicht!&lt;br /&gt;
&lt;br /&gt;
Ein {{Link2Forum|Topic=41203|Message=340320|LinkText=Beitrag}} aus dem genannten Forenthread: &#039;&#039;Das Ding ist anscheinend wirklich einfach das Funkmodul aus der CCU2 (wird zumindest in der eQ-3 SW als CCU2 angesprochen) und spricht ein für Fhem vollkommen neues Protokoll.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
== Links ==&lt;br /&gt;
* {{Link2Forum|Topic=41203|LinkText=Forenthread}} mit Nachfrage zur Unterstützung dieses Geräts in FHEM&lt;br /&gt;
* {{Link2Forum|Topic=54511|LinkText=Modul für HomeMatic UART-Modul (RPi) und HomeMatic LAN Gateway}}&lt;br /&gt;
* [http://www.elv.de/homematic-funkmodul-fuer-raspberry-pi-bausatz.html Produktseite] bei ELV&lt;br /&gt;
* {{DocLink|elv|/Assets/Produkte/10/1040/104029/Downloads/104029_lan_gateway_um.pdf Bedienungsanleitung}}&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:HomeMatic Components]]&lt;br /&gt;
[[Kategorie:Interfaces]]&lt;br /&gt;
[[Kategorie:Raspberry Pi]]&lt;/div&gt;</summary>
		<author><name>Michael</name></author>
	</entry>
	<entry>
		<id>http://wiki.fhem.de/w/index.php?title=HM-CC-RT-DN_Funk-Heizk%C3%B6rperthermostat&amp;diff=13243</id>
		<title>HM-CC-RT-DN Funk-Heizkörperthermostat</title>
		<link rel="alternate" type="text/html" href="http://wiki.fhem.de/w/index.php?title=HM-CC-RT-DN_Funk-Heizk%C3%B6rperthermostat&amp;diff=13243"/>
		<updated>2015-12-14T07:16:49Z</updated>

		<summary type="html">&lt;p&gt;Michael: modusBtnLock Tastensperre&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&#039;&#039;&#039;HM-CC-RT-DN&#039;&#039;&#039; ist ein &#039;&#039;&#039;Funk-Heizkörperthermostate mit integriertem Stellantrieb&#039;&#039;&#039;, der als Nachfolger den [[HM-CC-VD]] ablöst und seit Mitte September 2013 verfügbar ist.&lt;br /&gt;
&lt;br /&gt;
== Vorbemerkungen ==&lt;br /&gt;
&#039;&#039;&#039;Einstellungen und Informationen die alle [[HomeMatic]] Thermostate betreffen sind unter [[HomeMatic Type Thermostat#Temperaturlisten|HomeMatic Type Thermostat]] zu finden.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Im Gegensatz zum Vorgänger misst der HM-CC-RT-DN selbst die Temperatur und verfügt über eine Boost-Funktion. Er braucht zur Steuerung kein separates Raumregelungsgerät mehr und hat eine eigene Fenster-Offen-Erkennung. Ein passender Wandthermostat ([[HM-TC-IT-WM-W-EU_Funk-Wandthermostat_AP|HM-TC-IT-WM-W-EU]]) ist seit Februar 2014 verfügbar.&lt;br /&gt;
&lt;br /&gt;
Das Gerät wird seit Anfang Oktober 2013 von Fhem unterstützt (siehe Diskussion im {{Link2Forum|Topic=14738|LinkText=Forum}}).&lt;br /&gt;
&lt;br /&gt;
Der &#039;&#039;&#039;HM-CC-RT-DN&#039;&#039;&#039; scheint das erste HomeMatic-Device zu sein, bei dem ein Update der Firmware auch vom Anwender durchgeführt werden kann. Ein Firmware-Update erfordert einen [[HM-CFG-USB_USB_Konfigurations-Adapter|USB Konfigurations-Adapter]] und eine auf der eQ-3 Webseite herunterladbare Firmware Update Software. Weitere Details sind unter [[HM-CC-RT-DN_Funk-Heizkörperthermostat#Firmware Update|Firmware Update]] beschrieben.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Achtung:&#039;&#039;&#039; Die Solltemperaturen eines HM-CC-RT-DN lassen sich &amp;lt;ins&amp;gt;nicht&amp;lt;/ins&amp;gt; durch einen [[HM-CC-TC Funk-Wandthermostat|HM-CC-TC]] steuern. Dieser kann höchstens die Ist-Temperatur an den RT weiter geben, damit die Raumtemperatur nicht am RT selbst zur Ventilsteuerung genommen wird.&lt;br /&gt;
&lt;br /&gt;
Mit einem HM-CC-RT-DN können maximal (neben der Zentrale/Fhem):&lt;br /&gt;
* 7 HomeMatic Heizkörperthermostate&lt;br /&gt;
* 8 HomeMatic Tür-Fensterkontakte / Fenster-Drehgriffkontakte&lt;br /&gt;
* 8 Tastenpaare von HomeMatic Fernbedienungen bzw. Display-Wandtaster&lt;br /&gt;
* 1 HomeMatic Innen-Temperatur-Sensor&lt;br /&gt;
gep&#039;&#039;&#039;ee&#039;&#039;&#039;rt werden.&lt;br /&gt;
&lt;br /&gt;
== Technische Daten ==&lt;br /&gt;
* Betriebsspannung: 2 Stck. 1,5V LR6/Mignon/AA&lt;br /&gt;
* Stromaufnahme: 180 mA max.&lt;br /&gt;
* Abmessungen (B x H x T): 54 x 65 x 93 mm&lt;br /&gt;
* Gewicht: 180 g (ohne Batterien)&lt;br /&gt;
* Ventilanschluss: M30 x 1,5 mm&lt;br /&gt;
&lt;br /&gt;
Aktuelle Firmware: 1.4&lt;br /&gt;
&lt;br /&gt;
== Betrieb mit FHEM ==&lt;br /&gt;
Der Funk-Heizkörperthermostat muss zuerst mit Fhem [[HomeMatic Devices pairen|gepairt]] werden. Stellen Sie sicher, dass Fhem aktuell ist (update durchführen).&lt;br /&gt;
&lt;br /&gt;
=== Channels (Kanäle) ===&lt;br /&gt;
==== Channel (Kanal) 01 _Weather ====&lt;br /&gt;
Dieser Kanal dient zur Einspeisung der gemessenen (&amp;quot;Ist&amp;quot;-) Temperatur, als Sensor kann z.B. ein HomeMatic HM-WDS10-TH-O Funk-Temperatur-/Luftfeuchtesensor OTH dienen.&lt;br /&gt;
&lt;br /&gt;
Der Befehl zum peeren lautet, wobei &amp;lt;tempSensor&amp;gt; die Fhem-Kanalbezeichnung für den Sensor ist und &amp;lt;rt_Weather&amp;gt; die Kanalbezeichnung für den entsprechenden Kanal des Heizkörperthermostates:&lt;br /&gt;
 set &amp;lt;tempSensor&amp;gt; peerChan 0 &amp;lt;rt_Weather&amp;gt; single&lt;br /&gt;
&lt;br /&gt;
==== Channel (Kanal) 02 _Climate ====&lt;br /&gt;
Der Climate-channel dient der Kommunikation mit einem Temperatur-Kontroller (aktuell nur [[HM-TC-IT-WM-W-EU_Funk-Wandthermostat_AP|HM-TC-IT-WM-W-EU]]).&lt;br /&gt;
Zum peeren von TC und RT siehe [[HM-TC-IT-WM-W-EU_Funk-Wandthermostat_AP#Hinweise zur Inbetriebnahme und Installation|HM-TC-IT-WM-W-EU]].&lt;br /&gt;
&lt;br /&gt;
==== Channel (Kanal) 03 _WindowRec ====&lt;br /&gt;
Mit diesem Kanal lassen sich Fensterkontakte (HM-SEC-SC oder HM-SEC-RHS) peeren, die ihren Fensterstatus (geöffnet/gekippt) an ein oder mehrere Thermostate senden. Die Thermostate stellen anschließend die entsprechende (konfigurierbare) Temperatur ein. Der Temperaturwert kann je Fenster-Sensor unterschiedlich definiert werden. Sind mehrere Fenster gleichzeitig geöffnet, so wird der Thermostat auf die Temperatur des Sensors mit dem geringsten Temperaturwert eingestellt. &lt;br /&gt;
Ferner wird empfohlen, bei Einsatz von externen Sensoren, die interne „Fenster auf Erkennung“ zu deaktivieren (weitere Details sind im [[HM-CC-RT-DN Funk-Heizkörperthermostat#Channel .28Kanal.29 04 _Clima|Channel (Kanal) 04 _Clima]] beschrieben).&lt;br /&gt;
&lt;br /&gt;
Der Befehl zum peeren lautet, wobei &amp;lt;fensterSensor&amp;gt; die Fhem-Kanalbezeichnung für den Fensterkontakt ist und &amp;lt;rt_WindowRec&amp;gt; die Kanalbezeichnung für den entsprechenden Kanal des Heizkörperthermostates:&lt;br /&gt;
 set &amp;lt;fensterSensor&amp;gt; peerChan 0 &amp;lt;rt_WindowRec&amp;gt; single&lt;br /&gt;
&lt;br /&gt;
Zum Löschen (=unpeeren) dieser Kopplung:&lt;br /&gt;
 set &amp;lt;fensterSensor&amp;gt; peerChan 0 &amp;lt;rt_WindowRec&amp;gt; single unset&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Achtung&#039;&#039;&#039;: Der Peer-(Lösch)Vorgang muss am Fensterkontakt durch Drücken der Anlerntaste bestätigt werden, und zwar auch dann, wenn der Fensterkontakt schon vorher mit Fhem gepairt wurde. Wichtig scheint auch dass der Fensterkontakt geschlossen ist wenn man die Anlerntaste drückt.&lt;br /&gt;
&lt;br /&gt;
Der Befehl zur Temperatureinstellung des Heizkörperthermostaten für den Zustand &amp;quot;Fenster offen&amp;quot; lautet, wobei &amp;lt;fensterSensor&amp;gt; die Fhem-Kanalbezeichnung für den Fensterkontakt ist und &amp;lt;rt_WindowRec&amp;gt; die Kanalbezeichnung für den entsprechenden Kanal des Heizkörperthermostates, sowie &amp;lt;Temp&amp;gt; die einzustellende Temperatur (ganzzahliger Wert):&lt;br /&gt;
 set &amp;lt;rt_WindowRec&amp;gt; regSet winOpnTemp &amp;lt;Temp&amp;gt; &amp;lt;fensterSensor&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Channel (Kanal) 04 _Clima ====&lt;br /&gt;
Dieser Kanal dient zum Einstellen der Betriebsparameter, auch [[#Temperaturlisten|Temperaturlisten]] sind hierauf zu übertragen.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Achtung:&#039;&#039;&#039; In älteren Versionen von Fhem wurde dieser Kanal durch autocreate als &amp;quot;_ClimRT_tr&amp;quot; angelegt. Der Hersteller hat hier offenbar die internen Bezeichnunen geändert, denn beim Vorläufernmodell HM-CC-TC mussten Temperaturlisten auf den Kanal &#039;&#039;Climate&#039;&#039; übertragen werden.&lt;br /&gt;
&lt;br /&gt;
Die maximale Öffnung des Ventils kann mittels folgendem Befehl eingestellt werden (hier auf 80 %):&lt;br /&gt;
 set &amp;lt;rt_Clima&amp;gt; regSet valveMaxPos 80&lt;br /&gt;
&lt;br /&gt;
Die interne &amp;quot;Fenster-auf&amp;quot; Erkennung kann man wie folgt abschalten:&lt;br /&gt;
 set &amp;lt;rt_Clima&amp;gt; regSet winOpnMode off&lt;br /&gt;
&lt;br /&gt;
==== Channel (Kanal) 05 _ClimaTeam ====&lt;br /&gt;
Dieser Kanal dient zum peeren von mehreren Heizkörperthermostaten untereinander. Ein Mitglied des &amp;quot;Teams&amp;quot; meldet&lt;br /&gt;
* Änderungen der Temperatur am Handrad&lt;br /&gt;
* Einschalten des Boost-Modus am Taster&lt;br /&gt;
an seine &amp;quot;Teamkollegen&amp;quot; weiter. Folgende Änderungen werden &#039;&#039;&#039;nicht&#039;&#039;&#039; weitergegeben:&lt;br /&gt;
* Status der Fensterkontakte&lt;br /&gt;
* Temperaturlisten/Wochenplan und daraus folgende Änderungen&lt;br /&gt;
* Änderungen durch Fernbedienungen&lt;br /&gt;
* Änderungen durch eine HomeMatic-Zentrale&lt;br /&gt;
&lt;br /&gt;
Befehl zum peeren, wobei &amp;lt;rt1-ClimaTeam&amp;gt; und &amp;lt;rt2-ClimaTeam&amp;gt; die Kanalbezeichnungen der beiden ClimaTeam-Kanäle sind:&lt;br /&gt;
 set &amp;lt;rt1-ClimaTeam&amp;gt; peerChan 0 &amp;lt;rt2-ClimaTeam&amp;gt; single&lt;br /&gt;
&lt;br /&gt;
==== Channel (Kanal) 06 _remote ====&lt;br /&gt;
Dieser Kanal ann an eine Fernbedienung gekoppelt werden. Per Tastendruck kann man einen bestimmten Mode und/oder eine bestimmte Temperatur wählen. Dabei kann die Reaktion auf einen langen oder kurzen Tastendruck gesondert eingestellt werden.&lt;br /&gt;
&lt;br /&gt;
Der Befehl zum peeren lautet, wobei &amp;lt;button&amp;gt; die Kanalbezeichnung der Fernbedienung und &amp;lt;rt-remote&amp;gt; die Kanalbezeichnung des Heizkörperthermostates ist:&lt;br /&gt;
&amp;lt;pre&amp;gt;set &amp;lt;button&amp;gt; peerChan 0 &amp;lt;rt-remote&amp;gt; single&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Betriebsmodus Auto, Manu, Party (Urlaub) ===&lt;br /&gt;
Im Automode kann man die Temperatur am Einstellrad des RT ändern. Zum nächsten Schaltpunkt wird dies dann überschrieben. Will man dies nicht (z.B. lange Party, ...), kann man auf manuell schalten. Dann bleibt die mit dem Drehregler (oder der Zentrale) eingestellte Temperatur stehen bis &#039;&#039;ultimo&#039;&#039;. Es gibt dann noch den Party- oder Urlaubsmodus. In diesen kann man den Automodus für eine gegebene Zeit überschreiben.&lt;br /&gt;
&lt;br /&gt;
==== Tastensperre ====&lt;br /&gt;
Um zu verhindern, dass der Modus oder die Temperatur per Tasten bzw. Drehrad am HM-CC-RT-DN verändert wird, kann eine Tastensperre gesetzt werden. Dies erfolgt mittels des Befehls:&lt;br /&gt;
&lt;br /&gt;
 set &amp;lt;HM-CC-RT-DN&amp;gt; regSet btnLock on&lt;br /&gt;
&lt;br /&gt;
Rückgängig machen geht per:&lt;br /&gt;
&lt;br /&gt;
 set &amp;lt;HM-CC-RT-DN&amp;gt; regSet btnLock off&lt;br /&gt;
&lt;br /&gt;
Diese Tastensperre kann man aber am RT durch eine Tastenkombination wieder zurücksetzen. Um sie nur per Fhem rücksetzen zu können, muss&lt;br /&gt;
&lt;br /&gt;
 set &amp;lt;HM-CC-RT-DN&amp;gt; regSet globalBtnLock on&lt;br /&gt;
&lt;br /&gt;
eingegeben werden. Rückgängig geht wieder per:&lt;br /&gt;
&lt;br /&gt;
 set &amp;lt;HM-CC-RT-DN&amp;gt; regSet globalBtnLock off&lt;br /&gt;
&lt;br /&gt;
Es gibt auch eine Tastensperre die nur das Umschalten des Modus (Auto, Manuell, Urlaub) am Gerät verhindert. Diese wird mit&lt;br /&gt;
&lt;br /&gt;
 set &amp;lt;HM-CC-RT-DN&amp;gt; regSet modusBtnLock on&lt;br /&gt;
&lt;br /&gt;
eingeschaltet. Abschalten geht mit:&lt;br /&gt;
&lt;br /&gt;
 set &amp;lt;HM-CC-RT-DN&amp;gt; regSet modusBtnLock off&lt;br /&gt;
&lt;br /&gt;
==== Modus Auto ====&lt;br /&gt;
Das Device arbeitet gemäß des gespeicherten Wochenprogramms. Manuelle Änderungen sind möglich, werden beim nächsten Schaltpunkt überschrieben.&lt;br /&gt;
&lt;br /&gt;
==== Modus Manu ====&lt;br /&gt;
Das Wochenprogramm wird nicht abgearbeitet, die Temperatur wird manuell eingestellt.&lt;br /&gt;
&lt;br /&gt;
==== Modus Party (Urlaub) ====&lt;br /&gt;
Will man für eine festgesetzte Zeit (Stunden oder Tage) die Temperatur auf einen festen Wert einstellen (z.B. weil man in Urlaub fährt), kann man dies zwar auch durch Änderungen der Temperaturlisten erreichen, einfacher ist aber die Zuweisung über den Urlaubsmodus, da nach dessen Ablaufdatum und -zeitpunkt automatisch in den Auto-Modus gewechselt wird. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Ein Beispiel:&#039;&#039;&#039;&lt;br /&gt;
:&amp;lt;code&amp;gt;set HM-CC-RT-DN_Clima controlParty 16 06.12.13 16:30 09.12.13 05:00&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dadurch wird &lt;br /&gt;
* vom 06.12.2013, 16:30 Uhr, &lt;br /&gt;
* bis zum 09.12.2013, 05:00 Uhr &lt;br /&gt;
* die gewünschte Raumtemperatur auf 16 °C&lt;br /&gt;
&lt;br /&gt;
eingestellt.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Hinweise:&#039;&#039;&#039;&lt;br /&gt;
* Der Befehl muss auf den Channel 4 (&amp;quot;_Clima&amp;quot;) erfolgen.&lt;br /&gt;
* Es werden nur Uhrzeiten zu jeder vollen oder halben Stunde angenommen (Minuten also 00 oder 30).&lt;br /&gt;
&lt;br /&gt;
Mit der Funktion &amp;quot;Urlaub&amp;quot; kann man eine ganze Wohnung (also mehrere RT´s) mit nur einem Befehl in den Party-mode versetzen.&lt;br /&gt;
&lt;br /&gt;
Der Name &amp;quot;Urlaub&amp;quot; kann natürlich frei gewählt werden. Im Beispiel werden zwei Heizkörper (Treppenhaus und Kammer) angesteuert.&lt;br /&gt;
&lt;br /&gt;
Zu beachten sind folgende Dinge:&lt;br /&gt;
# Aktuelle Dateien (z.B. 10_CUL_HM) verwenden!&lt;br /&gt;
# Bei dem partycontrol-Befehl in der Funktion KEIN Komma zwischen den Parametern.&lt;br /&gt;
# Bei der Funktion die Parameterübergabe definieren ($$$$$) &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Aufruf:&#039;&#039;&#039;&lt;br /&gt;
:&amp;lt;code&amp;gt;{Urlaub (&amp;quot;16&amp;quot;, &amp;quot;06.12.13&amp;quot;, &amp;quot;16:30&amp;quot;, &amp;quot;09.12.13&amp;quot; ,&amp;quot;05:00&amp;quot;)}&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Funktion:&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;source lang=perl&amp;gt;&lt;br /&gt;
my $Urlaub;&lt;br /&gt;
sub&lt;br /&gt;
Urlaub($$$$$)&lt;br /&gt;
  {&lt;br /&gt;
    #lokale Variablendeklaration&lt;br /&gt;
    my ($temp,$startDate,$startTime,$endDate,$endTime) = @_;&lt;br /&gt;
 &lt;br /&gt;
    # HM-CC-RT-DN akzeptiert nur Zeiten, die auf Minute 00 oder 30 enden.&lt;br /&gt;
    # Daher $startTime und $endTime abrunden&lt;br /&gt;
    $startTime =~ s/\:[0-2].$/:00/;&lt;br /&gt;
    $startTime =~ s/\:[3-5].$/:30/;&lt;br /&gt;
    $endTime =~ s/\:[0-2].$/:00/;&lt;br /&gt;
    $endTime =~ s/\:[3-5].$/:30/;	&lt;br /&gt;
&lt;br /&gt;
    #Sendebefehl für ein HM-CC-RT-DN&lt;br /&gt;
    {fhem (&amp;quot;set Kammer controlParty $temp $startDate $startTime $endDate $endTime&amp;quot;)}&lt;br /&gt;
&lt;br /&gt;
    # alternative Schreibweise der Parameter:&lt;br /&gt;
    {fhem (&amp;quot;set Treppenhaus controlParty @_[0] @_[1] @_[2] @_[3] @_[4]&amp;quot;)};&lt;br /&gt;
   }&lt;br /&gt;
&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Burst-Modus ===&lt;br /&gt;
Das ist ein &#039;&#039;&#039;Übertragungs&#039;&#039;&#039;modus für Nachrichten zwischen HM-Geräten und der Zentrale. Der RT erwacht alle 2,5 Minuten und dann überträgt die Zentrale die Kommanods. Wenn man einen Fensterkontakt oder eine Fernsteuerung nutzt, muss der RT sofort reagieren - dann muss man den Burst &#039;&#039;enablen&#039;&#039;. Der RT kann in diesem Fall sofort aufgeweckt werden und bearbeitet die Anforderung (Request). Das kann man auch von der Zentrale aus nutzen (so man möchte). Das ist der &#039;&#039;&#039;Vorteil&#039;&#039;&#039; des eingeschalteten Burst-Modus.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Nachteil:&#039;&#039;&#039; Der RT muss den Receiver wach halten. Der RT und alle anderen Burst-Devices erwachen bei &#039;&#039;&#039;jedem&#039;&#039;&#039; Burst (egal für wen) und legen sich dann wieder schlafen.&lt;br /&gt;
* jeder Burst-trigger kostet Batterie für &#039;&#039;&#039;alle&#039;&#039;&#039; Burst-Geräte im System&lt;br /&gt;
* wenn Burst enabled ist kostet es dem RT Batteriekapazität&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Burst – wie es funktioniert&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Schickt ein Sender eine burst Sequenz, wachen alle burst-Empfänger auf und prüfen die Message. &lt;br /&gt;
Wenn sie betroffen sind bleiben sie eine Zeit lang wach, ansonsten schlafen sie wieder ein. &lt;br /&gt;
Man beachte also, dass Senden eines Burst  Energie in ALLEN burst-Empfängern verbraucht, egal ob sie angesprochen sind.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;HMLAN und burst&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
HMLAN hat ein Sendebudget das über eine Stunde berechnet wird. Burst belastet diese Konto deutlich - so können nicht mehr als 100 bursts /h gesendet werden - dann geht HMLAN in overload Wenn zusätzliche messages gesendet werden sind es entsprechend weniger. &lt;br /&gt;
Es ist als nicht vorteilhaft, unnötig bursts zu senden.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Burst devices&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Es gibt Devices, die immer auf burst reagieren und solche bei denen es abgeschaltet werden kann. So reagiert ein Rauchmelder immer auf Burst damit er seine Team-Kollegen hören kann. &lt;br /&gt;
Ein TC oder RT hingegen hat diese Funktion abschaltbar. &#039;Per default ist dies ausgeschaltet um Batterie zu sparen&#039;. Wenn ein VD gesteuert wird ist der TC ja selbst wach.  Wird er aber mit einem Fensterkontakt gekoppelt muss es eingeschaltet werden – sonst verpasst er die message. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;ConditionalBurst devices&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Devices mit abschaltbarem burst wie z.B. der &#039;HM-CC-RT-DN&#039;, gibt es ein Register burstRx mit dem das burst-erwachen eingestellt werden kann. &lt;br /&gt;
Sender, die einen burst-Aktor erwecken sollen muss man sagen, welcher peer burst benötigt. Hier kann ggf. das Register peerNeedsBurst nach dem peeren gesetzt werden. FHEM versucht dies automatisch beim Peeren zu erledigen. Siehe Hminfo Befehl &#039;models&#039;, um festzustellen, welche Devices welchen Modus unterstützen.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Attribut burstAccess&#039;&#039;&#039; &lt;br /&gt;
&lt;br /&gt;
Devices, die abschaltbaren burst haben kann man ein attribut bustAccess 1_auto setzen. Es wird beim Abschicken eines Kommandos versucht, das Device mit burst zu wecken. Sollte es nicht funktionieren wird gewartet, bis das Device aufwacht (meist reagieren solche Devices auch auf wakeup). Das Setzen des Attributs ist angenehm – es werden aber ggf. viele bursts gesendet.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Kommando burstXmit&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
Mit diesem Kommando, das bei Devices mit contitional-Burst zu Verfügung steht, wird der burst gezielt von User angestossen.&lt;br /&gt;
&lt;br /&gt;
Der User schickt erst seine Kommandos an das device. Die Kommandos werden im Command-stack gesammelt. &lt;br /&gt;
&lt;br /&gt;
Dann sendet der User ein set burstXmit.&lt;br /&gt;
&lt;br /&gt;
Es passiert das gleiche wie bei burstAccess.&lt;br /&gt;
&lt;br /&gt;
FHEM versucht mittels burst zu wecken und sendet bei Erfolg die Messages aus dem Kommandostack. &lt;br /&gt;
&lt;br /&gt;
Im Gegensatz zu burstAccess ist burstXmit gezielt einsetzbar und kann sparsamer verwendet werden.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039; FHEM und burst devices&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
FHEM sendet eine burst automatisch mit Kommandos zu Devices, die nur burst unterstützen.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;So aktiviert man den burst-Betrieb am HM-CC-RT-DN&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;Burst Mode einschalten&#039;&#039; (der Kanal 4 des Device WZ1 heisst hier WZ1_4)&lt;br /&gt;
:&amp;lt;code&amp;gt;set WZ1_4 regSet burstRx on &amp;lt;/code&amp;gt;&lt;br /&gt;
prüfen mit:&lt;br /&gt;
:&amp;lt;code&amp;gt;get WZ1_4 reg burstRx &amp;lt;/code&amp;gt;&lt;br /&gt;
&#039;&#039;Nun in FHEM den Burst mode einschalten (sofern nicht burstXmit verwendet wird)&#039;&#039;&lt;br /&gt;
:&amp;lt;code&amp;gt;attr WZ1 burstAccess 1_auto&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Hinweis: Das Attribut im Device und nicht im Kanal setzen, ansonsten gibt es eine Fehlermeldung.&lt;br /&gt;
&lt;br /&gt;
=== Temperaturlisten ===&lt;br /&gt;
Die Temperaturlisten des HM-CC-RT-DN werden identisch mit denen anderer HomeMatic Thermostate verwaltet (siehe [[HomeMatic Type Thermostat#Temperaturlisten|HomeMatic Type Thermostat]]). Beim HM-CC-RT-DN ist der Kanal 4 (_Clima) für die Temperaturlisten zuständig.&lt;br /&gt;
&lt;br /&gt;
==Fhem-Log==&lt;br /&gt;
In den folgenden Logs heißt Kanal 4 noch &amp;quot;_ClimRT_tr&amp;quot;. Inzwischen würde man dort &amp;quot;_Clima&amp;quot; sehen.&lt;br /&gt;
&lt;br /&gt;
=== Device-Log ===&lt;br /&gt;
 2013.10.10 20:03:24 3: CUL_HM Unknown device CUL_HM_HM_CC_RT_DN_2212BC, please define it&lt;br /&gt;
 2013.10.10 20:03:24 2: autocreate: define CUL_HM_HM_CC_RT_DN_2212BC CUL_HM 2212BC A1A0184002212BC0000001000954B4551303531303031375900FFFF&lt;br /&gt;
 2013.10.10 20:03:24 3: Device CUL_HM_HM_CC_RT_DN_2212BC added to ActionDetector with 000:10 time&lt;br /&gt;
 2013.10.10 20:03:24 3: CUL_HM pair: CUL_HM_HM_CC_RT_DN_2212BC thermostat, model HM-CC-RT-DN serialNr KEQ0510017&lt;br /&gt;
 2013.10.10 20:03:24 3: LANCUL pairing (hmPairForSec) not enabled&lt;br /&gt;
 2013.10.10 20:03:24 2: autocreate: define FileLog_CUL_HM_HM_CC_RT_DN_2212BC FileLog /usr/local/FHEM/var/log/CUL_HM_HM_CC_RT_DN_2212BC-%Y.log CUL_HM_HM_CC_RT_DN_2212BC&lt;br /&gt;
 2013.10.10 20:03:24 3: Device Heizung_Wohnzimmer added to ActionDetector with 000:10 time&lt;br /&gt;
 2013.10.10 20:03:24 3: CUL_HM pair: Heizung_Wohnzimmer thermostat, model HM-CC-TC serialNr JEQ0044286&lt;br /&gt;
 2013.10.10 20:03:24 3: Device CUL_HM_HM_CC_RT_DN_2212BC added to ActionDetector with 000:10 time&lt;br /&gt;
 2013.10.10 20:03:24 3: CUL_HM pair: CUL_HM_HM_CC_RT_DN_2212BC thermostat, model HM-CC-RT-DN serialNr KEQ0510017&lt;br /&gt;
 2013.10.10 20:03:25 2: autocreate: define CUL_HM_HM_CC_RT_DN_2212BC_Weather CUL_HM 2212BC01&lt;br /&gt;
 2013.10.10 20:03:25 2: autocreate: define FileLog_CUL_HM_HM_CC_RT_DN_2212BC_Weather FileLog /usr/local/FHEM/var/log/CUL_HM_HM_CC_RT_DN_2212BC_Weather-%Y.log CUL_HM_HM_CC_RT_DN_2212BC_Weather&lt;br /&gt;
 2013.10.10 20:03:25 2: autocreate: define FileLog_CUL_HM_HM_CC_RT_DN_2212BC_Weather FileLog /usr/local/FHEM/var/log/CUL_HM_HM_CC_RT_DN_2212BC_Weather-%Y.log CUL_HM_HM_CC_RT_DN_2212BC_Weather&lt;br /&gt;
 2013.10.10 20:03:26 2: autocreate: define CUL_HM_HM_CC_RT_DN_2212BC_Climate CUL_HM 2212BC02&lt;br /&gt;
 2013.10.10 20:03:26 2: autocreate: define FileLog_CUL_HM_HM_CC_RT_DN_2212BC_Climate FileLog /usr/local/FHEM/var/log/CUL_HM_HM_CC_RT_DN_2212BC_Climate-%Y.log CUL_HM_HM_CC_RT_DN_2212BC_Climate&lt;br /&gt;
 2013.10.10 20:03:26 2: autocreate: define FileLog_CUL_HM_HM_CC_RT_DN_2212BC_Climate FileLog /usr/local/FHEM/var/log/CUL_HM_HM_CC_RT_DN_2212BC_Climate-%Y.log CUL_HM_HM_CC_RT_DN_2212BC_Climate&lt;br /&gt;
 2013.10.10 20:03:27 2: autocreate: define CUL_HM_HM_CC_RT_DN_2212BC_WindowRec CUL_HM 2212BC03&lt;br /&gt;
 2013.10.10 20:03:27 2: autocreate: define FileLog_CUL_HM_HM_CC_RT_DN_2212BC_WindowRec FileLog /usr/local/FHEM/var/log/CUL_HM_HM_CC_RT_DN_2212BC_WindowRec-%Y.log CUL_HM_HM_CC_RT_DN_2212BC_WindowRec&lt;br /&gt;
 2013.10.10 20:03:27 2: autocreate: define FileLog_CUL_HM_HM_CC_RT_DN_2212BC_WindowRec FileLog /usr/local/FHEM/var/log/CUL_HM_HM_CC_RT_DN_2212BC_WindowRec-%Y.log CUL_HM_HM_CC_RT_DN_2212BC_WindowRec&lt;br /&gt;
 2013.10.10 20:03:28 2: autocreate: define CUL_HM_HM_CC_RT_DN_2212BC_ClimRT_tr CUL_HM 2212BC04&lt;br /&gt;
 2013.10.10 20:03:28 2: autocreate: define FileLog_CUL_HM_HM_CC_RT_DN_2212BC_ClimRT_tr FileLog /usr/local/FHEM/var/log/CUL_HM_HM_CC_RT_DN_2212BC_ClimRT_tr-%Y.log CUL_HM_HM_CC_RT_DN_2212BC_ClimRT_tr&lt;br /&gt;
 2013.10.10 20:03:28 2: autocreate: define FileLog_CUL_HM_HM_CC_RT_DN_2212BC_ClimRT_tr FileLog /usr/local/FHEM/var/log/CUL_HM_HM_CC_RT_DN_2212BC_ClimRT_tr-%Y.log CUL_HM_HM_CC_RT_DN_2212BC_ClimRT_tr&lt;br /&gt;
 2013.10.10 20:03:29 2: autocreate: define CUL_HM_HM_CC_RT_DN_2212BC_ClimaTeam CUL_HM 2212BC05&lt;br /&gt;
 2013.10.10 20:03:29 2: autocreate: define FileLog_CUL_HM_HM_CC_RT_DN_2212BC_ClimaTeam FileLog /usr/local/FHEM/var/log/CUL_HM_HM_CC_RT_DN_2212BC_ClimaTeam-%Y.log CUL_HM_HM_CC_RT_DN_2212BC_ClimaTeam&lt;br /&gt;
 2013.10.10 20:03:29 2: autocreate: define FileLog_CUL_HM_HM_CC_RT_DN_2212BC_ClimaTeam FileLog /usr/local/FHEM/var/log/CUL_HM_HM_CC_RT_DN_2212BC_ClimaTeam-%Y.log CUL_HM_HM_CC_RT_DN_2212BC_ClimaTeam&lt;br /&gt;
 2013.10.10 20:03:30 2: autocreate: define CUL_HM_HM_CC_RT_DN_2212BC_remote CUL_HM 2212BC06&lt;br /&gt;
 2013.10.10 20:03:30 2: autocreate: define FileLog_CUL_HM_HM_CC_RT_DN_2212BC_remote FileLog /usr/local/FHEM/var/log/CUL_HM_HM_CC_RT_DN_2212BC_remote-%Y.log CUL_HM_HM_CC_RT_DN_2212BC_remote&lt;br /&gt;
 2013.10.10 20:03:30 2: autocreate: define FileLog_CUL_HM_HM_CC_RT_DN_2212BC_remote FileLog /usr/local/FHEM/var/log/CUL_HM_HM_CC_RT_DN_2212BC_remote-%Y.log CUL_HM_HM_CC_RT_DN_2212BC_remote&lt;br /&gt;
 2013.10.10 20:03:35 3: Device CUL_HM_HM_CC_RT_DN_2212BC added to ActionDetector with 000:10 time&lt;br /&gt;
 2013.10.10 20:03:40 2: CUL_HM set CUL_HM_HM_CC_RT_DN_2212BC getSerial&lt;br /&gt;
 2013.10.10 20:03:40 2: CUL_HM set CUL_HM_HM_CC_RT_DN_2212BC getConfig&lt;br /&gt;
 2013.10.10 20:03:54 3: Device CUL_HM_HM_CC_RT_DN_2212BC added to ActionDetector with 000:10 time&lt;br /&gt;
&lt;br /&gt;
=== Event monitor ===&lt;br /&gt;
 2013-10-12 12:05:35.610 CUL_HM CUL_HM_HM_CC_RT_DN_2212BC_ClimRT_tr motorErr: ok&lt;br /&gt;
 2013-10-12 12:05:35.610 CUL_HM CUL_HM_HM_CC_RT_DN_2212BC_ClimRT_tr measured-temp: 18.4&lt;br /&gt;
 2013-10-12 12:05:35.610 CUL_HM CUL_HM_HM_CC_RT_DN_2212BC_ClimRT_tr desired-temp: 18&lt;br /&gt;
 2013-10-12 12:05:35.610 CUL_HM CUL_HM_HM_CC_RT_DN_2212BC_ClimRT_tr ValvePosition: 3 %&lt;br /&gt;
 2013-10-12 12:05:35.610 CUL_HM CUL_HM_HM_CC_RT_DN_2212BC_ClimRT_tr mode: manu&lt;br /&gt;
 2013-10-12 12:05:35.610 CUL_HM CUL_HM_HM_CC_RT_DN_2212BC_ClimRT_tr unknown0: 24&lt;br /&gt;
 2013-10-12 12:05:35.610 CUL_HM CUL_HM_HM_CC_RT_DN_2212BC_ClimRT_tr T: 18.4 desired: 18 valve: 3 %&lt;br /&gt;
 2013-10-12 12:05:35.646 CUL_HM CUL_HM_HM_CC_RT_DN_2212BC battery: ok&lt;br /&gt;
 2013-10-12 12:05:35.646 CUL_HM CUL_HM_HM_CC_RT_DN_2212BC batteryLevel: 3.1 V&lt;br /&gt;
 2013-10-12 12:05:35.646 CUL_HM CUL_HM_HM_CC_RT_DN_2212BC measured-temp: 18.4&lt;br /&gt;
 2013-10-12 12:05:35.646 CUL_HM CUL_HM_HM_CC_RT_DN_2212BC desired-temp: 18&lt;br /&gt;
 2013-10-12 12:05:35.646 CUL_HM CUL_HM_HM_CC_RT_DN_2212BC actuator: 3 %&lt;br /&gt;
&lt;br /&gt;
== Firmware Update ==&lt;br /&gt;
Seit 24.10.2014 gibt es für den HM-CC-RT-DN die neue Firmware Version 1.4. Diese kann von der eQ-3 Webseite heruntergeladen werden. Genauere Informationen gibt es unter [[HomeMatic Firmware Update]].&lt;br /&gt;
&lt;br /&gt;
=== HM-CC-RT-DN spezifische Update Informationen ===&lt;br /&gt;
Durch gleichzeitiges Drücken der &amp;quot;Auto-/Manu&amp;quot;-Taste und der &amp;quot;Comfort-/Eco&amp;quot;-Taste am HM-CC-RT-DN während man die Batterien wieder einlegt wird der updatemodus gestartet. Während des Updates steht &amp;quot;FUP&amp;quot; im Display. Nach erfolgreichem Update erscheint &amp;quot;Ins&amp;quot; im Display und es muss eine erneute Adaptierfahrt durch drücken der Boost-Taste ausgelöst werden. Anschließend sollte der HM-CC-RT-DN wieder normal funktionieren. Die eingestellten Parameter und das Pairing mit FHEM gehen beim Update nicht verloren. Sollte das Update fehlschlagen, erscheint &amp;quot;Err&amp;quot; bzw. &amp;quot;CrC&amp;quot; im Display.&lt;br /&gt;
&lt;br /&gt;
Normalerweise sollte dann durch erneutes starten der Prozedur am PC und HM-CC-RT-DN das ganze erneut durchführbar sein.&lt;br /&gt;
&lt;br /&gt;
Es gibt einige Readings, die nicht durch ein einfaches &#039;&#039;getConfig&#039;&#039; aktualisisert werden, z.B. &amp;quot;battery&amp;quot;(nicht batteryLevel). Um diese Readings zu bekommen, ist ein &lt;br /&gt;
:&amp;lt;code&amp;gt;set Device_Channel04 controlMode auto &amp;lt;/code&amp;gt;&lt;br /&gt;
notwendig. Daraufhin werden die Readings übertragen/aktualisiert.&lt;br /&gt;
&lt;br /&gt;
== Simulation von Fensterkontakten und externen Temperatursensoren ==&lt;br /&gt;
grober Ablauf:&lt;br /&gt;
* erstellen ein virtuelles Device&lt;br /&gt;
* erstelle dazu einen virtuellen Kanal&lt;br /&gt;
* peeren den Kanal mit dem RT (als fenster-kontakt oder als remote, wen du willst)&lt;br /&gt;
* sende ein postEvent&lt;br /&gt;
&lt;br /&gt;
=== Fensterkontakte ===&lt;br /&gt;
&#039;&#039;Entnommen aus diesem {{Link2Forum|Topic=31078|Message=236245|LinkText=Forenbeitrag}}&#039;&#039;&lt;br /&gt;
 define virSC CUL_HM 221133&lt;br /&gt;
 attr virSC autoReadReg 4_reqStatus&lt;br /&gt;
 attr virSC expert 2_full&lt;br /&gt;
 attr virSC model virtual_1&lt;br /&gt;
 attr virSC peerIDs &lt;br /&gt;
 attr virSC subType virtual&lt;br /&gt;
 attr virSC webCmd press short:press long&lt;br /&gt;
 &lt;br /&gt;
 define virtualKitchenDoor CUL_HM 22113301&lt;br /&gt;
 attr virtualKitchenDoor dummy 1&lt;br /&gt;
 attr virtualKitchenDoor expert 1&lt;br /&gt;
 attr virtualKitchenDoor group Virtual&lt;br /&gt;
 attr virtualKitchenDoor model virtual_1&lt;br /&gt;
 attr virtualKitchenDoor webCmd postEvent open:postEvent closed &lt;br /&gt;
&lt;br /&gt;
Anschließend peeren und Temperatur festlegen mit:&lt;br /&gt;
 set virtualKitchenDoor peerChan 0 &amp;lt;Thermostat_Window_Rec&amp;gt; single set&lt;br /&gt;
 set &amp;lt;Thermostat_Window_Rec&amp;gt; regSet winOpnTemp 5 virtualKitchenDoor&lt;br /&gt;
&lt;br /&gt;
Die virtuelle Tür wird dann dann entsprechend über ein Notify getriggert:&lt;br /&gt;
 define notify_virtualKitchenDoor notify (Fensterkontakt_1|Fensterkontakt_2) {if(Value(&amp;quot;Fensterkontakt&amp;quot;) eq &amp;quot;open&amp;quot; &amp;amp;&amp;amp; Value(&amp;quot;Fensterkontakt_2&amp;quot;) eq &amp;quot;open&amp;quot;){fhem(&amp;quot;set virtualKitchenDoor postEvent open&amp;quot;)}else{fhem(&amp;quot;set virtualKitchenDoor postEvent closed&amp;quot;)}}&lt;br /&gt;
&lt;br /&gt;
=== Temperatursensoren ===&lt;br /&gt;
&#039;&#039;Entnommen aus diesem {{Link2Forum|Topic=19686|Message=233788|LinkText=Forenbeitrag}}&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
1. Virtuelles HomeMatic Device mit _deiner_ HM Id definieren:&lt;br /&gt;
 define wz_vT CUL_HM &amp;lt;hmId&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2. Dem Device einen virtuellen Kanal (Default ist ein virtueller Button) hinzufügen:&lt;br /&gt;
 set wz_vT virtual 1&lt;br /&gt;
&lt;br /&gt;
3. Es ist kein virtueller Button sondern ein virtueller Temperatursensor - darum rename:&lt;br /&gt;
 rename wz_vT_Btn1 wz_vT_Sensor1&lt;br /&gt;
&lt;br /&gt;
4. Virtuellen Peer Sensor mit dem Weather Channel des RT-DN peeren:&lt;br /&gt;
 set wz_vT_Sensor1 peerChan 0 &amp;lt;RT_DN&amp;gt;_Weather single&lt;br /&gt;
&lt;br /&gt;
5. Peering kontrollieren (Voraussetzung: Device &#039;&#039;hm&#039;&#039; vom Typ [[HomeMatic HMInfo|HMinfo]] existiert):&lt;br /&gt;
:&amp;lt;code&amp;gt;set hm peerXref&amp;lt;/code&amp;gt;&lt;br /&gt;
Beispiel-Ausgabe:&lt;br /&gt;
 peerXref done: &lt;br /&gt;
 x-ref list &lt;br /&gt;
    wz_Thermostat_Weather =&amp;gt; wz_vT_Sensor1 &lt;br /&gt;
    wz_vT_Sensor1 =&amp;gt; wz_Thermostat_Weather&lt;br /&gt;
&lt;br /&gt;
6. Gemessene Temperatur vom z.B. 1-Wire DS1820 dem virtuellen HM Sensor übergeben. Z.B. alle zwei Minuten per at:&lt;br /&gt;
 define at_wz_vT at +*00:02 { my $T=(ReadingsVal(&amp;quot;&amp;lt;DS1820B&amp;gt;&amp;quot;,&amp;quot;temperature&amp;quot;,20.0)); fhem &amp;quot;set wz_vT_Sensor1 virtTemp $T&amp;quot; }&lt;br /&gt;
&lt;br /&gt;
Fertig.&lt;br /&gt;
&lt;br /&gt;
== Bekannte Probleme ==&lt;br /&gt;
=== TempList: Bad format ... ===&lt;br /&gt;
Wenn Sie beim Setzen einer Temperaturliste nach dem o.a. Schema (&amp;quot;SetTempList...&amp;quot;) die Meldung&lt;br /&gt;
&lt;br /&gt;
 Bad format, use HH:MM TEMP ......&lt;br /&gt;
&lt;br /&gt;
erhalten, sollten Sie zunächst ein [[update]] von Fhem durchführen.&lt;br /&gt;
&lt;br /&gt;
== Links ==&lt;br /&gt;
* [http://www.elv.de/homematic-heizkoerperthermostat-1.html Produktinfo]&lt;br /&gt;
* [http://www.elv-downloads.de/Assets/Produkte/10/1051/105155/Downloads/105155_thermostat_um.pdf Bedienungsanleitung (PDF)]&lt;br /&gt;
* [http://www.elv-downloads.de/Assets/Produkte/10/1051/105155/Downloads/105155_thermostat_data.pdf Datenblatt (PDF)]&lt;br /&gt;
* [http://www.elv-downloads.de/service/manuals/ventilkompatibilitaet.pdf Ventil-Kompatibilitätsliste (PDF)]&lt;br /&gt;
* {{Link2Forum|Topic=14738|LinkText=Forenthema zum Thermostat}}&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:HomeMatic Components]]&lt;br /&gt;
[[Kategorie:Heizungsventile]]&lt;/div&gt;</summary>
		<author><name>Michael</name></author>
	</entry>
	<entry>
		<id>http://wiki.fhem.de/w/index.php?title=HM-CFG-USB_USB_Konfigurations-Adapter&amp;diff=12763</id>
		<title>HM-CFG-USB USB Konfigurations-Adapter</title>
		<link rel="alternate" type="text/html" href="http://wiki.fhem.de/w/index.php?title=HM-CFG-USB_USB_Konfigurations-Adapter&amp;diff=12763"/>
		<updated>2015-11-02T16:01:09Z</updated>

		<summary type="html">&lt;p&gt;Michael: Packages für DSM hinzugefügt.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{Infobox Hardware&lt;br /&gt;
|Bild=platzHalter.png&lt;br /&gt;
|Bildbeschreibung=todo&lt;br /&gt;
|HWProtocol=HomeMatic &lt;br /&gt;
|HWType=Interface/Gateway&lt;br /&gt;
|HWCategory=HomeMatic&lt;br /&gt;
|HWComm=868,3MHz&lt;br /&gt;
|HWChannels=&lt;br /&gt;
|HWVoltage=&lt;br /&gt;
|HWPowerConsumption=&lt;br /&gt;
|HWPoweredBy=USB-Bus&lt;br /&gt;
|HWSize=&lt;br /&gt;
|HWDeviceFHEM=[http://fhem.de/commandref.html#CUL_HM CUL_HM]&lt;br /&gt;
&amp;lt;!-- |ModOwner=  --&amp;gt;&lt;br /&gt;
|HWManufacturer=HomeMatic &lt;br /&gt;
}}&lt;br /&gt;
Der [[HomeMatic]] &#039;&#039;&#039;USB Konfigurations-Adapter&#039;&#039;&#039; ist ein USB-Stick, der außer zur Konfiguration von HomeMatic Komponenten auch als [[Interface]] zwischen Fhem und HomeMatic Geräten benutzt werden kann. Er existiert in zwei Versionen: der älteren HM-CFG-USB und der neueren HM-CFG-USB2. Die folgenden Beschreibungen gelten für beide Versionen, es sei denn, es ist ausdrücklich eine spezifische Version genannt.&lt;br /&gt;
&lt;br /&gt;
== Einbindung in Fhem ==&lt;br /&gt;
Im Fhem-Forum wird die Einbindung als Interface in diesem {{Link2Forum|Topic=13071}} beschrieben und diskutiert. Im {{Link2Forum|Topic=13071|Message=79872|LinkText=Eröffnungsbeitrag}} wird eine gut funktionierende HMLAN-Emulationssoftware [https://git.zerfleddert.de/cgi-bin/gitweb.cgi/hmcfgusb hmland] von ihrem Entwickler vorgestellt, um den HM-CFG-USB in Fhem zu integrieren. Die HMLAN-Emulationssoftware muss zunächst kompiliert und installiert werden. Anschließend wird der HM-CFG-USB (üblicherweise auf localhost) genau wie [[HM-CFG-LAN LAN Konfigurations-Adapter|HMLAN]] in Fhem eingebunden. &lt;br /&gt;
&lt;br /&gt;
=== Einrichtung unter Linux ===&lt;br /&gt;
Die Schritte zur Kompilierung und Installation hat der hmland-Entwickler sowohl auf der [https://git.zerfleddert.de/cgi-bin/gitweb.cgi/hmcfgusb hmland-Internetseite] in Englisch (kurz) als auch im oben genannten {{Link2Forum|Topic=13071|Message=79872|LinkText=Eröffnungsbeitrag}} in Deutsch (ausführlich) dargestellt. Die dort gemachten Angaben werden auch bei Bedarf aktualisiert und sind deshalb der beste Anlaufpunkt für Kompilierung und Installation. &lt;br /&gt;
&lt;br /&gt;
Die nachfolgenden Angaben in diesem Abschnitt sind rein zu Informationszwecken (noch) enthalten: &lt;br /&gt;
&lt;br /&gt;
Zunächst muss die HMLAN-Emulationssoftware kompiliert werden. Analog zu [https://git.zerfleddert.de/cgi-bin/gitweb.cgi/hmcfgusb dieser Beschreibung] ist die Vorgehensweise die folgende (in Debian/Ubuntu/Raspbian):&lt;br /&gt;
 cd /opt/&lt;br /&gt;
 apt-get install build-essential libusb-1.0-0-dev make gcc git-core&lt;br /&gt;
 git clone git://git.zerfleddert.de/hmcfgusb&lt;br /&gt;
 cd hmcfgusb&lt;br /&gt;
 make&lt;br /&gt;
&lt;br /&gt;
Danach kann der Dienst zu Testzwecken gestartet werden (in /opt/hmcfgusb):&lt;br /&gt;
:&amp;lt;code&amp;gt;./hmland -p 1234 -D&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Start als Daemon ====&lt;br /&gt;
Um den hmland als Daemon mit dem Betriebsystem automatisiert zu starten, kann ein init-script genutzt werden. In diesem {{Link2Forum|Topic=13071|Message=190887}} ist ein Skript zur automatischen Einrichtung von hmland als Daemon über init mit Installationsanweisung enthalten. Dieses Skript enthält zudem auch die Befehle zum Download, Kompilierung und Installation von hmland, so dass fast keine manuellen Eingriffe notwendig sind.&lt;br /&gt;
&lt;br /&gt;
Alternativ ist auch der (umständlichere) manuelle Weg möglich:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
#!/bin/sh&lt;br /&gt;
### BEGIN INIT INFO&lt;br /&gt;
# Provides: hmland&lt;br /&gt;
# Required-Start: $localfs $syslog $remote_fs&lt;br /&gt;
# Required-Stop:&lt;br /&gt;
# Default-Start: 2 3 4 5&lt;br /&gt;
# Default-Stop: 0 1 6&lt;br /&gt;
# Short-Description: hmland daemon&lt;br /&gt;
# Description: hmland daemon, Homematic USB Adapter on port 1234&lt;br /&gt;
### END INIT INFO&lt;br /&gt;
&lt;br /&gt;
 # simple init for hmland&lt;br /&gt;
 &lt;br /&gt;
 pidfile=/var/run/hmland.pid&lt;br /&gt;
 port=1234&lt;br /&gt;
 &lt;br /&gt;
 case &amp;quot;$1&amp;quot; in&lt;br /&gt;
  start|&amp;quot;&amp;quot;)&lt;br /&gt;
 	chrt 50 /opt/hmcfgusb/hmland -d -P -l 127.0.0.1 -p $port 2&amp;gt;&amp;amp;1 | perl -ne &#039;$|=1; print localtime . &amp;quot;: [hmland] $_&amp;quot;&#039; &amp;gt;&amp;gt; /var/log/hmland.log &amp;amp;&lt;br /&gt;
 	;;&lt;br /&gt;
  restart|reload|force-reload)&lt;br /&gt;
 	echo &amp;quot;Error: argument &#039;$1&#039; not supported&amp;quot; &amp;gt;&amp;amp;2&lt;br /&gt;
 	exit 3&lt;br /&gt;
 	;;&lt;br /&gt;
  stop)&lt;br /&gt;
 	killall hmland&lt;br /&gt;
 	;;&lt;br /&gt;
  status)&lt;br /&gt;
 	if [ ! -e $pidfile ]; then&lt;br /&gt;
 		echo &amp;quot;No pid&amp;quot;&lt;br /&gt;
 		exit 1&lt;br /&gt;
 	fi&lt;br /&gt;
 	pid=`cat $pidfile`&lt;br /&gt;
 	if kill -0 $pid &amp;amp;&amp;gt;1 &amp;gt; /dev/null; then&lt;br /&gt;
 		echo &amp;quot;Running&amp;quot;&lt;br /&gt;
 		exit 0&lt;br /&gt;
 	else&lt;br /&gt;
 		rm $pidfile&lt;br /&gt;
 		echo &amp;quot;Not running&amp;quot;&lt;br /&gt;
 		exit 1&lt;br /&gt;
 	fi&lt;br /&gt;
 &lt;br /&gt;
 	;;&lt;br /&gt;
  *)&lt;br /&gt;
 	echo &amp;quot;Usage: hmland [start|stop|status]&amp;quot; &amp;gt;&amp;amp;2&lt;br /&gt;
 	exit 3&lt;br /&gt;
 	;;&lt;br /&gt;
 esac&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Bei Distributionen, die Upstart einsetzen (z.B. xbian) kann folgendes Konfigurationsfile verwendet werden:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# HMLAND&lt;br /&gt;
&lt;br /&gt;
description     &amp;quot;hmland&amp;quot;&lt;br /&gt;
&lt;br /&gt;
start on starting fhem&lt;br /&gt;
stop on stopped fhem&lt;br /&gt;
&lt;br /&gt;
respawn&lt;br /&gt;
expect fork&lt;br /&gt;
&lt;br /&gt;
chdir /opt/hmcfgusb&lt;br /&gt;
exec /opt/hmcfgusb/hmland -d -l 127.0.0.1 -p 1234&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Die Datei sollte als &amp;quot;/etc/init/hmland.conf&amp;quot; angelegt werden. Mit dem Befehl &lt;br /&gt;
 initctl reload-configuration&lt;br /&gt;
wird Upstart angewiesen, seine Konfiguration erneut einzulesen. Danach kann der neue Dienst &lt;br /&gt;
mit &lt;br /&gt;
 service hmland start&lt;br /&gt;
gestartet werden. &amp;lt;code&amp;gt;hmland&amp;lt;/code&amp;gt; wird jetzt immer vor Fhem gestartet und nach Fhem beendet.&lt;br /&gt;
&lt;br /&gt;
==== Start über Fhem Startskript ====&lt;br /&gt;
&lt;br /&gt;
Ausprobiert auf einem BBB mit Debian, eigentlich ist das alles von Betateilchen:&lt;br /&gt;
&lt;br /&gt;
Zunächst hmland kompilieren wie oben beschrieben, bis zum make. Das muss erfolgreich durchgelaufen sein.&lt;br /&gt;
&lt;br /&gt;
Dann geht es weiter:&lt;br /&gt;
&lt;br /&gt;
 sudo cp hmcfgusb.rules /etc/udev/rules.d/&lt;br /&gt;
&lt;br /&gt;
Jetzt das Fhem Startskript anpassen (in den Blöcken &#039;start&#039; und &#039;stop&#039; muss quasi nur jeweils 1 Zeile eingefügt werden:&lt;br /&gt;
&lt;br /&gt;
Damit editiert man das Fhem Startskript:&lt;br /&gt;
 sudo nano /etc/init.d/fhem&lt;br /&gt;
&lt;br /&gt;
Und so sollten die Blöcke anschließend aussehen (bitte nur jeweils die Zeile mit hmland einfügen)&lt;br /&gt;
&lt;br /&gt;
 &#039;start&#039;)&lt;br /&gt;
        echo &amp;quot;Starting fhem...&amp;quot;&lt;br /&gt;
        /opt/hmcfgusb/hmland -d -p 1234&lt;br /&gt;
        perl fhem.pl fhem.cfg&lt;br /&gt;
        RETVAL=$?&lt;br /&gt;
        ;;&lt;br /&gt;
&lt;br /&gt;
 &#039;stop&#039;)&lt;br /&gt;
        echo &amp;quot;Stopping fhem...&amp;quot;&lt;br /&gt;
        perl fhem.pl $port &amp;quot;shutdown&amp;quot;&lt;br /&gt;
        RETVAL=$?&lt;br /&gt;
        pkill hmland&lt;br /&gt;
&lt;br /&gt;
So wird hmland vor Fhem gestartet und nach Fhem beendet. Letztlich erspart es Probleme mit den diversen Startskripten und ihren Rechten.&lt;br /&gt;
&lt;br /&gt;
Es dauert nach dem Start von Fhem noch einige Sekunden, bis hmland fertig geladen ist. In dieser Zeit kann es zu fehlerhaften Einträgen im Logfile kommen.&lt;br /&gt;
&lt;br /&gt;
=== Einrichtung auf Synology DiskStations ===&lt;br /&gt;
&lt;br /&gt;
Packages für DSM5.2 finden sich hier:&lt;br /&gt;
https://github.com/mkunzmann/spksrc/releases/tag/0.101-3&lt;br /&gt;
&lt;br /&gt;
Welches Package für welche DS kann man hier sehen:&lt;br /&gt;
https://github.com/SynoCommunity/spksrc/wiki/Architecture-per-Synology-model&lt;br /&gt;
&lt;br /&gt;
Einfach das passende Package installieren und dann kann man den hmland über den Synology Package-Manager starten und stoppen.&lt;br /&gt;
Während der Installation kann man den Port für hmland festlegen. Bitte einen Port &amp;gt; 1024 wählen, da der hmland nicht als root läuft.&lt;br /&gt;
Außerdem kann ein Logfile angegeben werden. Hier am besten eine Datei auf einem USB Stick angeben die für jedermann schreibbar sein muss.&lt;br /&gt;
Damit sollten die Platten nach wie vor in den Standby gehen.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=== Einrichtung unter Mac OS X ===&lt;br /&gt;
Wie unter Linux braucht man die HMLAN-Emulationssoftware hmland, die man aus Quelltexten erstellen muss. Dazu muss man die Bibliothek libusb installieren, entweder mit einem der Paketmanager wie Fink, MacPorts oder Homebrew oder direkt aus den Quellentexten (Beispiel: &amp;quot;fink install libusb1-shlibs libusb1&amp;quot;). Hat man wie bei Linux das Quelltextarchiv für hmland heruntergeladen und ausgepackt, müssen die Dateien Makefile und hmcfgusb.c angepasst werden. &lt;br /&gt;
&lt;br /&gt;
Im Makefile muss man den Pfad zur libusb anpassen. Hat man libusb mit fink installiert, muss man, &amp;quot;/opt/local/&amp;quot; durch &amp;quot;/sw/&amp;quot; bei den CFLAGS und den LDFLAGS ersetzen und&lt;br /&gt;
das &amp;quot;-lrt&amp;quot; aus den LDLIBS entfernen. Die Library librt gibt es bei Mac OS X nicht und wird anscheinend auch nicht gebraucht. (Stimmt das eigentlich?)&lt;br /&gt;
&lt;br /&gt;
In der Datei hmcfgusb.c muss man die Zeilen 130-134 mit dem Aufruf libusb_detach_kernel_driver auskommentieren oder löschen. Der geht nicht auf Mac OS X.&lt;br /&gt;
&lt;br /&gt;
Nach den Änderungen in den zwei Dateien, kann man wie bei Linux den Dämon hmland mit dem Kommando &amp;quot;make&amp;quot; erzeugen und mit &amp;quot;./hmland&amp;quot; ausführen. Automatisches Starten beim Booten mit launchd ist noch nicht probiert.&lt;br /&gt;
&lt;br /&gt;
Beim Start von hmland sollte man folgende Fehlermeldung in einer Endlos-Schleife erhalten:&lt;br /&gt;
&lt;br /&gt;
Datum Zeit: Client 127.0.0.1 connected! &amp;lt;br /&amp;gt;&lt;br /&gt;
Can&#039;t claim interface: Access denied (insufficient permissions) &amp;lt;br /&amp;gt;&lt;br /&gt;
Can&#039;t find/open hmcfgusb! &amp;lt;br /&amp;gt;&lt;br /&gt;
Datum Zeit: Connection to 127.0.0.1 closed! &amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Auch ein Start von hmland mit Superuser-Rechten ändert daran nichts. Damit das claim interface klappt, muss man eine codeless kext in den Ordner /Library/Extensions legen. Ich habe dieses (http://mspdebug.sourceforge.net/misc/ex430rf2500-kext.zip) herunter geladen. Damit es funktioniert, muss man aber in der Datei Info.plist des Bundle die Properties idProduct und idVendor ändern, entweder mit dem Property List Editor oder einem anderen Texteditor. Die beiden Properties sind etwas versteckt bei Information Property List → IOKitPersonalities → ComIntf. Bei DebugIntf und DeviceDriver scheint man es nicht ändern zu müssen, aber schaden kann es nicht.&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
idProduct: 49167&amp;lt;br /&amp;gt;&lt;br /&gt;
idVendor: 6943&lt;br /&gt;
&lt;br /&gt;
Die Rechte des kext-Bundles müssen auch noch gesetzt werden:&lt;br /&gt;
&lt;br /&gt;
  chmod -R 755 ex430rf2500.kext&lt;br /&gt;
  chown -R root:wheel ex430rf2500.kext&lt;br /&gt;
&lt;br /&gt;
Danach die Datei ex430rf2500.kext in den Ordner /Library/Extensions legen und hmland sollte dann funktionieren.&lt;br /&gt;
&lt;br /&gt;
Es kann sein, dass ab Mac OS X 10.9 der Trick mit dem codeless kext nicht mehr funktioniert, aber noch ist das nicht getestet oder bestätigt. Langfristig kann man vielleicht auch eine kext mit einem Treiber für den HM-CFG-USB USB erstellen&lt;br /&gt;
&lt;br /&gt;
=== Einrichtung unter Windows ===&lt;br /&gt;
Bei der Einrichtung und vermutlich auch dem Betrieb unter Windows 8.1 sind wegen der erweiterten Energieverwaltungsfunktionen die von eQ-3 [http://www.eq-3.de/Downloads/eq3/pdf_FAQ/Funk-Konfigurationsdapter-USB_Windos_8.1.pdf zusammengestellten Tipps] zu befolgen.&lt;br /&gt;
&lt;br /&gt;
== Bekannte Probleme ==&lt;br /&gt;
=== Verbindung zu neueren hmland-Versionen nicht stabil ===&lt;br /&gt;
Seit Version 0.100 meldet sich die HMLAN-Emulationssoftware als USB-Interface bei Fhem. Ältere Fhem-Versionen (vor dem 19.6.2015) brechen deshalb die Verbindung ab, da sie nur ein LAN-Interface erwarten.&lt;br /&gt;
&lt;br /&gt;
Lösung: Kommandozeilenparameter &amp;lt;code&amp;gt;-I&amp;lt;/code&amp;gt; dem hmland-Aufruf hinzufügen, dann meldet sich dieser wieder als LAN-Interface.&lt;br /&gt;
&lt;br /&gt;
=== Stick nicht (mehr) ansprechbar ===&lt;br /&gt;
Zitat aus dem {{Link2Forum|Topic=32502|Message=249122|LinkText=Fhem-Forum}}: &lt;br /&gt;
:&#039;&#039;... befürchte ich, dass dein Stick das Zeitliche gesegnet hat. Machen die Dinger leider sehr gerne... Ganz besonders beim Modus-Wechsel vom 10k- in den 100k-Modus, wenn man bei irgendeinem Device ein Firmwareupdate durchführt. &amp;lt;br /&amp;gt;Die gute Nachricht ist, dass der Fehler bei sämtlichen Händlern bekannt ist und anstandslos getauscht wird.&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
=== Raspberry Pi ===&lt;br /&gt;
Der USB-Stack am Raspberry Pi ist für viele Probleme verantwortlich. Daher sieht man öfter Fehlermeldungen:&lt;br /&gt;
:&amp;lt;code&amp;gt;usb-transfer took more than 100ms (1039ms), this may lead to timing problems!&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Da das Timing bei Homematic wichtig ist führt das zu vielen Retransmits und zu unzuverlässigen Aktoren. Als Workaround kann man den USB-Stack auf die deutlich langsamere Version 1.1 stellen. Dazu fügt man folgenden Text am Anfang der Datei /boot/cmdline.txt ein:&lt;br /&gt;
:&amp;lt;code&amp;gt;dwc_otg.speed=1&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Windows ===&lt;br /&gt;
Die erweiterte Energieverwaltung unter Windows 8.1 kann dazu führen, dass der Adapter unerwünschterweise in den Stand-by Modus versetzt wird (siehe [[HM-CFG-USB USB Konfigurations-Adapter#Einrichtung unter Windows|Einrichtung unter Windows]]).&lt;br /&gt;
&lt;br /&gt;
== Weitergehende Informationen ==&lt;br /&gt;
Es sind zwei Versionen des HM-CFG-USB im Umlauf:&lt;br /&gt;
* HM-CFG-USB-2: die aktuelle Version; Dokumentation derzeit (12/2013) nicht über die ELV-Artikelseite verfügbar, alternativ jedoch bei [http://files.voelkner.de/625000-649999/640558-an-01-ml-USB_FUNK_KONFIGURATIONSADAPTER_de_en.pdf Völkner]; Kennzeichen dieser Version: &lt;br /&gt;
** Größe: 28 x 84 x 11,5&amp;amp;nbsp;mm&lt;br /&gt;
** Gewicht: 18&amp;amp;nbsp;g&lt;br /&gt;
** Antenne innenliegend&lt;br /&gt;
* HM-CFG-USB: Vorgängerversion; Stand 12/2013 noch Restbestände im Handel verfügbar. Dokumentation ([http://files.voelkner.de/625000-649999/646462-an-01-ml-HM_Konfigurationsadapter_CFG_USB_de_en.pdf Völkner]); Kennzeichen:&lt;br /&gt;
** Anschluss per separatem USB-Kabel&lt;br /&gt;
** abstehende Stabantenne&lt;br /&gt;
** Größe: 40 x 90 x 25&amp;amp;nbsp;mm&lt;br /&gt;
** Gewicht: 45&amp;amp;nbsp;g&lt;br /&gt;
&lt;br /&gt;
== Links ==&lt;br /&gt;
* Fhem-Forums {{Link2Forum|Topic=13071}}: HomeMatic USB Konfigurations-Adapter (HM-CFG-USB) in Fhem nutzen&lt;br /&gt;
* [http://www.elv.de/homematic-usb-konfigurations-adapter-1.html ELV Shopseite] zum HM-CFG-USB&lt;br /&gt;
* [http://www.eq-3.de/produkt-detail-zentralen-und-gateways/items/homematic-funk-konfigurationsadapter-usb.html eQ-3 Produktseite] zum &amp;quot;HomeMatic Funk-Konfigurationsadapter USB&amp;quot;; Downloads, technische Daten, etc.&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:HomeMatic Components]]&lt;br /&gt;
[[Kategorie:Interfaces]]&lt;br /&gt;
[[Kategorie:OSX]]&lt;/div&gt;</summary>
		<author><name>Michael</name></author>
	</entry>
</feed>