Nachdem wir ja bereits den netatmo Windmesser und die netatmo Welcome in das Fibaro HomeCenter 2 integrieren konnten, darf der Regenmesser natürlich auch nicht fehlen. Wie es geht, könnt Ihr jetzt hier nachlesen.
Als Basis für unsere Szene dient uns das Skript des netatmo Windmesser. Das Skript kann nun die Werte beider Sensoren, also dem Windmesser, sowie auch des Regensensor per API auf den netatmo Servern abfragen und in Variablen speichern, sowie in einem Virtuellen Device darstellen. Solltet Ihr einen von den beiden Sensoren nicht besitzen: Kein Problem, das wird durch das Skript automatisch geprüft und die Werte werden dann nicht auf den netatmo Servern abgefragt.
Sofern Ihr noch keinen Regenmesser besitzt, könnt Ihr diesen übrigens für derzeit 62 € bei zum Beispiel bei Cyberport käuflich erwerben.
Neue Funktionen des netatmo Skriptes:
- Skript erkennt automatisch, welche zusätzlichen Sensoren (neben der Wetterstation + Outdoormodul) eingerichtet sind und fragt nur die eingerichteten Sensoren ab
- Für die Regenmenge werden 4 Werte abgefragt: Regenmenge stündlich, täglich, wöchentlich und monatlich
- Prüfung, ob alle benötigten Variablen korrekt eingerichtet sind
- Debug ist abschaltbar
- Bugfix: Das Skript stürzt nicht mehr ab, wenn die API seitens netatmo nicht zu erreichen ist, sondern gibt eine Fehlermeldung unabhängig von den Debug-Einstellungen aus
Beim erstmaligem Start wird es zu 98 % zu einer Fehlermeldung kommen. Dies liegt daran, dass die Variablen noch nicht eingerichtet sind. Ihr werdet durch das Skript informiert, welche Variablen noch über das Variablen-Panel eingerichtet werden müssen. Dies sind die im Bild gezeigten. Wenn Ihr die Variablen eingerichtet habt, dann läuft die Szene normal und ohne Änderungen weiter.
netatmo Skript:
Das einzige, was Ihr an dem Skript noch ändern müsst, sind eure Daten der Seite dev.netatmo.com. Solltet Ihr auch das Virtuelle Device (findet Ihr am Ende des Textes) nutzen wollen, so müsst Ihr zusätzlich noch die ID von dem virtuellen Device in der Zeile 15 auf eure ID anpassen.
In der Zeile 13 könnt Ihr als Option den Debug-Modus aktivieren oder deaktivieren (0 = deaktiviert; 1 = aktiviert).
Wenn Ihr den Debug deaktiviert, dann erscheinen nur folgende zwei Zeilen im Debug. Das Skript erneuert danach alle 5 min die Werte:
An der lokalen Variablen "refresh" solltet Ihr keine Änderungen vornehmen. Die Daten werden von der jeweiligen Station nur alle 5 min zu den netatmo Servern übertragen, weshalb eine kürzere Refresh-Zeit zwischen den Anfragen keinen Sinn machen würde.
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 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 |
--[[ %% properties %% autostart %% globals --]] -- DIESE DATEN ANPASSEN local client_id = 'CLIENT_ID' local client_secret = 'CLIENT_SECRET' local username = 'MAIL' local password = 'PASSWORD' local refresh = 300 local debug = 1 local vd_ID = 178 -- AB HIER NICHTS MEHR ANPASSEN local token = '' local request_body = '' local rains = {hour = -1000, day = -1000, week = -1000, month = -1000} local sourceTrigger = fibaro:getSourceTrigger() Debug = function ( color, message ) fibaro:debug(string.format('<%s style="color:%s;">%s', "span", color, message, "span")) end DebugError = function ( color, message ) fibaro:debug(string.format('<%s style="color:%s;">%s', "span", color, message, "span")) end Debug( 'orange', 'netatmo Zusatzmodul Integration v.1.2 gestartet.' ) Debug( 'white', 'Daten werden alle 5 min aktualisiert. Bei debug = 0 wird nichts debuggt' ) function oAuth(nextFunction) local request_body = 'grant_type=password&client_id=' .. client_id .. '&client_secret=' .. client_secret .. '&username=' .. username .. '&password=' .. password .. '&scope=read_station' getResponseData('https://api.netatmo.net/oauth2/token', request_body, function(data) if (data.access_token ~= nil) then token = data.access_token if (debug == 1) then Debug( 'green', 'oAuth 2.0 durchgeführt.' ) end getDevices() fibaro:call(vd_ID, 'pressButton', '9') else DebugError( 'red', 'oAuth 2.0 konnte nicht durchgeführt werden! Bitte die Anmeldedaten überprüfen') end end ) setTimeout(oAuth, refresh*1000); end function getResponseData(url, body, func) local http = net.HTTPClient() http:request(url, { options = { method = 'POST', headers = { ['Content-Type'] = 'application/x-www-form-urlencoded;charset=UTF-8' }, data = body }, success = function(response) func(json.decode(response.data)) end }) end function getDevices() getResponseData('https://api.netatmo.net/api/devicelist','access_token='..token, function(data) if (data.body ~= nil) then if (debug == 1) then Debug( 'green', 'netatmo Sensoren werden gesucht...' ); end for _, v in pairs(data.body.modules) do --fibaro:debug('Tabelle auslesen') if (v.data_type[1] == 'Rain') then rain_id = v._id if (debug == 1) then Debug( 'green', 'Regensensor ' ..rain_id.. ' erkannt.' ); end if rain_id ~= nil then getSumRain(60 * 60, 'hour') getSumRain(60 * 60 * 24, 'day') getSumRain(60 * 60 * 24 * 7, 'week') getSumRain(60 * 60 * 24 * 30, 'month') end elseif (v.data_type[1] == 'Wind') then wind_id = v._id if (debug == 1) then Debug( 'green', 'Windmesser ' ..rain_id.. ' erkannt.' ); end if wind_id ~= nil then getmeasureWind() end end int_id = data.body.devices[1]._id end else DebugError( 'red', 'device-list konnte nicht abgefragt werden! Bitte nächsten Durchlauf abwarten') end end ) end function getmeasureWind() request_body_wind = 'access_token='..token..'&device_id='..int_id..'&module_id='..wind_id..'&scale=max&type=WindStrength,WindAngle,GustStrength,GustAngle&date_end=last' getResponseData('https://api.netatmo.net/api/getmeasure', request_body_wind, function(getData) if (getData.body ~= nil) then if (debug == 1) then Debug( 'green', 'Windmesser wird ausgelesen...' ); end WindStrength = getData.body[1].value[1][1] WindAngle = getData.body[1].value[1][2] GustStrength = getData.body[1].value[1][3] GustAngle= getData.body[1].value[1][4] if (debug == 1) then Debug( 'green', 'Windgeschwindigkeit: ' .. WindStrength .. ' km/h' ); end if fibaro:getGlobalValue('windstaerke') ~= nil then fibaro:setGlobal('windstaerke', WindStrength) else DebugError( 'red', 'Varible windstaerke nicht gefunden. Bitte anlegen') end if fibaro:getGlobalValue('windrichtung') ~= nil then fibaro:setGlobal('windrichtung', WindAngle) else DebugError( 'red', 'Varible windrichtung nicht gefunden. Bitte anlegen') end if fibaro:getGlobalValue('boenstaerke') ~= nil then fibaro:setGlobal('boenstaerke', GustStrength) else DebugError( 'red', 'Varible boenstaerke nicht gefunden. Bitte anlegen') end if fibaro:getGlobalValue('boenrichtung') ~= nil then fibaro:setGlobal('boenrichtung', GustAngle) else DebugError( 'red', 'Varible boenrichtung nicht gefunden. Bitte anlegen') end if (debug == 1) then Debug( 'green', 'Windmesser auslesen beendet.' ); end else DebugError( 'red', 'API-Call konnte nicht durchgeführt werden! API nicht erreichbar! Bitte nächsten Durchlauf abwarten.') end end ) end function getSumRain(dauer, variable) local now = os.time(); getResponseData('https://api.netatmo.net/api/getmeasure','access_token='..token..'&device_id='..int_id..'&module_id='..rain_id..'&scale=1hour&type=sum_rain&real_time=true&date_begin='..os.date('!%c', (now - dauer)), function(data) local sum_rain = 0 for k, v in pairs(data.body) do for l, w in pairs(v.value) do sum_rain = sum_rain + w[1] end end if fibaro:getGlobalValue('rain_' ..variable) ~= nil then fibaro:setGlobal('rain_' ..variable, sum_rain) else DebugError( 'red', 'Varible rain_' ..variable.. ' nicht gefunden. Bitte anlegen') end if (debug == 1) then fibaro:debug('Regenmenge: ' ..sum_rain.. ' mm2 (' .. variable .. ')') end end ) end if (sourceTrigger['type'] == 'autostart') then oAuth(); end |
Und natürlich, wie versprochen, gibt es das passende Virtuell Device dazu. Das könnt Ihr euch hier (klickt einfach auf das Bild) herunterladen. Dies könnt Ihr dann einfach über "Add/Remove device" importieren. Achtet dabei bitte drauf, dass die Datei die Endung .vfib hat.
Solltet Ihr noch weitere Ideen haben, was man mit der Integration umsetzen kann, dann würden wir uns über eure Kommentare freuen. Ihr könnt euch für die Szene und das Virtuelle Device noch die zwei Icons herunterladen. :)
Ihr macht so viele tolle Sachen mit dem Fibaro HC2 das ich schon ganz heiß werde auch eines einzusetzen. Kann ich dort ich meine EnOcean Schalter und Eltako EnOcean Aktoren rein bekommen und auch Philips Hue Leichten und Schalter?
Hi,
zu den EnOcean's kann ich dir leider nichts sagen :( Die Schalter sollten auf eigentlich funktionieren. Zu den Hue's kann ich dir was nächste Woche sagen, da kommen meine nämlich. ;) Gibt aber auf jeden Fall ein Plugin von Fibaro für die Hue's.
Gruß
Mit den Regenwerten in einer Variable lässt sich im Sommer sicherlich die Bewässerung optimieren - wenn innerhalb von 24 Stunden eine bestimmte Regenmenge nicht überschritten wurde, geht die Bewässerung an oder eben nicht. Cool!
Schade, dass aufgrund des Übertragungsdelays keine unmittelbare/just-in-time Regeninformation möglich ist.
Hi,
ja... Das ist schade. Sonst könnte man automatisiert die Markise einfahren. Leider wird das seitens netatmo nicht unterstützt.
Gruß
Hallo boomx,
wenn ich die Szene starte erhalte ich keine Meldung, ob die Authentifizierung funktioniert hat oder nicht. Debug steht auf 1.
Es kommen lediglich folgende 2 Meldungen und dann nichts mehr:
DEBUG] 13:23:25: netatmo Zusatzmodul Integration v.1.2 gestartet.
DEBUG] 13:23:25: Daten werden alle 5 min aktualisiert. Bei debug = 0 wird nichts debuggt
Wo könnte der Fehler liegen? Danke!
Grüsse
awlieser
Hi,
was meinst du mit Szene starten? Bist du dir sicher, dass du den Debug auf 1 hast. Bei mir funktioniert es ohne Probleme:
[DEBUG] 20:17:17: netatmo Zusatzmodul Integration v.1.2 gestartet.
[DEBUG] 20:17:17: Daten werden alle 5 min aktualisiert. Bei debug = 0 wird nichts debuggt
[DEBUG] 20:17:18: oAuth 2.0 durchgeführt.
[DEBUG] 20:17:18: netatmo Sensoren werden gesucht...
[DEBUG] 20:17:18: Regensensor 05:00:00:01:15:3a erkannt.
[DEBUG] 20:17:19: Regenmenge: 0 mm2 (hour)
[DEBUG] 20:17:19: Regenmenge: 0 mm2 (day)
[DEBUG] 20:17:20: Regenmenge: 7.575 mm2 (week)
[DEBUG] 20:17:20: Regenmenge: 35.451 mm2 (month)
Gruß
Hallo boomx,
na, ich klicke auf Start ... Dann kommen die ersten zwei Zeilen und dann nichts mehr. Debug ist auf 1, sonst kämen ja die ersten Meldungen auch nicht.
Grüsse
awlieser
Hi,
die Szene ist als Autostart-Szene ausgelegt, dass heißt du musst nicht auf Start drücken. Wenn du auf Start klickst, dann wird die Funktion nicht aufgerufen. Einfach abspeichern, dann sollte die Szene starten.
Hi boomx,
danke - daran lag es :-)
Grüsse
awlieser
Regensensor funktioniert einwandfrei, als ich aber gestern den Windmesser installiert habe, sehe ich Daten im Netatmo-Portal aber im Virtuellen Device nur 0 Werte beim Wind.
Woran kann das liegen ?
Grüße
Gerhard
Hi,
kann ich aus der Ferne natürlich nicht 100%ig sagen.
Poste doch mal den Debug der Szene (Am Besten die Szene mal neustarten)
Gruß
Hi,
funktioniert nach einem Neustart der Box - hat sich wohl einiges "verdreht". Hatte auch kein Update der Uhrzeit mehr.
Besten Dank
Liebe Grüße
Gerhard
Hallo,
bei mir bleibt das Script leider mit folgender Meldung hängen:
[DEBUG] 17:03:31: oAuth 2.0 durchgeführt.
[DEBUG] 17:03:31: netatmo Sensoren werden gesucht...
[DEBUG] 17:03:31: Regensensor 05:00:00:01:17:4e erkannt.
[ERROR] 17:03:31: LUA error: /opt/fibaro/scenes/37.lua:155: attempt to concatenate global 'int_id' (a nil value)
Danke und Gruß
Hi,
hast du nur einen Regensensor? Oder auch einen Windsensor?
Hab das Skript grad mit einem Regensensor getestet und läuft bei mir ohne Probleme (HC2 v4.062)
Gruß
Hi,
ich habe Regen- und Windsensor im Einsatz. Mittlerweile glaube ich, dass das Problem nicht an Deinem Skript liegt. Die Daten, die bei mir über das Netatmo Plugin importiert und in der grafischen Oberfläche des HC2 (4.056) angezeigt werden sind neuerdings entweder veraltet (Außentemperatur und Luftfeuchtigkeit) oder fehlen ganz (z.B. Indoor Noise, CO2 und Rain Gauge). Habe das Plugin vorhin neu installiert, aber keinen Erfolg erzielt. In der Netatmo-Oberfläche sind die Daten jedoch korrekt und vorhanden. Evtl. arbeitet das API nicht korrekt? Vielleicht hängt Dein Skript ja deswegen bei mir...
Gruß
Hallo Ernst, hast Du das Problem mittlerweile lösen können?
Ich bekomme die gleiche Fehlermeldung
Gruß
Ich habe das selbe Problem, hat einer von Euch ne Lösung gefunden??
Hi,
sind die Geräte richtig in der API von netatmo angemeldet? Ist nur eine Wetterstation registriert? Bei mir funktioniert es ohne Probleme.
Gruß
Hallo NatP,
nein leider nicht. Das Skript läuft einfach nicht. Allerdings funktioniert bei mir das netatmo Plugin auch nicht mehr (s.o.). Ich erhalte zwar die Meldung "your account is connected", aber es werden keine Daten (Temperatur, etc.) mehr übertragen, die Werte bleiben alle auf "0". Ich vermute einen Bug des HC2, da ich die netatmo permanent und ohne Probleme über ein altes Pad und Imperihome "auslesen" kann. Ganz am Anfang hatte es mal eine Zeit lang mit dem HC2 funkioniert: ich ließ auf der Westseite meines Hauses die Rolläden schließen, wenn der netatmo Regensensor Niederschlag meldete. Den Zeitpunkt, ab wann es dann nicht mehr funktionierte, habe ich nicht richtig mitbekommen, ich vermute aber ein Firmware-Upgrade des HC2. Ganz erstaunlich ist meines Erachtens, dass ich seit dem auch Probleme mit der netatmo Welcome habe. Ich lese den Anwesenheitsstatus der Welcome mit dem HC2 aus (siehe Artikel von Daniel vom 11.11.2015 auf siio.de), muss aber jeden Tag das HC2 neu starten, da sich die Schnittstelle regelmäßig "aufhängt" und der Anwesenheitsstatus nicht mehr aktualisiert wird. Ich denke daher, dass es an Fibaro liegt und habe das Problem auch dort gemeldet. Man versprach, es an die Developer weiterzuleiten.
Gruß
Hi,
mit der Firmware 4.070 habe ich keine Probleme mit den Daten von netatmo. Das Skript für die Welcome-Kamera habe ich im Moment nicht laufen. (Werde es mal wieder testen...)
Läuft bei dir beides über die gleiche ClientID? Kann es vielleicht sein, dass die für neue Anfragen aufgrund zu vieler Anfragen gesperrt wird? Wäre eine Erklärung, warum es nicht mehr läuft.
Gruß
Hi,
ja Du lagst goldrichtig: ich habe nun mehrere Client-IDs angelegt und seit dem läuft das netatmo-Plugin wieder.
Das Script bricht jedoch nach wie vor ab:
[DEBUG] 18:18:42: netatmo Zusatzmodul Integration v.1.2 gestartet.
[DEBUG] 18:18:42: Daten werden alle 5 min aktualisiert. Bei debug = 0 wird nichts debuggt
[DEBUG] 18:18:43: oAuth 2.0 durchgeführt.
[DEBUG] 18:18:44: netatmo Sensoren werden gesucht...
[DEBUG] 18:18:44: Regensensor 05:00:00:01:17:4e erkannt.
[DEBUG] 18:18:44: [1;31m2016-04-13 18:18:44.613104 [ fatal] LUA error: /opt/fibaro/scenes/148.lua:155: attempt to concatenate global 'int_id' (a nil value)
Gruß
Hi,
werde das Skript nochmal testen und dann berichten.
Gruß
Hi,
hast du zufällig mehrere Wetterstationen im Einsatz? Die Variable int_id bezieht sich auf die Wetterstation, zu dem der Regen/Windsensor zugeordnet ist. Möglicherweise kommt es hier zu einem Problem
Gruß
Hi,
nein, nur eine Wetterstation.
Danke und Gruß
Nabend schön,
gab es eigentlich einen besonderen Grund, warum der API-Abruf über die LUA-Szene durchgeführt wird und nicht gleich/unmittelbar im VD?
Danke
VG Hoggle
Hi,
ja. In VD wird kein https unterstützt, deswegen mit der Szene. ;)
Gruß
Danke.
Über die VDs wird FHTTP genutzt.
Da muss ich wohl mal die Grundlagen googelt.....
VG Hoggle
Erhälst Du die Daten von der Netatmo Seite im json- oder als xml-Format?
Ist json:
https://dev.netatmo.com/doc/methods/getstationsdata
Danke!
Hallo,
ich habe folgendes Problem:
Das debugging in der Scene sagt mir ständig das folgende Variablen nicht gefunden werden können.
So wie ich das verstehe kann er die DAten nicht an das virtuelle Gerät übertragen.
aber die ID ist richtig
local vd_ID = 197
URL vom vd =
URL/IP-ADRESSE//fibaro/de/devices/virtual_edit.html?id=197#bookmark-advanced
Oder verstehe ich da etwas ganz falsch ?
Über hilfe würde ich mich sehr freuen
[DEBUG] 13:21:16: netatmo Zusatzmodul Integration v.1.2 gestartet.
[DEBUG] 13:21:16: Daten werden alle 5 min aktualisiert. Bei debug = 0 wird nichts debuggt
[DEBUG] 13:21:16: oAuth 2.0 durchgeführt.
[DEBUG] 13:21:17: netatmo Sensoren werden gesucht...
[DEBUG] 13:21:17: Regensensor 05:00:00:01:d4:ae erkannt.
[DEBUG] 13:21:17: Windmesser 05:00:00:01:d4:ae erkannt.
[DEBUG] 13:21:19: Varible rain_hour nicht gefunden. Bitte anlegen
[DEBUG] 13:21:19: Regenmenge: 0 mm2 (hour)
[DEBUG] 13:21:19: Varible rain_day nicht gefunden. Bitte anlegen
[DEBUG] 13:21:19: Regenmenge: 0 mm2 (day)
[DEBUG] 13:21:19: Varible rain_week nicht gefunden. Bitte anlegen
[DEBUG] 13:21:19: Regenmenge: 81.81 mm2 (week)
[DEBUG] 13:21:19: Windmesser wird ausgelesen...
[DEBUG] 13:21:19: Windgeschwindigkeit: 2 km/h
[DEBUG] 13:21:19: Varible windstaerke nicht gefunden. Bitte anlegen
[DEBUG] 13:21:19: Varible windrichtung nicht gefunden. Bitte anlegen
[DEBUG] 13:21:19: Varible boenstaerke nicht gefunden. Bitte anlegen
[DEBUG] 13:21:19: Varible boenrichtung nicht gefunden. Bitte anlegen
[DEBUG] 13:21:19: Windmesser auslesen beendet.
[DEBUG] 13:21:19: Varible rain_month nicht gefunden. Bitte anlegen
[DEBUG] 13:21:19: Regenmenge: 107.262 mm2 (month)
[DEBUG] 13:26:16: oAuth 2.0 durchgeführt.
[DEBUG] 13:26:17: netatmo Sensoren werden gesucht...
[DEBUG] 13:26:17: Regensensor 05:00:00:01:d4:ae erkannt.
[DEBUG] 13:26:17: Windmesser 05:00:00:01:d4:ae erkannt.
[DEBUG] 13:26:19: Varible rain_day nicht gefunden. Bitte anlegen
[DEBUG] 13:26:19: Regenmenge: 0 mm2 (day)
[DEBUG] 13:26:19: Varible rain_hour nicht gefunden. Bitte anlegen
[DEBUG] 13:26:19: Regenmenge: 0 mm2 (hour)
[DEBUG] 13:26:19: Windmesser wird ausgelesen...
[DEBUG] 13:26:19: Windgeschwindigkeit: 2 km/h
[DEBUG] 13:26:19: Varible windstaerke nicht gefunden. Bitte anlegen
[DEBUG] 13:26:19: Varible windrichtung nicht gefunden. Bitte anlegen
[DEBUG] 13:26:19: Varible boenstaerke nicht gefunden. Bitte anlegen
[DEBUG] 13:26:19: Varible boenrichtung nicht gefunden. Bitte anlegen
[DEBUG] 13:26:19: Windmesser auslesen beendet.
[DEBUG] 13:26:19: Varible rain_week nicht gefunden. Bitte anlegen
[DEBUG] 13:26:19: Regenmenge: 81.81 mm2 (week)
[DEBUG] 13:26:19: Varible rain_month nicht gefunden. Bitte anlegen
[DEBUG] 13:26:19: Regenmenge: 107.262 mm2 (month)
[DEBUG] 13:31:16: oAuth 2.0 durchgeführt.
[DEBUG] 13:31:17: netatmo Sensoren werden gesucht...
[DEBUG] 13:31:17: Regensensor 05:00:00:01:d4:ae erkannt.
[DEBUG] 13:31:17: Windmesser 05:00:00:01:d4:ae erkannt.
[DEBUG] 13:31:19: Windmesser wird ausgelesen...
[DEBUG] 13:31:19: Windgeschwindigkeit: 2 km/h
[DEBUG] 13:31:19: Varible windstaerke nicht gefunden. Bitte anlegen
[DEBUG] 13:31:19: Varible windrichtung nicht gefunden. Bitte anlegen
[DEBUG] 13:31:19: Varible boenstaerke nicht gefunden. Bitte anlegen
[DEBUG] 13:31:19: Varible boenrichtung nicht gefunden. Bitte anlegen
[DEBUG] 13:31:19: Windmesser auslesen beendet.
[DEBUG] 13:31:19: Varible rain_hour nicht gefunden. Bitte anlegen
[DEBUG] 13:31:19: Regenmenge: 0 mm2 (hour)
[DEBUG] 13:31:19: Varible rain_day nicht gefunden. Bitte anlegen
[DEBUG] 13:31:19: Regenmenge: 0 mm2 (day)
[DEBUG] 13:31:19: Varible rain_week nicht gefunden. Bitte anlegen
[DEBUG] 13:31:19: Regenmenge: 81.81 mm2 (week)
[DEBUG] 13:31:19: Varible rain_month nicht gefunden. Bitte anlegen
[DEBUG] 13:31:19: Regenmenge: 107.262 mm2 (month)
Du musst im Fibaro Home Center auf: Steuerung > Variablen Steuerung gehen und dort die Variablen anlegen, welche er dir im Debug mit nicht angelegt meldet.
In deinem Fall musst du eine neue Variable erstellen und diese benennen mit: rain_hour , dann eine weitere anlegen und diese benennen mit: rain_day , dann rain_week usw.
Das Script wird die gemessenen Werte dann dort in die Variable schreiben um Sie zu speichern - erst dann kann das VD die Werte von dort auslesen.
Ein Regenmesser war defekt und ich habe ihn nun gegen einen neuen getauscht. Seit dem läuft die Szene bei mir auch nicht mehr. Bekomme jetzt folgende Fehlermeldung:
[DEBUG] 16:46:01: netatmo Zusatzmodul Integration v.1.2 gestartet.
[DEBUG] 16:46:01: Daten werden alle 5 min aktualisiert. Bei debug = 0 wird nichts debuggt
[DEBUG] 16:46:01: oAuth 2.0 durchgeführt.
[DEBUG] 16:46:02: netatmo Sensoren werden gesucht...
[DEBUG] 16:46:02: [1;31m2016-06-18 16:46:02.283987 [ fatal] LUA error: /opt/fibaro/scenes/448.lua:93: attempt to concatenate global 'rain_id' (a nil value)
Ich habe schon ein neues Netatmo Plugin und eine neue App erstellt.
Kann sich jemand erklären, woran es liegt?
Gruß
Hübi
Hmmm...
Dann findet er die Main-Station schon nicht mehr. Ist der Regensensor richtig zugeordnet?
Gruß
Was meinst du mit zugeordnet? Das hier: com.fibaro.multilevelSensor ?
Ich habe jetzt den noch einmal alles von Netatmo komplett von dem HC2 deinstalliert. Zusätzlich habe ich das Modul Regemesser noch mal von Netatmo Basis entfernt und wieder neu hinzugefügt. Dann nochmal das Plugin installiert und die Szenen neu erstellt. Die Fehlermeldung bleibt die gleiche.
Die Windmesser-Szene läuft übrigens tadellos, nur der Regenmesser zickt rum.
Viele Grüße
Hübi
Jetzt Steig ich nicht mehr durch. Die Szene läuft doch zusammen mit dem Wind und Regenmesser... Wieso brauchst du 2 Szenen?
Gruß
Ich hatte vorher den Windmesser hiermit integriert:
https://www.siio.de/heizenenergiesparen/netatmo-windmesser-ins-fibaro-homecenter-2-integrieren-so-gehts/
Nehme alles zurück. Habe mal die Ausstreichung vor dem Debug entfernt. Die Windmesser Szene läuft auch nicht:
[DEBUG] 21:00:57: netatmo-Windsensor Integration v.1.0 gestartet.
[DEBUG] 21:00:58: netatmo-oAuth durchgeführt...
[DEBUG] 21:00:59: Windsensor wird gesucht...
[DEBUG] 21:00:59: Aussensensor 02:00:00:17:cb:62 erkannt
[DEBUG] 21:00:59: Windsensor 06:00:00:00:5a:84 erkannt!
[DEBUG] 21:00:59: Regensensor 05:00:00:02:87:ce erkannt
[DEBUG] 21:00:59: [1;31m2016-06-20 21:00:59.406920 [ fatal] LUA error: /opt/fibaro/scenes/446.lua:59: attempt to call global 'calcBat' (a nil value)
Hi,
das scheint ein Fehler in der API zu sein. Der Wert der Batterie wird nicht zurückgeliefert. Hmm... Muss ich mal testen.
Gruß
Bei mir läuft die Szene ohne Probleme. Hast du das Skript aus diesem Artikel genommen? Da find ich kein calcBat.
Gruß
Hallo,
freudige Nachricht, die Szene läuft. Ich kann mir es nur so erklären, dass nach dem Entfernen und Neueinbindens des Regensensors für einige Zeit keine Werte durch die API geliefert werden.
22:13:27: netatmo Zusatzmodul Integration v.1.2 gestartet.
22:13:27: Daten werden alle 5 min aktualisiert. Bei debug = 0 wird nichts debuggt
22:13:27: oAuth 2.0 durchgeführt.
22:13:28: netatmo Sensoren werden gesucht...
22:13:28: Windmesser 06:00:00:00:5a:84 erkannt.
22:13:28: Regensensor 05:00:00:02:87:ce erkannt.
22:13:30: Regenmenge: 4.343 mm2 (day)
22:13:30: Regenmenge: 4.343 mm2 (week)
22:13:30: Regenmenge: 2.02 mm2 (hour)
22:13:30: Regenmenge: 4.343 mm2 (month)
22:13:30: Windmesser wird ausgelesen...
22:13:30: Windgeschwindigkeit: 3 km/h
22:13:30: Windmesser auslesen beendet.
Danke für dein Engagement. :)
Gruß Hübi
Top, danke für dein Feedback :)
Habe immer wieder den Fehler unter 4.090
[DEBUG] 15:41:17: netatmo Zusatzmodul Integration v.1.2 gestartet.
[DEBUG] 15:41:17: Daten werden alle 5 min aktualisiert. Bei debug = 0 wird nichts debuggt
[DEBUG] 15:41:18: oAuth 2.0 durchgeführt.
[DEBUG] 15:41:18: netatmo Sensoren werden gesucht...
[DEBUG] 15:41:18: [1;31m2016-07-16 15:41:18.964166 [ fatal] LUA error: /opt/fibaro/scenes/114.lua:90: attempt to concatenate global 'rain_id' (a nil value)
Hi,
das Skript findet zu den gemachten Angaben keinen Regensensor in der netatmo-API, wodurch dann diese Fehlermeldung debuggt wird.
Gruß
Hallo,
ich weiß, dieser Artikel ist schon etwas älter, jedoch sehr funktional für mich. Ich habe das Problem, dass beim Regensensor keine Werte ausgelesen werden. schon beim Debug endet die Ausgabe mit "Windmesser auslesen beendet."
Wo kann der Fehler liegen?
LG