Autor Thema: Netatmo in FHEM integrieren  (Gelesen 188493 mal)

FotoFieber

  • Gast
Netatmo in FHEM integrieren
« am: 26 August 2013, 09:15:06 »
Über das Wochenende habe ich ein bisschen mit Netatmo gespielt und in mein FHEM integriert.

1. netatmo api für Python runterladen und konfigurieren

https://github.com/philippelt/netatmo-api-python

2. script gatherNetatmo einspielen, anpassen und per cron alle Minuten starten

3. in fhem Dummy devices für Sensoren definieren


define NETATMO_INDOOR dummy
attr NETATMO_INDOOR room Wetter

define FileLog_NETATMO_INDOOR FileLog ./log/NETATMO_INDOOR-%Y.log NETATMO_INDOOR
attr FileLog_NETATMO_INDOOR logtype text
attr FileLog_NETATMO_INDOOR room Wetter


define NETATMO_OUTDOOR dummy
attr NETATMO_OUTDOOR room Wetter


define FileLog_NETATMO_OUTDOOR FileLog ./log/NETATMO_OUTDOOR-%Y.log NETATMO_OUTDOOR
attr FileLog_NETATMO_OUTDOOR logtype text
attr FileLog_NETATMO_OUTDOOR room Wetter


Es ist eher ein Hack, als eine saubere Lösung, aber es funktioniert
Viel Spass.....

Offline Borkk

  • Full Member
  • ***
  • Beiträge: 116
Antw:Netatmo in FHEM integrieren
« Antwort #1 am: 10 November 2013, 18:56:19 »
Hi,

Dein Script funktioniert prima, ich hab nun folgendes Device in meinem FHEM

dummy
Netatmo_indoor Co2: 783 Luftdruck: 1015.5 Luftfeuchte: 57 Pegel: 46 Temperatur: 21.600000000000001 Uhrzeit: 18:33 When: 1384104794

Ich würde nun gerne bei Erreichen von Messwerten (z.B. C02 >1000) eine Aktion auslösen. (z.B. eine Lampe anschalten). Ich bekomme das aber irgendwie nicht hin. Ich kann leider weder Perl noch sonst eine Programmiersprache. Ich habe es mit ein Notify versucht aber mir fehlt die zündende Idee wie ich aus dem state die einzelnen Werte rausziehen kann, evtl. mit einem userReading?

Bei den EventTyps taucht das Device wie folgt auf:
6 Netatmo_indoor Co2: .* Luftdruck: .* Luftfeuchte: .* Pegel: .* Temperatur: .* Uhrzeit: .*:.* When: .*

Bin für jeden Tipp dankbar.
« Letzte Änderung: 10 November 2013, 23:52:40 von Borkk »
----------
Raspi2#1: FHEM 5.8
Raspi2#2: ReverseProxy/CA
Raspi2#3: Homebridge & Alexa Bridge
HMUART; HUE2; Netatmo; Withings; Squeezbox; Pushover; Pioneer; LG; Harmony, FritzBox, Tado°, div. Homematic Akt- und Sensoren, uvm...

Offline Borkk

  • Full Member
  • ***
  • Beiträge: 116
Antw:Netatmo in FHEM integrieren
« Antwort #2 am: 10 November 2013, 23:52:00 »
Habe über Notify und $EVTPART hinbekommen :-)

FHEM ist echt super :-)
----------
Raspi2#1: FHEM 5.8
Raspi2#2: ReverseProxy/CA
Raspi2#3: Homebridge & Alexa Bridge
HMUART; HUE2; Netatmo; Withings; Squeezbox; Pushover; Pioneer; LG; Harmony, FritzBox, Tado°, div. Homematic Akt- und Sensoren, uvm...

Offline fh168

  • Sr. Member
  • ****
  • Beiträge: 758
    • Robins-Blog
Antw:Netatmo in FHEM integrieren
« Antwort #3 am: 13 November 2013, 07:09:57 »
Sieht schick aus.
Benötigt man nur den  "Netatmo NIM01 IP- Wetterstation Zusatz-Innensensor"  oder die komplette Wetterstation.
Werden die Signale über 868Mhz zum Fhem (über CUL) übertragen?

LG
/robin
Hue, Lacrosse, PCA301, MySensors, V 1.67 CUL 868 V3.4, Lacrosse-WLAN-Gateway, Tasmota RF-Bridge, ESA 2000 WZ, Blogbeiträge: http://bit.ly/16chI8u , http://bit.ly/12Q27Gw , http://bit.ly/14PhvXB  http://bit.ly/18sbgs5

Offline Borkk

  • Full Member
  • ***
  • Beiträge: 116
