Nachdem ESP mit ESPEasy und FHEM über MQTT funktioniert, hat der User “dev0” aus dem FHEM-Forum ein neues Modul entwickelt.

Die Vorraussetzung für dieses Modul ist, das auf dem ESP eine Version > 128 installiert, da in dieser als Serverauswahl “FHEM HTTP” zur Verfügung steht.

Das Modul wird wie auf dem GitHub-Wiki beschrieben installiert. Über die FHEM WEBCMD-Oberfläche:

  • update add https://raw.githubusercontent.com/ddtlabs/ESPEasy/master/controls_ESPEasy.txt
  • update

JSON für Perl (cpan install JSON) muss auf dem FHEM Server installiert sein.

Das Device wird folgendermaßen angelegt:
define devESPFHEM ESPEasy bridge 8181
--> "define <name=frei wählbar> ESPEasy bridge <port=frei wählbar>"

Sobald nun ein ESP Daten sendet, wenn autocreate angeschaltet ist, werden die Werte in FHEM angezeigt.

Alles Weitere steht im Wiki und Forum.

ESPEasy Bridge

ESPEasy Bridge

ESPEasy WiFi Data

ESPEasy WiFi Data

Hier noch ein brauchbarer Link

Tankerkönig.de bietet eine schöne API mit JSON Ausgabe an.
Um diese in FHEM einzubinden braucht mal als Erstes einen eigenen API Key. Den bekommt man kostenlos hier. Mit diesem ist dann der Zugriff auf die Daten von Tankerkönig möglich.

Um an die ID der Tankstelle zu gelangen gibt es mehrere Möglichkeiten.
Ich beschreibe hier mal einen von diesen Wegen über die Webseite:

  1. Auf Tankerkönig.de die PLZ oder den Ort eingeben
  2. Die Tankstelle aussuchen und anklicken
  3. Meldung anklicken –> öffnet eine neue Seite
  4. Die URL kopieren und in Notepad einfügen oder direkt die ID rauskopieren
    http://www.tankerkoenig.de/MTS-K-Complaints/Complaint.php?station={"id"%3A"cfe5f775-a134-4d0f-934c-2e3c03a27675"2C"isOpen":true,"prices":{"diesel_price":"0.989","e5_price":"1.239","e10_price":"1.199"},"name":"METTMANN, DÜSSELDORFERSTR.168.","brand":"Shell","street":"DÜSSELDORFERSTR. 168","houseNumber":"","postCode":"40822","place":"Mettmann","location":{"lat":51.2542,"lng":6.95995}}

    tankerkoenig_url

    Tankerkönig URL ID

    5. ID abspeichern brauchen wir ja im FHEM Script

In FHEM legen wir nun ein neues Device an, hier der vollständige Code:

weiterlesen

Mal eben schnell einen SVG Plot erstellen für Einträge die in der DB liegen:

define plot.Name weblink dbplot dblog:Device

Das erzeugte Plot dann nur die Source auf dbLog umstellen, das Device auswählen und fertig ist das Ganze.

# Created by FHEM/98_SVG.pm, 2016-04-16 13:05:26
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 'Feuchte/Temp  HobbyRaum <TL>'
set ytics
set y2tics
set grid
set ylabel "Temperature"
set y2label "Feuchte"

#logdb device:Temperature
#logdb device:Humidity

plot "<IN>" using 1:2 axes x1y1 title 'Temp' ls l0 lw 1 with lines,\
     "<IN>" using 1:2 axes x1y2 title 'Feuchte' ls l2fill lw 0.5 with lines

 

So langsam wurde meine Konfigurationsdatei für FHEM etwas unübersichtlich und habe diese nun aufgeteilt in verschiedene cfg-Dateien.

