Installieren eines mosquitto Servers auf dem Raspberry Pi geht in 10 Minuten aber die weitere Konfiguration dauert dann schon ein wenig. Ziel dieses Blog Eintrags soll es sein, das Fhem über den MQTT-Server liest.
Später kommt dann ein ESP8266 der das Klingelsignal an der Haustür aufnimmt und drahtlos an Fhem via MQTT sendet. Hier mal die Architektur:
Aber jetzt erst einmal die Vorarbeiten:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
sudo apt-get update
sudo apt-get upgrade
# die schnelle Version, installiert den mosquitto Broker in Version 0.15 und den Client
Heute festgestellt, das unter Fhem der JeeLink seit Tagen keine Wetterdaten von der Terrasse mehr aufzeichnet. Ein Blick ins log sagt: Can’t open /dev/ttyUSB0: Permission denied
Wie kann die aktuelle CPU-Temperatur des Raspberry Pi angezeigt werden?
Wie kann so ein schönes Diagramm erstellt und alle 5 Minuten automatisch aktualisiert werden?
Weil es heute so heiß ist, wollt ich die Temperaturen die auf der Terrasse gemessen und drahtlos zum Fhem Server gesendt werden, mal hier veröffentlichen.
Habe nun mal in den Fhem Hausautomatisations-Server, der auf einen Raspberry Pi läuft, eine Telefon-Anrufliste eingebaut. So können alle Anrufe übersichtlich angezeigt werden. Mit dem Modul FB_CALLLIST geht das einfach. Es muss nur vorher das Modul FB_CALLMONITOR eingerichtet werden. Also diese Konfiguration in die fhem.cfg und restart:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# Fritzbox Anrufmonitor
#
define Fritz_Box_Monitor FB_CALLMONITOR<hier IP Adresse vom Pi eintragen>
Da mein Server abgeraucht war, und schon wieder kein Backup vorhanden war, alles noch einmal.
Hier die Anleitung für einen Raspberry Pi mit Server auf dem Dump1090-mutability läuft. Diese Flugdaten werde an Flightradar 24, Flightaware, Plane Plotter und via TWFlug an Fhem gesendet.
Hier mal meine aktuellen Daten aus EDDV von heute:
Jetzt aber an die Arbeit. Etwas Zeit muss man schon mitbringen, bis es wieder läuft.
(Update 31.3.2016) Ich würde jetzt die neue Debian Jessie Version verwenden wie hier beschrieben. Aber wheezy läuft auch gut…
Habe gerade eine fix für TWFlug hochgeladen, der auch eine neue Funktion hat.
Es kann jetzt in Fhem die Summe aller Flugzeuge pro Tag angezeigt werden. Wird ein Flugzeug zwei oder mehrmals am Tag empfangen, wird es nur einmal in der Summe pro Tag berücksichtigt.
Es wird einmal am Tag kurz vor Mitternacht ein Eintrag in folgender Form geschrieben:
1
2015-01-05_23:59:41flugdaten summe-pro-tag:1296
Fix in Time Funktion, jetzt mit neuer 1.8 Time Api, LocalDateTime …
7700 Alarm Ausgabe in Konsole
In Fhem kann dann diese Grafik ausgegeben werden:
Hier der nötige Eintrag in der twflug.cfg Datei:
1
2
3
# die Grafik mit der Logdatei verbinden für die Anzahl Flugzeuge pro Tag
Mit OpenKarotz lebe er nun wieder. Danke. Echt cool das Projekt. Die Anleitung ist auch super. Man braucht nur
1. den Karotz reseten
2. die neue Firmware 2.0 flashen
3. das update auf 2.1 machen und den Patch 222 einspielen
schon hat man einen über einen WEB-Browser (URL = Karotz-IP) erreichbaren Karotz. Das ist alles schön mit Fotos auf der Homepage von OpenKarotz beschrieben. Auf deutsch oder englisch kann man die Google Übersetzung unten rechts auf der Seite aktivieren.
Bei klick auf das Logo, erscheint:
Der About Reiter zeigt die aktuellen Versionen an:
Auch über Telnet kann man den Karotz erreichen mit login: openkarotz
1
telnet Karotz-ip
Auch die Integration über den Homeserver Fhem, der auf einem Raspberry Pi läuft, klappt auf Anhieb. Hier gibt es eine Anleitung dazu. Einfach in der /opt/fhem/FHEM/99_myUtils.pm die folgende Methode einfügen:
1
2
3
4
5
6
sub karotz(@){
my($ip,$cmd)=@_;
my$url="http://"."$ip"."/cgi-bin/".$cmd;
my$ret=GetFileFromURL($url,3,undef,1,1);
return$ret;
}
oder wenn man einen nicht blockenden Aufruf für Fhem haben möchte, oben in der Perl Datei
Wer Homematic Geräte hat und diese mit dem Homeserver Fhem betreibt, will hin und wieder mal wissen wie es um den Status der Geräte bestellt ist. Die Anleitung zu HMinfo gibt den Überblick.
Am 9.11.2014 wurde nach einem Jahre, eine neue Version von Fhem veröffentlicht. Die Änderungsliste ist umfangreich.
FHEM wird kontinuierlich weiterentwickelt, und die neue Version ist nur als Startpunkt für den update Prozess gedacht. Wer also FHEM laufen hat, braucht nur das update und restart Kommando ausfuehren, um den aktuellen Stand herunterzuladen.
Wer Fhem noch nicht installiert hat, kann es wie hier beschrieben tun.
Es währe doch toll, wenn man bei eintreffender E-Mail benachrichtigt würde oder?
So braucht man nicht immer die 148 Mails checken, und kann die Welt retten.
In diesem Projekt, beschreibe ich wie das Betreff jeder eintreffende E-Mail per Sprachausgabe ausgegeben wird. Dazu wird der Karotz benutzt, der nicht nur für Sprachausgabe nützlich ist.
Zuerst das System aktuallisieren und die nötigen cpan Packages installieren:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
sudo apt-get update
sudo apt-get upgrade
sudo cpan install Mail::IMAPClient
# bei Nachfrage mit ja antworten:
# yes
# bei der nächsten Nachfage mit return bestätigen
# local::lib
# ... Stunden später ...
sudo cpan install IO::Socket::SSL
sudo cpan install IO::Socket::INET
# und optional damit Umlaute auch dargestellt werden
sudo cpan install MIME::Parser
# und optional GnuPG wenn nur signierte E-Mails gelesen werden sollen
Nach einem restart von Fhem steht die letzte Betreffzeilen der E-Mails als Reading bereit. So sieht es dann in Fhem aus:
Jetzt fehlt noch den Subject als userReadings zu setze und eine notify Funktion in der fhem.cfg die das Subject liest und an eine Funktion übergibt. Diese Funktion macht die Sprachausgabe des Karotz und wurde an anderer stelle hier im Blog beschrieben.
Shell
1
2
3
4
5
6
7
8
# Folgende events werden generiert
#
# 2014-10-11 19:13:02 mailcheck mailcheck Subject: Ohne Umlaute
BEGIN failed--compilation aborted at./FHEM/32_mailcheck.pmline11,<>line85.
2. Wenn der MIME::Parser nicht installiert ist, wird aus diesem Betreff:
mit üüüüääää dann
Wenn der MIME Parser aber installiert wurde, und Fhem restartet wurde, klappt es auch mit den Umlauten:
3. Fhem aktualisieren.
Habe festgestellt, das Fhem mit einem update nicht mehr die Scripte autom. aktualisiert. Mit einem update force hat es nach ein paar Fehlermeldungen wieder geklappt. Es waren an einigen Dateien nicht mehr die nötigen Userrechte gesetzt.
Wie kann eine Benachrichtigung mit dem Namen und der Telefonnummer an ein iPhone mit Fhem versendet werden. So weiss man immer wer zu Hause anruft und wann. So kann man evl. gleich zurückrufen.
In der Fritzbox 7490 gibt es jetzt keine Funktion mehr um das Telefonbuch in XML zu exportieren, wenn die Kontakte mit Google syncronisiert werden.
Wie kommt man nun an das passende XML Telefonbuch?
Evl. noch einen Jabber Client installieren um den Account zu testen. Für Mac z.B. adium.im verwenden. Dann auf der Kommandozeile im rPi ein paar Module installieren:
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install libnet-jabber-perl libnet-xmpp-perl libxml-stream-perl libauthen-sasl-perl libnet-ssleay-perl libnet-jabber-bot-perl libdigest-sha-perl
In der fhem.cfg folgende Zeile eintragen:
(Achtung, den Username in der define Zeile ohne @jabber.de angeben)
define Jabber_Client Jabber jabber.de 5222 JABBERUSER PASSWORT 1 0
attr Jabber_Client OnlineStatus available
attr Jabber_Client PollTimer 2
attr Jabber_Client RecvWhitelist JABBERUSER@jabber.de
attr Jabber_Client ResourceName FHEM
attr Jabber_Client userReadings 1
attr Jabber_Client room Jabber
Details zu den Parametern sind in der Fhem commandref zu finden.
Speichern und restart von FHEM. Im Raum Jabber schauen:
Dann in der Kommandozeile von Fhem z.B.:
set Jabber_Client msg JABBERUSER@jabber.de Hallo Fhem Welt!
Habe mir heute in Fhem mal das Dashboard gemäß dieser Anleitung eingerichtet. Eine Seite, wo alle Dinge drauf sind, wo Aktionen getätigt werden können und das Wetter in Langenhagen. So sieht der erste Wurf aus: Oder besser in schwarz?
Welcher gefällt Euch am Besten?
Wollte schon immer auf meinem Handy benachrichtigt werden, wenn jemand an der Haustür klingelt. Bekomme nun immer eine Pushover-Benachrichtigung an alle iPhones und iPads. So kann man in den Keller oder in den Garten mit Handy gehen, und man erfährt, wenn der Postbote oder Besuch klingelt und der Raspberry Pi hat auch etwas zu tun.
Mit dem FS20 KSE geht das in nur 15 Minuten. Also die (alte) Sprechanlage geöffnet. Von innen sieht sie so aus, voller Hightech:
Nun die zwei Drähte von der KSE an die passenden Kontakte geschraubt (parallel zum Summer), der andere Kanal bleibt leer. Spannungversorgung ist nicht nötig.
Alles wieder zuschrauben. In der fhem.cfg noch folgende Einträge machen und restarten:
# XXXX durch Hauscode ersetzen
define fl_klingel_1 FS20 XXXX 00
attr fl_klingel_1 IODev myCUL
attr fl_klingel_1 room Flur
attr fl_klingel_1 group Klingel
define FileLog_fl_klingel_1 FileLog ./log/fl_klingel_1-%Y.log fl_klingel_1
attr FileLog_fl_klingel_1 logtype text
attr FileLog_fl_klingel_1 room Flur
attr FileLog_fl_klingel_1 group Klingel
define FileLog_fl_klingel_2 FileLog ./log/fl_klingel_2-%Y.log fl_klingel_2
attr FileLog_fl_klingel_2 logtype text
attr FileLog_fl_klingel_2 room Flur
attr FileLog_fl_klingel_2 group Klingel
#
# Benachrichtigung wenn es an der Haustür klingelt
# Folgende log Einträge werden geschrieben:
#
# 2014-04-12 12:09:21 FS20 fl_klingel_1 on
# 2014-04-12 12:09:21 FS20 fl_klingel_2 on
# 2014-04-12 12:09:22 FS20 fl_klingel_1 off
# 2014-04-12 12:09:22 FS20 fl_klingel_2 off
# -token- und -user- durch passende token und user ersetzen
define klingenOnPush notify fl_klingel_1:on* {\
my $zeit=EventZeit();;\
system ("curl -s -F 'token=-token-' -F 'user=-user-' -F 'message=Es klingelt an der Haustür um $zeit' -F 'title=Haustür: Klingel an' https://api.pushover.net/1/messages.json");;\
}
attr klingenOnPush group Klingel
attr klingenOnPush room Flur
# -token- und -user- durch passende token und user ersetzen
define klingenOffPush notify fl_klingel_1:off* {\
my $zeit=EventZeit();;\
system ("curl -s -F 'token=-token-' -F 'user=-user-' -F 'message=Es klingelt an der Haustür um $zeit' -F 'title=Haustür: Klingel aus' -F 'sound=siren' https://api.pushover.net/1/messages.json");;\
}
attr klingenOffPush group Klingel
attr klingenOffPush room Flur
Nach einem Restart sieht es in Fhem so aus:
Für die Empfänger-Seite wird noch ein CUL USB-Stick benötigt der wie folgt für den Empfang in Fhem eingebunden werden muss.
Wenn nun jemand an der Tür klingelt, wird innerhalb von ein paar Sekunden die Pushover-Benachrichtigung an das Handy versendet. Eine wenn der Klingeltaster gedrückt wird und eine wenn der Klingelschalter losgelassen wird. So sieht es auf dem iPhone aus:Cool.
Jetzt fehlt noch der Rückkanal, das wenn jemand klingelt, der Summer betätigt werden kann. Dazu fehlt mir aber der drahtlose Empfänger mit Relais. Was könnte ich da nehmen?
Habe von meinen netten Kollegen einen Gutschein erhalten 🙂 Dafür habe ich mir ua. diesen Funk-Rauchmelder HM-SEC-SD gekauft, hier die Ansicht von hinten, mit eingelegten Batterien:
So, mit zwei Schrauben hängt er nun im Server-Raum an der Decke …
Jetzt noch nach dieser Anleitung in Fhem anmelden. Obwohl ich bisher nur einen Rauchmelder haben, ist er mit einem virtueller Aktor als Teamlead verbunden (Variante 2). So kann über set Rauchmelder_Team alarmOn der Alarm getestet werden:
Aus gehts mit set Rauchmelder_Team alarmOff:
Zuvor aber anlernen und peeren:
set HMLAN_1 hmPairForSec 600
define TeamDev CUL_HM 111111
set TeamDev virtual 1
set Rauchmelder_Team peerChan 0 az_Brandmelder single set
Cool, jetzt kann der VdS-zertifizerte Funk-Rauchmelder von überall angeschaltet werden.
Aber erst noch eine Benachrichtigung bei Brandalarm versenden per Pushover. Dazu ua. in der fhem.cfg folgenden Code einfügen und den Token und User ersetzen:
Wer einen CUL am Raspberry Pi hat wo Fhem läuft, den nervt evl. das blinken der LED.
Das kann aber mit dem folgenden Befehl abgeschaltet werden:
set myCUL led 00
Also mit zweimal 00 und dann auf set klicken:
Man kann die LED auch wieder an oder auf blinken schalten mit:
aus 00
an 01
blinken 02
So kann man auch Strom sparen, immerhin 20 mA ;-). Das macht im Jahr wieviel?
Der CUL-V3-OEM CC1101 für 868 Mhz von Busware mit fester lambda/4 Mikroantenne wird ohne Firmware geliefert. CUL V3 – ATMega32U4 Prozessor, 2,5 kB RAM, 32 kB Flashmemory, 1 kByte EEPROM, Herstellungs Video):
Zuerst muss also der CUL mit einer aktuellen Firmware geflasht werden, so wie hier für Mac OS X beschrieben. Also die aktuelle culfw 1.55 Firmware oder neuer laden und in ein Verzeichnis entpacken.
Dann brauchen wir noch das Programm zum flashen der Firmware, welches wir mit sudo port install dfu-programmer
auf der Konsole installieren können.
1. JeeLink in rPi USB stecken.
2. Checken ob er erkannt wurde mit lsusb in der Konsole.
Ausgabe:
...
Bus 001 Device 004: ID 0403:6001 Future Technology Devices International, Ltd FT232 USB-Serial (UART) IC
...
3. Weitere Infos in der Boot-Log mit dmesg ausgeben.
Ausgabe: ...
[ 9.069977] usb 1-1.2: Detected FT232RL
[ 9.075480] usb 1-1.2: Number of endpoints 2
[ 9.109559] usb 1-1.2: Endpoint 1 MaxPacketSize 64
[ 9.115965] usb 1-1.2: Endpoint 2 MaxPacketSize 64
[ 9.156771] usb 1-1.2: Setting MaxPacketSize 64
[ 9.168775] usb 1-1.2: FTDI USB Serial Device converter now attached to ttyUSB0
...
An der Ausgabe kann der verbundenen Port erkannt werden ( hier /dev/ttyUSB0 ).
4. Den JeeLink in der fhem.cfg eintragen mit dem ermittelten Port:
define myJeeLink JeeLink /dev/ttyUSB0
In Fhem gibt es für den JeeLink eine Modul-Beschreibung.
Nachdem der Fhem-Server restartet wurde, ist der JeeLink vorhanden:
Details:
Und die Events werden ausgegben. Hier nur das allgemeine rauschen von irgendwelchen Sensoren die auf der 868 MHzFrequenz senden:
Hatte noch eine unterputz Homematik Schalter HM-LC-Sw1PBU-FM rumliegen, da er nicht in mein Schalterprogramm passt. Wollte ihn nun einer sinnvollen Verwendung zuführen. Damit der Laserdrucker nicht immer angeschaltet ist, wird der nun über diesen Schalter, der in einer zweckentfremdeten wasserdichten „Brotdose“ installiert wurde angesteuert. Hier ein paar Fotos:
Hier nun der Schaltplan:
Drückt man den Schalter, geht der Drucker an und schaltet sich nach 10 min wieder automatisch aus. Das anschalten geht auch über die Fhem Gui.
Folgender Code muss in die fhem.cfg eingefügt werden:
define az_drucker_kurz_an notify az_drucker_schalter:on* define az_drucker_aus at +00:10:00 set az_drucker_schalter off
attr az_drucker_kurz_an group Drucker
attr az_drucker_kurz_an room Arbeitszimmer
define FileLog_az_drucker_schalter FileLog ./log/az_drucker_schalter-%Y.log az_drucker_schalter
attr FileLog_az_drucker_schalter group Drucker
attr FileLog_az_drucker_schalter logtype text
attr FileLog_az_drucker_schalter room Arbeitszimmer
In Fhem sieht es dann so aus:
Später wird das noch automatisiert, das der Drucker automatisch angeht, wenn ein Druck ausgelöst wird und sich dann wieder autom. ausschaltet. Dazu habe ich jetzt schon mal CUPS und AirPrint auf dem Raspberry Pi laufen. Das Script und die Beschreibung kommt dann bald hier…
Wenn man in der Fhem-Web-Gui eigene Menüeinträge auf der linken Seite erzeugen will, wie hier z.B. gezeigt
brauch man nur in der fhem.cfg folgende Zeile erstellen (alles in einer Zeile):
1
2
attr WEB menuEntries restart,cmd=shutdown+restart,update,cmd=update,updatecheck,
Dafür gibt es ein fertiges Modul in Fhem. Es müssen nur die zwei Zeilen mit den device, userid und publickey aus der Web-Oberfläche von Withings (alt)
define withings withings [device]
define withings> withings [userid] [publickey]
in der fhem.cfg ergänzt werden und ein restart des Fhem-Servers durchgeführt werden.
Dann kamm es bei mir zu folgender Fehlermeldung:
Can't locate JSON.pm in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.14.2 /usr/local/share/perl/5.14.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.14 /usr/share/perl/5.14 /usr/local/lib/site_perl . ./FHEM) at ./FHEM/32_withings.pm line 9, <> line 3.
BEGIN failed--compilation aborted at ./FHEM/32_withings.pm line 9, <> line 3.
An der Fehlermeldung kann man erkennen das JSON für Perl auf den Rasperry Pi nicht installiert war.
In der Modulbeschreibung steht auch das „JSON, LWP::Simple and Digest::MD5 have to be installed on the FHEM host“. Also noch ein paar Module neu installieren mit
sudo apt-get install libjson-perl libdigest-md5-file-perl liblwp-protocol-https-perl liblwp-protocol-http-socketunix-perl
auf der Konsole. Nach einem Restart, super es wird mein Gewicht angezeigt 🙁
Wie bekomme ich diese Gewichts-Daten nun in ein schönes Diagramm? Hat schon jemand eine passende gplot Datei? Dann bitte hier posten.
Der Fhem-Server läuft bei mir unter OpenWrt. Nun möchte ich in auf einem Raspberry Pi neu installieren. Vorbedingung ist ein laufender rPi unter Debian wheezy.
Zu erste Perl und einig libs installieren. Dann das Debian Package (8,8 MB) von der Fhem Seite runterladen und installieren. Zu guter letzt die Berechtigungen setzen.
Wer sein Fhem Server heute updated bekommt den Sysmon mitgeliefert (FHEM/42_SYSMON.pm). Installation wie in der Beschreibung von Sysmon angegeben. Wenn man das Beispiel in die fhem.cfg kopiert erhält man folgende Ausgaben:
Folgende Dinge fallen auf wenn man den Beispielcode 1:1 unter OpenWrt attitude_adjustment/12.09 verwendet:
1. Die Überschrift RPi stimmt in meinem Fall nicht, da es ein WR703N ist. Evl. muss da nur die Gruppe geändert werden.
2. Die Temperatur wird nicht angezeigt. Das liegt wohl daran, das der WR703N kein eingebauten Temp.-Sensor hat. Dann sollte die Zeile nicht vorhanden sein oder aber NN stehen. Oder hat der 703N ein Temp.-Sensor?
3. Die Frequenz in Mhz wird nicht angezeigt.
4. Wifi zeigt not available an, wohl weil es ausgeschaltet ist. Gut wäre auch, wenn alles in wahlweise in Deutsch angezeigt würde.
5. USB-Stick wird auch noch nicht richtig angezeigt.
6. Die 6 Plot Dateien werden noch nicht gefunden (Cannot read ./www/gplot/mySMNetworkEth0.gplot). Habe in das www/gplot Verzeichnis geschaut. Da sind die Dateien auch nicht vorhanden. Wo bekomme ich die? Hier steht, das die von GitHub geladen werden könne. Die könnten doch auch in Fhem eingescheckt werden?
Heute noch mal ein Fhem Update, aber die plott Dateien waren noch nicht eingescheckt, ok dann eben aus dem Git holen. Ab heute sind die Dateien nun auch eingescheckt. Der folgende Schritt kann also entfallen.
[Optional]
Ein neues Verzeichnis erstellt und die Dateien aus dem Git Repository geholt und in das Fhem/www/gplot Verzeichnis kopiert mit:
mkdir plott-dateien
cd plott-dateien
git clone git://github.com/hexenmeister/MyFHEM
cp SM* ~/fhem/www/gplot/
Nach reread der Config sind die Plotts auch da, Super!
Die CPU-Speed kann auf OpenWrt wie folgt angezeigt werden, hier meine getestete Perl Funktion: sub
CPUSpeed
{
my $CPUSpeed = qx(cat /proc/cpuinfo | grep "BogoMIPS" | sed 's/[^0-9\.]//g');
return $CPUSpeed;
}
Die könnte in Fhem integriert werden, dann würde auch die Frequenz (CPU-Speed) unter OpenWrt attitude_adjustment/12.09 angezeigt werden.
Der Entwickler hat die Funktion nun eingebaut, und der BogoMips wird nun auch angezeigt. Vielen Dank für das schnelle update. Das liebe ich an Open-Source-Projekten.
Habe die Config nun etwas angepasst, so sieht es super aus und kann bleiben:
In der fhem.cfg folgenden Eintrag machen:
define WetterOnline weblink iframe http://www.wetteronline.de/cgi-bin/hpweather?PLZ=30853
Den Parameter PLZ mit der entsprechenden Postleitzahl anpassen, sonst wird immer das gute Wetter von Langenhagen angezeigt.
Speichern und ein rereadcfg lassen folgendes Bild erscheinen
Mit dem weblink Befehl können auch Bilder und Links in Fhem eingefügt werden. Z.B. der link und das Bild von mir mit
define wenzlaff.de weblink link http://www.wenzlaff.de
define thomas weblink image http://wenzlaff.de/pic/twbildgut.png
liefert folgendes Ergebnis (Bild entfernt).
So wie hier in der Anleitung beschrieben.
Zuerst eine eigene Perl Methode mit folgenden Inhalt erstellen:
Dann folgenden Perl-Befehl aus dem Fhem Server absenden:
Dann zur Kontrolle alle Paramteter einlesen mit set getConfig:
Und das Ergebnis anschauen mit, dabei darauf achten das die Reihenfolge der Tage anders ist als im Script:
Nein. Leider nein. Auf schriftliche Anfrage des Herstellers „nein„. Es gab von der Fa. Koop auch keine Auskunft, wann es Adapter (Wippen) für die Homematic-Schalter geben wird. Schade das das Flaggschiff der Fa. Koop nicht mit Homematik verbunden werden kann.
Habe es dennoch versucht, um zu sehen woran es scheitert. Es passt einfach nicht, da der Wippen-Weg zu lang ist. Da ist auch mit feilen und sägen nichts zu machen, geht nicht mit den Kopp-Wippen
Also der Funkaktor passt nicht in die Vision Serie der Fa. Koop, so wie es der Hersteller sagt.
Schade, das die Vision Serie nicht passt.
Das sind die Homematic Schaltaktoren, die man mit einem „normalen“ Lötkolben leider nicht komplett löten kann,
da zwei Elkos so plaziert sind, das man da schon einen MINI-Lötkolben und eine Lupe haben muss (oder jemand kennen, der sowas hat 😉 ). Da könnte das Platinenlayout sicherlich verbessert werden.
Die Anleitung ist sehr Textlastig und in etwas so, löten sie so wie auf den Bildern zu sehen ist. Die Bilder sind leider nur in Orginalgröße vorhanden (Lupe lieg nicht bei) und dann auch noch mit einem anderen Bausatz vermischt. Da könnte ELV sicher noch optimieren.
Wenn er in Fhem angelernt ist meldet er:
2013-09-18_17:02:10 CUL_HM_HM_LC_Sw1PBU_FM_207EF4 level: 100 %
2013-09-18_17:02:10 CUL_HM_HM_LC_Sw1PBU_FM_207EF4 deviceMsg: on (to HMLAN_1)
2013-09-18_17:02:10 CUL_HM_HM_LC_Sw1PBU_FM_207EF4 on
2013-09-18_17:02:10 CUL_HM_HM_LC_Sw1PBU_FM_207EF4 running: -
# ab hier: rename CUL_HM_HM_LC_Sw1PBU_FM_207EF4 schalter
2013-09-18_17:04:29 schalter set_toggle
2013-09-18_17:04:30 schalter level: 0 %
2013-09-18_17:04:30 schalter deviceMsg: off (to HMLAN_1)
2013-09-18_17:04:30 schalter off
2013-09-18_17:04:30 schalter running: -
2013-09-18_17:04:40 schalter set_toggle
2013-09-18_17:04:40 schalter level: 100 %
2013-09-18_17:04:40 schalter deviceMsg: on (to HMLAN_1)
2013-09-18_17:04:40 schalter on
2013-09-18_17:04:40 schalter running: -
2013-09-18_17:04:59 schalter level: 100 %
2013-09-18_17:04:59 schalter deviceMsg: on (to HMLAN_1)
2013-09-18_17:04:59 schalter on
2013-09-18_17:04:59 schalter running: -
Nachdem das E-Mail System wie in beschrieben eingerichtet wurde, kann eine E-Mail versendet werden wenn eine Tür auf oder zu geht.
Dazu in der fhem.cfg diese Benachrichtigungen einrichten:
# Reagiert auf Event:
# 2013-09-11_17:22:53 wz_Tuerschalter contact: open (to HMLAN_1)
define terrassenTuerOffenEMail notify wz_Tuerschalter:contact.*open.*HMLAN_1.* \
{\
fb_mail('emali@@test.de','Fhem: Terrassen Tuer offen!','Die Terrassen Tuer ist auf.') \
}
# Reagiert auf Event:
# 2013-09-11_17:22:53 wz_Tuerschalter contact: closed (to HMLAN_1)
define terrassenTuerZuEMail notify wz_Tuerschalter:contact.*closed.*HMLAN_1.* \
{\
fb_mail('email@@test.de','Fhem: Terrassen Tuer zu!', 'Die Terrassen Tuer ist zu.') \
}
Dabei beachten das das @ zweimal angegeben werden muss.
Wichtig auch, das alles in einfachen Hochkomma stehen muss.
Testen kann man dies auch mit dem Trigger Befehl, wenn man den auszulösenden Event in das Eingabefeld vom Web-Fhem eingibt: trigger wz_Tuerschalter contact: open (to HMLAN_1)
Dann muss auch eine E-Mail versendet werden.
Folgende Datei erstellen /fhem/FHEM/99_myTWUtil.pm und E-Mail Adresse anpassen.
#
# 99_myTWUtils.pm Version 1.0 vom 11.09.2013
#
# Dieses Perl Script (99_myTWUtils.pm) enthaelt alle Tools die fuer Fhem noch benoetigt werden.
# 1. fb_mail Methode zum versenden von E-Mails
#
# (C) 2013 Thomas Wenzlaff http://www.wenzlaff.de
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see {http://www.gnu.org/licenses/}.
package main;
use strict;
use warnings;
use POSIX;
sub
myTWUtils_Initialize($$)
{
my ($hash) = @_;
}
sub
fb_mail
{
my $empfaenger = $_[0];
my $subject = $_[1];
my $text = $_[2];
Log 5, ">>> fb_mail Eintrag: Empfaenger: $empfaenger Betreff: $subject Text: $text";
Log 5, ">>> ---------------------------------------------------------------------------------";
return"OK, E-Mail an $empfaenger versendet! Betr.: $subject Inhalt: $text";
}
1;
Ein „reload 99_myTWUtil.pm“ und ein „rereadcfg“ absetzen oder ein „reboot“ ausführen und schon wird eine E-Mail nach dem öffnen und schließen der Tür gesendet.
Weitere Links: FhemWiki zum Thema E-Mail senden. Perl infos.
Um die digitalen Werten, wie Tür auf oder zu in einem Plot mit dem Batterie Zustand auszugeben, kann wie folgt vorgegangen werden. Der HM-Sec-SC Funk-Tür-/Fensterkontakt gibt die Werte ja zurück. Die rote Linie gibt den Türzustand aus ob die Tür auf oder zu ist bzw. war.
Diese /fhem/www/gplot/myTerrassenTuer.gplot Datei speichern:
/* myTerrassenTuer.gplot Version 1.0 vom 07.09.2013
Dieses GNU-Plot Script (myTerrassenTuer.gplot) gibt zwei Zustaende des Tuerkontakt als Kurven aus und zwar den Batterie-Zustand, den Status der Tuer.
(C) 2013 Thomas Wenzlaff http://www.wenzlaff.de
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program. If not, see {http://www.gnu.org/licenses/}. */
set terminal png transparent size <SIZE> crop set output '<OUT>.png' set xdata time set timefmt "%Y-%m-%d_%H:%M:%S" set xlabel " " set title 'Terrassen Tuer'
set ytics ("Zu" 0, "Ok" 0.8, "Auf" 1) set y2tics ("Zu" 0, "Ok" 0.8, "Auf" 1) set yrange [-0.1:1.1] set y2range [-0.1:1.1] set ylabel "" set y2label ""
Kurz:
1. fhem.cfg ergänzen (siehe Kopiervorlage unten)
2. drei gnuplot Datein von Githup nach /fhem/www/gplot/ kopieren
3. fhem restarten
Zu 1.: Der Teil der in der fhem.cfg ergänzt werden muss für Langenhagen:
# Wetter von Yahoo (670178 = Langenhagen, 600=alle 600 Sekunden (10min) Yahoo abfragen, de=Sprache Deutsch)
define Wetter Weather 670178 600 de
attr Wetter event-on-update-reading temperature,humidity,pressure,wind_speed,wind_chill,wind_direction
attr Wetter group Umwelt
attr Wetter room 9.02_Steuerung
So sieht es nach den ersten Messwerten aus, ja es ist noch keine Kurve. Aber immerhin:
Das sind diese Messwerte:Und die beiden anderen Punkte mit der Steuerung und Logs:
Einloggen auf OpenWrt per SSL. Dann per Comandline:
telnet 192.168.1.111 7072 und Enter drücken.
Oder auch ohne per SSL einzuloggen und gleich per Telnet verbinden.
Nun erschein der fhem Prompt: fhem>
Mit update check
wird überprüft ob und welche aktualisierungen vorhanden sind.
Dann mit update force werden alle Aktualisierungen erzwungen. Das kann dann ein paar Minuten dauern. Wenn der update fertig ist, muss noch ein shutdown restart durchgeführt werden.
Nach dem erneuten einloggen kann kontroliert werden mit
fhem> update check
List of new / modified files since last update:
nothing to do...
ob alles aktuell ist.
Mit Version können die einzelnen Versions Nummern ausgegeben werden:
Also kurz:
1. OpenWrt installieren
2. USB-Stick vorbereiten und an WR703N anschließen
3. Perl installieren
4. Fhem aus Subversion ausschecken
5. mit make install Fhem erstellen
6. nun kann Fhem gestartet werden in /usr/src/fhem mit: perl /opt/fhem/fhem.pl /opt/fhem/fhem.cfg
7. im Browser http://192.168.2.122:8083/fhem (ip anpassen) aufrufen, es kommt:
8. Autostart für Fhem einrichten. Datei /etc/init.d/fhem anlegen mit folgenden Inhalt:
#!/bin/sh /etc/rc.common
# FHEM Init Script
START=11
STOP=15
start() {
# cd /usr/src/fhem/
# perl /opt/fhem/fhem.pl /opt/fhem/fhem.cfg
# auf neue Verz. angepasst:
cd /etc/src/fhem/
perl /etc/src/fhem/fhem.pl /etc/src/fhem/fhem.cfg
}
stop(){
echo "shutdown" | nc localhost 7072
}
Dann noch die /etc/init.d/fhem Datei ausführbar machen und aktivieren. chmod +x /etc/init.d/fhem
/etc/init.d/fhem enable
/etc/init.d/fhem start
Nach reboot startet nun Fhem automatisch.
9. Fhem weiter konfigurieren
10. z.B. den ersten Plot anzeigen. Dazu z.B in das Verzeichnis /fhem/www/log die eine Test-Datei temp.log mit Messwerten kopieren. In der /etc/src/fhem.cfg
diese Anpassungen machen:
define Test dummy
define FileLog_Test FileLog /usr/src/fhem/log/temp.log Test
attr FileLog_Test logtype temp4:Plot,text
attr FileLog_Test room Test
define wlTest weblink fileplot FileLog_Test:temp4:CURRENT
attr wlTest room Test
Und schon wird dieses schöne Diagramm angezeigt. Es ist noch nicht viel, da die Testdaten nur ein paar Zeilen sind:
Diese Website benutzt Cookies. Wenn du die Website weiter nutzt, gehen wir von deinem Einverständnis aus.OK