Antw:Netatmo in FHEM integrieren
« Antwort #4 am: 14 November 2013, 23:51:44 »
Du brauchst einmal das Standardpaket, bestehend aus 1x Innen- und 1x Aussenstation. Die Dinger werden ins WLAN integriert und reporten alle Werte in die Netatmo "Cloud". Das Script zieht die Werte dann über eine API dort raus und schreibst sie in FHEM.
----------
Raspi2#1: FHEM 5.8
Raspi2#2: ReverseProxy/CA
Raspi2#3: Homebridge & Alexa Bridge
HMUART; HUE2; Netatmo; Withings; Squeezbox; Pushover; Pioneer; LG; Harmony, FritzBox, Tado°, div. Homematic Akt- und Sensoren, uvm...

Offline fh168

  • Sr. Member
  • ****
  • Beiträge: 758
    • Robins-Blog
Antw:Netatmo in FHEM integrieren
« Antwort #5 am: 15 November 2013, 07:40:26 »
Hallo Borkk,

danke für die Info. Ist mir dann doch zu teuer. Wenn man schon einen Cul hat und einige Temperatursensoren und den Luftqualitäts-Sensor von Voltcraft, kommt doch etwas preiswerter dran. Die Auswertungen von Temperatur und Luftqualitäts-Sensor als Plot sieht unter Fhem mittlerweile auch schick aus.
Hue, Lacrosse, PCA301, MySensors, V 1.67 CUL 868 V3.4, Lacrosse-WLAN-Gateway, Tasmota RF-Bridge, ESA 2000 WZ, Blogbeiträge: http://bit.ly/16chI8u , http://bit.ly/12Q27Gw , http://bit.ly/14PhvXB  http://bit.ly/18sbgs5

Offline svenr

  • New Member
  • *
  • Beiträge: 31
Antw:Netatmo in FHEM integrieren
« Antwort #6 am: 15 November 2013, 17:46:36 »
Habe über Notify und $EVTPART hinbekommen :-)

Könntest Du mir zeigen, wie Du das genau hinbekommen hast?

Danke!
Sven

Offline Borkk

  • Full Member
  • ***
  • Beiträge: 116
Antw:Netatmo in FHEM integrieren
« Antwort #7 am: 16 November 2013, 22:04:29 »
Hi,

Ich gehe mal davon aus, du hast die Anleitung von FotoFieber umgesetzt und hast die Netatmo als Dummy Device eingebunden und du bekommst regelmäßig Wert aus dem Python script gesendet, das du als cronjob regelmässig aufrufst.

Um dann z.B. bei Erreichen von 1200 ppm CO2 Gehalt in der Luft eine Lampe einschalten zu lassen:

define Co2_Notify_1200 notify Netatmo_indoor { if ($EVTPART1 >= "1200") {fhem("set Lampe1 on")} }

Co2_Notify_1200 = Name des notifys
Netatmo_indoor = Name der Netatmo Dummy Device
$EVTPARTn = hier den n ten Wert eingeben, an dem der auszuwertende Wert (Co2) bei dir im Netatmo String steht (Hab ihn bei mir etwas umgebaut)
----------
Raspi2#1: FHEM 5.8
Raspi2#2: ReverseProxy/CA
Raspi2#3: Homebridge & Alexa Bridge
HMUART; HUE2; Netatmo; Withings; Squeezbox; Pushover; Pioneer; LG; Harmony, FritzBox, Tado°, div. Homematic Akt- und Sensoren, uvm...

Offline Lupla

  • New Member
  • *
  • Beiträge: 17
Antw:Netatmo in FHEM integrieren
« Antwort #8 am: 23 November 2013, 17:02:51 »
Hallo zusammen,

irgendetwas machts bei mir noch nicht so, wie es soll. Ich bekomme beim Ausführen von gatherNetatmo folgende Fehlermeldung:
Traceback (most recent call last):
  File "./gatherNetatmo", line 21, in <module>
    indoor = collections.OrderedDict(sorted(theData['Indoor'].items()))
TypeError: 'NoneType' object is not subscriptable

Hier bin ich jedoch völlig überfragt, was das Problem ist.

Vielleicht hat einer von Euch ja einen Hinweis für mich, wo ich das Problem angehen kann.

Gruß

Bastian
Gruß

Bastian

merlin2010

  • Gast
Antw:Netatmo in FHEM integrieren
« Antwort #9 am: 23 November 2013, 20:16:52 »
Ja, diese Fehlermeldung kam bei mir auch.

Du musst im gatherNetatmo Skript den Stationsnamen 'Nikita' mit dem Stationsnamen von Deiner netatmo Station ersetzen.