Das geschieht am einfachsten so:

  1. Unter FHEM –> Edit files die fhem.cfg aufrufen
  2. Save as WasAuchImmerAbschnitt.cfg in meinem Fall zB.  fhem_spritpreise.cfg
  3. Edit files –> fhem_spritpreise.cfg aufrufen, sollte sich nun unter “Own modules and helper files” befinden
  4. Alles rauslöschen bis auf das was die Konfigdatei beinhalten soll, also bei mir Spritpreise-konfiguration und dann wieder abspeichern
  5. Edit files wieder die fhem.cfg aufrufen, den Abschnitt rauslöschen welchen die neue Konfigurationsdatei beinhaltet und dafür:
    # Spritpreismonitor
    include ./FHEM/fhem_spritpreise.cfg
    einfügen und abspeichern.
  6. Wichtig ist nun das man den rereadcfg Befehl benutzt, damit er die CFG-Dateien neulädt, wenn man diese geändert hat! (Danke Zag für den Hinweis!)
  7. Sollte alles ohne Fehler geklappt haben ansonsten einfach die schreibweise und Speicherort der cfg-Datei mal kontrollieren.

Wichtiger Hinweis:
Die include Datei wird von der fhem.pl aufgerufen und daher wird der Pfad mit ./FHEM/cfg-datei angegeben, damit man diese Dateien auch im FHEMweb bearbeiten kann.
Falls dies nicht gewünscht wird kann man die Dateien auch an einen anderen Ort legen.

 

Zu den Grundlagen des ESP8266 gehört folgendes Verständniss. Der Baustein ist ein OneChipWLAN-Kontroller mit GPIOs ursprunglich von der Firma Expressif. Mit diesem ist es möglich das IoT (Internet der Dinge) für Zuhause Realität werden zu lassen und das für kleines Geld.

Der Baustein wird einfach mit dem häuslichen WLAN verbunden (oder besser ein eigenes WLAN aufmachen nur für die Sensoren und dann routen zum eigentlichen). Dieser Baustein beherrscht WPA2 und somit relativ sichere Verbindung auf 802.11bgn Basis. Er kann feste oder DHCP-Adressen verwenden je nach Sketch der aufgespielt wird.

Es gibt verschiedene Versionen, die wohl bekannsten sind: weiterlesen

Ich habe ja schon berichtet das ich ESPEasy mit FHEM verbunden habe und nun gehe ich mal auf das Benutzen der GPIOs des ESP mit ESPEasy als Aktor für FHEM ein.
Beim ESPEasy wird dies direkt mit dem Aufruf der IP Adresse des ESPs und dem control cmd durchgeführt. Man ruft direkt die Webseite auf zB. mit http://espeasyip/control?cmd=GPIO,14,1 um den GPIO Port 14 auf 1 zu setzen.

Es gibt zwei Möglichkeiten diese in FHEM zu tun:

weiterlesen

Ich habe mich jetzt schon seit einiger Zeit mit dem ESP beschäftigt und wollte ihn neben den anderen Komponenten nun auch in FHEM einbinden.
Dabei habe ich nach einer Lösung gesucht die einfach anzubinden ist und das als “nicht” Softie auch nicht viel Programmieraufwand erfordert.

Dabei bin ich auf ESPEasy gestoßen und habe es nun mit FHEM verbunden.

Als Protokoll setze ich MQTT ein. Zuerst also den MQTT Broker auf den Server installieren und in FHEM einrichten:

weiterlesen

So mein erster Versuch mit FHEM und den 1-Wire DS18b20 Dingern.

Ich hab meinen RPi B ein neues Noobs Image verpasst und Raspbian in der aktuellen Version draufinstalliert. (Anleitungen gibt es ja genügend im Netz)
Die Standardinstallation vom FHEMWiki für Raspberry genommen und los gings.

Dadurch das FHEM die Sensoren automatisch erkennt (wenn eingestellt) ist das kein Hexenwerk mit der Erst-Einrichtung. Aber nun erstmal zu den Sensoren.

Dadruch das ich mehrere Sensoren bestellt habe, wird es ein Bussystem werden. Aktuell verwende ich direkt den GPIO4 als Busmaster vom RPi mit einem Pullupwiderstand von 4,7kOhm an 3,3V und 5V als Versorgungsspannung der 1-Wire Sensoren (also benutze ich 3 Adern zu den Sensoren). weiterlesen