Per Cron starten heisst für Linux Dummies, dass via ssh Kommandozeile mit 'sudo nano /etc/crontab' die Cron-Job Tabelle mit zum Beispiel folgendem Eintrag ergänzt werden muss, damit die Station z.B. alle 10 Minuten ausgelesen wird:

*/10  * * * *   root    python  /usr/local/bin/gatherNetatmo.py
Wenn das Skript ansonsten nicht verändert wird, ist übrigens für das Notify $EVTPART3 zu verwenden, um den CO2-Wert auszulesen.

Hoffe, das hilft weiter und macht es für alle anderen einfacher, die Netatmo-Stationen einzubinden.


« Letzte Änderung: 23 November 2013, 20:33:15 von merlin2010 »

thomilla

  • Gast
Antw:Netatmo in FHEM integrieren
« Antwort #10 am: 24 November 2013, 14:26:04 »
Hi,

hat jemand von euch sich schon eine passende gplot-Datei geschrieben, um aus den Logfiles Kurven zu zeichnen?
Wenn ja, könntet ihr den Code eventuell hier einstellen?

Danke und Gruß,
Thomas

merlin2010

  • Gast
Antw:Netatmo in FHEM integrieren
« Antwort #11 am: 26 November 2013, 22:46:25 »
Habe mal was auf die Schnelle für Temperatur und Feuchtigkeit für drinnen und draussen geplottet.

Ist aber sicher noch ausbaufähig.

In die fhem.cfg wie folgt einbinden (Beispiel für OUTDOOR, INDOOR analog)

#Werte plotten
define SVG_FileLog_NETATMO_OUTDOOR SVG FileLog_NETATMO_OUTDOOR:netatmo_outdoor:CURRENT
attr SVG_FileLog_NETATMO_OUTDOOR room Wetter

netatmo_indoor.gplot
# Created by FHEM/98_SVG.pm, 2013-11-26 22:06:36
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 '<TL>'
set ytics
set y2tics
set grid ytics y2tics
set ylabel "Feuchtigkeit"
set y2label "Temperatur in Grad Celsius"

#FileLog 14:NETATMO_INDOOR.*::
#FileLog 8:NETATMO_INDOOR.*::

plot "<IN>" using 1:2 axes x1y2 title 'Temperatur' ls l0 lw 1 with lines,\
     "<IN>" using 1:2 axes x1y1 title 'Feuchtigkeit' ls l1 lw 1 with lines

netatmo_outdoor.gplot
# Created by FHEM/98_SVG.pm, 2013-11-26 22:19:22
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 '<TL>'
set ytics
set y2tics
set grid ytics y2tics
set ylabel "Feuchtigkeit"
set y2label "Temperatur in Grad Celsius"

#FileLog 8:NETATMO_OUTDOOR.*::
#FileLog 6:NETATMO_OUTDOOR.*::

plot "<IN>" using 1:2 axes x1y2 title 'Temperatur' ls l0 lw 1 with lines,\
     "<IN>" using 1:2 axes x1y1 title 'Feuchtigkeit' ls l1 lw 1 with lines

Hyco

  • Gast
Antw:Netatmo in FHEM integrieren
« Antwort #12 am: 25 Dezember 2013, 12:33:53 »
Ich bin leider noch ein FHEM Newbie. Bei mir läuft FHEM auf einem RasPi (wheezy) mit CUL und ich bin super zufrieden. Nun habe ich gestern die Netatmo geschenkt bekommen und will diese natürlich in FHEM integrieren. Ich kämpfe jedoch noch etwas mit Linux und GitHub. Wenn ich per wget die Datei https://github.com/philippelt/netatmo-api-python/blob/master/lnetatmo.py ins Linux hole, bekomme ich eine Kopie der GitHub-Seite. Wenn ich es mit git clone versuche gibts einen "HTTP-Fehler". Wenn ich die Datei in Linux mit nano erzeuge und den Inhalt der Inetatmo.py dort hinein kopiere, erhalte ich nach dem Starten immer einen SyntaxError: Non ASCII character in Line 17.
Wie kann ich am einfachsten die API ins Linux laden?
Vielen Dank für Eure Hilfe!

Schmitz

  • Gast
Antw:Netatmo in FHEM integrieren
« Antwort #13 am: 25 Dezember 2013, 14:43:12 »
Wo gibt es die Datei: gatherNetatmo
Kann mir die jemand ggf. zur Verfügung stellen?

Vielen Dank

und Frohe Weihnachten

merlin2010

  • Gast
Antw:Netatmo in FHEM integrieren
« Antwort #14 am: 25 Dezember 2013, 15:58:48 »
Hier stehen die beiden Dateien wget freundlicher zur Verfügung

http://wowan09.de/lnetatmo.py

http://wowan09.de/gatherNetatmo.py


 

decade-submarginal