Community

Wetterstation (Wunderground) über Node-RED auslesen

Hallo, ich habe mit auch den Wurfen und einen Stick fuer meinen Pi zugelegt. Darauf laeuft noch FHEM. Das meiste habe ich schon auf homee umgezogen. Die Wetterstation und das auslesen des Stromzaehlers laeuft noch uber Fhem. Node Red ist installiert und die Enocean Node verfuegbar.
Wie bekomme ich die Daten aus Fhem in NodeRed bzw von der Wetterstation (Wunderground) eingebunden?

entweder mqtt oder du bindest deine enocean geräte direkt in node red ein.
ich hab mich von fhem verabschiedet :slight_smile:

1 Like

Meine Wetterstation habe ich auch bei Wunderground registriert. Über die API hole ich mir dann die Daten nach Node Red und visualisiere diese dann über mein Dashboard bzw. sende über die Enocean-Simulation die Daten an den Homee. Ich könnte Dir heute Abend meinen Flow dazu schicken.

1 Like

danke. das waere super. Habe nun auf einer synology das iobroker image mit node red installiert und dort auch die enocean node drauf. Jetzt muss nur noch der Enocean USB stick laufen. Dann kann ich alle non homee geraete, welche aber in iobroker sind (sonos, ESP, synology, Wunderground etc) als Enocean geraete simulieren und in Homee einfuegen. so der plan.

Hab ich nicht hinbekommen… drücke die Daumen.

also stick habe ich und muss ihn nur noch in der synology anstecken

So einfach ist das leider nicht… Stick arbeitet dann vielleicht mit der DS, aber noch lange nicht in den Docker Containern… leider

Klappt… denke ich. Zumindest ist usb0 Verfügbar und das habe ich auch im dockerimage hinzugefügt. Nodered habe ich nun alle Werte von iobroker für Staubsauger, Wetterstation, sonos, stromzaehler und auch die enocean nodes. Ob es wirklich klappt werde ich wohl später merken. Wie muss ich denn nun was in node Red einstellen, damit ich ein enocean Gerät in homee anlernen und dann dort auch die Werte habe?

Input node und da usb auswählen. Das mit debug verknüpfen: wenn du dann was empfängst ist gut (sofern du schon Sensoren hast)

Hier ist mein Flow für Wunderground:

[{"id":"38175747.f26ec8","type":"http request","z":"465fa3e6.cece8c","name":"Wunderground","method":"GET","ret":"txt","paytoqs":false,"url":"https://api.weather.com/v2/pws/observations/current?stationId=...&format=json&units=m&apiKey=...","tls":"","proxy":"","authType":"basic","x":120,"y":280,"wires":[["101e0b56.54ab75"]]},{"id":"516eadff.3b9944","type":"inject","z":"465fa3e6.cece8c","name":"Start Wetterdaten","topic":"","payload":"","payloadType":"date","repeat":"60","crontab":"","once":true,"onceDelay":"","x":130,"y":240,"wires":[["38175747.f26ec8"]]},{"id":"ebc29f05.8adf8","type":"json","z":"465fa3e6.cece8c","name":"Konvertieren zu Objekt","property":"payload","action":"","pretty":false,"x":140,"y":360,"wires":[["438ce20a.af884c","def647c.135e7b8","bf0eb391.5d079","45c43eef.5b506","ba1158da.0d5dd8","6c815277.9c00dc","e9107cbc.4eb","858628de.6bc068","28c08efc.aa7ff2","a3266d89.b12d3"]]},{"id":"101e0b56.54ab75","type":"delay","z":"465fa3e6.cece8c","name":"","pauseType":"delay","timeout":"3","timeoutUnits":"seconds","rate":"1","nbRateUnits":"1","rateUnits":"second","randomFirst":"1","randomLast":"5","randomUnits":"seconds","drop":false,"x":120,"y":320,"wires":[["ebc29f05.8adf8"]]},{"id":"3486739f.80adcc","type":"ui_gauge","z":"465fa3e6.cece8c","name":"","group":"b448b2a.8f7ed5","order":1,"width":8,"height":5,"gtype":"gage","title":"Sonnenstrahlung","label":"W/m²","format":"{{value}}","min":0,"max":"1000","colors":["#00b500","#e6e600","#ca3838"],"seg1":"","seg2":"","x":690,"y":100,"wires":[]},{"id":"73f338af.62b108","type":"ui_gauge","z":"465fa3e6.cece8c","name":"","group":"78f70bd1.526c74","order":2,"width":8,"height":5,"gtype":"gage","title":"Regenmenge total","label":"","format":"{{value}} mm","min":0,"max":"100","colors":["#006bb5","#0045b5","#000fb5"],"seg1":"","seg2":"","x":690,"y":500,"wires":[]},{"id":"438ce20a.af884c","type":"function","z":"465fa3e6.cece8c","name":"Regenmenge total","func":"msg.payload=msg.payload.observations[0].metric.precipTotal;\nreturn msg;","outputs":1,"noerr":0,"x":450,"y":500,"wires":[["73f338af.62b108"]]},{"id":"def647c.135e7b8","type":"function","z":"465fa3e6.cece8c","name":"Windrichtung","func":"msg.payload=msg.payload.observations[0].winddir;\nreturn msg;","outputs":1,"noerr":0,"x":430,"y":300,"wires":[["90a671bd.fafb8"]]},{"id":"90a671bd.fafb8","type":"ui_gauge","z":"465fa3e6.cece8c","name":"","group":"9bd67957.70dfa8","order":1,"width":8,"height":5,"gtype":"compass","title":"Windrichtung","label":"","format":"{{value}} °","min":0,"max":"360","colors":["#00b500","#e6e600","#ca3838"],"seg1":"","seg2":"","x":710,"y":300,"wires":[]},{"id":"e726f2f4.f82c7","type":"ui_chart","z":"465fa3e6.cece8c","name":"","group":"2361e78c.9b49c8","order":3,"width":"35","height":"6","label":"Sonnenstrahlung","chartType":"line","legend":"false","xformat":"HH:mm","interpolate":"linear","nodata":"","dot":false,"ymin":"0","ymax":"1000","removeOlder":"16","removeOlderPoints":"","removeOlderUnit":"3600","cutout":0,"useOneColor":false,"colors":["#1f77b4","#aec7e8","#ff7f0e","#2ca02c","#98df8a","#d62728","#ff9896","#9467bd","#c5b0d5"],"useOldStyle":false,"outputs":1,"x":690,"y":140,"wires":[[]]},{"id":"bf0eb391.5d079","type":"function","z":"465fa3e6.cece8c","name":"Sonnenstrahlung","func":"msg.payload=msg.payload.observations[0].solarRadiation;\nreturn msg;","outputs":1,"noerr":0,"x":450,"y":120,"wires":[["3486739f.80adcc","e726f2f4.f82c7","de0fb215.e77bb","780e512.7dfb4b"]]},{"id":"45c43eef.5b506","type":"function","z":"465fa3e6.cece8c","name":"Temperatur","func":"msg.payload=msg.payload.observations[0].metric.temp;\nreturn msg;","outputs":1,"noerr":0,"x":430,"y":200,"wires":[["aebac0e9.9b70c","599755b7.bc10fc"]]},{"id":"aebac0e9.9b70c","type":"ui_gauge","z":"465fa3e6.cece8c","name":"","group":"a49d1413.abb888","order":1,"width":8,"height":5,"gtype":"gage","title":"Temperatur","label":"","format":"{{value}} °C","min":"-20","max":"40","colors":["#001fb5","#02d600","#ca3838"],"seg1":"0","seg2":"25","x":710,"y":180,"wires":[]},{"id":"858628de.6bc068","type":"function","z":"465fa3e6.cece8c","name":"Regenmenge aktuell","func":"msg.payload=msg.payload.observations[0].metric.precipRate;\nreturn msg;","outputs":1,"noerr":0,"x":460,"y":440,"wires":[["5374acf1.3d2e44","b22d18f0.9d12b8"]]},{"id":"5374acf1.3d2e44","type":"ui_gauge","z":"465fa3e6.cece8c","name":"","group":"78f70bd1.526c74","order":1,"width":8,"height":5,"gtype":"gage","title":"Regenmenge aktuell","label":"","format":"{{value}} mm","min":0,"max":"75","colors":["#0045b5","#0045b5","#000fb5"],"seg1":"","seg2":"","x":680,"y":420,"wires":[]},{"id":"ba1158da.0d5dd8","type":"function","z":"465fa3e6.cece8c","name":"UV-Index","func":"msg.payload=msg.payload.observations[0].uv;\nreturn msg;","outputs":1,"noerr":0,"x":420,"y":600,"wires":[["ed146008.f6ad1","fdc2a7ec.3688f8"]]},{"id":"ed146008.f6ad1","type":"ui_gauge","z":"465fa3e6.cece8c","name":"","group":"b448b2a.8f7ed5","order":2,"width":8,"height":5,"gtype":"gage","title":"UV-Index","label":"","format":"{{value}}","min":0,"max":"10","colors":["#00b500","#e6e600","#ca3838"],"seg1":"","seg2":"","x":720,"y":580,"wires":[]},{"id":"6c815277.9c00dc","type":"function","z":"465fa3e6.cece8c","name":"Luftfeuchte","func":"msg.payload=msg.payload.observations[0].humidity;\nreturn msg;","outputs":1,"noerr":0,"x":430,"y":260,"wires":[["ee9c92de.25245"]]},{"id":"ee9c92de.25245","type":"ui_gauge","z":"465fa3e6.cece8c","name":"","group":"a49d1413.abb888","order":2,"width":8,"height":5,"gtype":"gage","title":"Luftfeuchte","label":"","format":"{{value}} %","min":"0","max":"100","colors":["#00b500","#00b500","#00b500"],"seg1":"","seg2":"","x":710,"y":260,"wires":[]},{"id":"599755b7.bc10fc","type":"ui_chart","z":"465fa3e6.cece8c","name":"","group":"2361e78c.9b49c8","order":1,"width":"35","height":"6","label":"Temperatur","chartType":"line","legend":"false","xformat":"HH:mm","interpolate":"linear","nodata":"","dot":false,"ymin":"-20","ymax":"40","removeOlder":"16","removeOlderPoints":"","removeOlderUnit":"3600","cutout":0,"useOneColor":false,"colors":["#1f77b4","#aec7e8","#ff7f0e","#2ca02c","#98df8a","#d62728","#ff9896","#9467bd","#c5b0d5"],"useOldStyle":false,"outputs":1,"x":710,"y":220,"wires":[[]]},{"id":"e9107cbc.4eb","type":"function","z":"465fa3e6.cece8c","name":"Windgeschwindigkeit","func":"msg.payload=msg.payload.observations[0].metric.windSpeed;\nreturn msg;","outputs":1,"noerr":0,"x":460,"y":360,"wires":[["af0b163f.69c378","dbc3453b.d455e8"]]},{"id":"af0b163f.69c378","type":"ui_gauge","z":"465fa3e6.cece8c","name":"","group":"9bd67957.70dfa8","order":2,"width":8,"height":5,"gtype":"gage","title":"Windgeschwindigkeit","label":"","format":"{{value}} km/h","min":0,"max":"50","colors":["#00b500","#e6e600","#ca3838"],"seg1":"","seg2":"","x":680,"y":340,"wires":[]},{"id":"dbc3453b.d455e8","type":"ui_chart","z":"465fa3e6.cece8c","name":"","group":"2361e78c.9b49c8","order":2,"width":"35","height":"6","label":"Windgeschwindigkeit","chartType":"line","legend":"false","xformat":"HH:mm","interpolate":"linear","nodata":"","dot":false,"ymin":"0","ymax":"50","removeOlder":"16","removeOlderPoints":"","removeOlderUnit":"3600","cutout":0,"useOneColor":false,"colors":["#1f77b4","#aec7e8","#ff7f0e","#2ca02c","#98df8a","#d62728","#ff9896","#9467bd","#c5b0d5"],"useOldStyle":false,"outputs":1,"x":680,"y":380,"wires":[[]]},{"id":"b22d18f0.9d12b8","type":"ui_chart","z":"465fa3e6.cece8c","name":"","group":"2361e78c.9b49c8","order":4,"width":"35","height":"6","label":"Regenmenge aktuell","chartType":"line","legend":"false","xformat":"HH:mm","interpolate":"linear","nodata":"","dot":false,"ymin":"0","ymax":"75","removeOlder":"16","removeOlderPoints":"","removeOlderUnit":"3600","cutout":0,"useOneColor":false,"colors":["#1f77b4","#aec7e8","#ff7f0e","#2ca02c","#98df8a","#d62728","#ff9896","#9467bd","#c5b0d5"],"useOldStyle":false,"outputs":1,"x":680,"y":460,"wires":[[]]},{"id":"fdc2a7ec.3688f8","type":"ui_chart","z":"465fa3e6.cece8c","name":"","group":"2361e78c.9b49c8","order":6,"width":"35","height":"6","label":"UV-Index","chartType":"line","legend":"false","xformat":"HH:mm","interpolate":"linear","nodata":"","dot":false,"ymin":"0","ymax":"10","removeOlder":"16","removeOlderPoints":"","removeOlderUnit":"3600","cutout":0,"useOneColor":false,"colors":["#1f77b4","#aec7e8","#ff7f0e","#2ca02c","#98df8a","#d62728","#ff9896","#9467bd","#c5b0d5"],"useOldStyle":false,"outputs":1,"x":720,"y":620,"wires":[[]]},{"id":"28c08efc.aa7ff2","type":"function","z":"465fa3e6.cece8c","name":"Temperatur, Luftfeuchtigkeit","func":"var temp = msg.payload.observations[0].metric.temp;\nvar hum = msg.payload.observations[0].humidity;\nvar message = {\"meta\":{\"eep\":\"a5-04-03\",\"channel\":1,\"type\":\"data\",\"status\":1},\"data\":{\"TMP\":temp,\"HUM\":hum}};\nmsg.payload = message;\nreturn msg;","outputs":1,"noerr":0,"x":920,"y":200,"wires":[["860e0555.a3a508"]]},{"id":"780e512.7dfb4b","type":"function","z":"465fa3e6.cece8c","name":"Sonnenstrahlung","func":"var ill = msg.payload;\nvar message = {\"meta\":{\"eep\":\"a5-06-03\",\"channel\":7,\"type\":\"data\"},\"data\":{\"ILL\":ill}};\nmsg.payload = message;\nreturn msg;","outputs":1,"noerr":0,"x":950,"y":120,"wires":[["860e0555.a3a508"]]},{"id":"a3266d89.b12d3","type":"function","z":"465fa3e6.cece8c","name":"Luftdruck","func":"msg.payload=msg.payload.observations[0].metric.pressure;\nreturn msg;","outputs":1,"noerr":0,"x":420,"y":660,"wires":[["5392d37b.e3b88c"]]},{"id":"5392d37b.e3b88c","type":"function","z":"465fa3e6.cece8c","name":"Luftdruck","func":"var bar = msg.payload;\nvar message = {\"meta\":{\"eep\":\"a5-05-01\",\"channel\":2,\"type\":\"data\"},\"data\":{\"BAR\":bar}};\nmsg.payload = message;\nreturn msg;","outputs":1,"noerr":0,"x":980,"y":660,"wires":[["860e0555.a3a508"]]},{"id":"860e0555.a3a508","type":"link out","z":"465fa3e6.cece8c","name":"","links":["75aa5579.4397ec"],"x":1115,"y":200,"wires":[]},{"id":"b448b2a.8f7ed5","type":"ui_group","z":"","name":"Sonne aktuell","tab":"93c6bbb7.618b18","order":5,"disp":true,"width":8,"collapse":false},{"id":"78f70bd1.526c74","type":"ui_group","z":"","name":"Regen aktuell","tab":"93c6bbb7.618b18","order":4,"disp":true,"width":8,"collapse":false},{"id":"9bd67957.70dfa8","type":"ui_group","z":"","name":"Wind aktuell","tab":"93c6bbb7.618b18","order":3,"disp":true,"width":8,"collapse":false},{"id":"2361e78c.9b49c8","type":"ui_group","z":"","name":"Charts","tab":"9e49cafb.334a18","order":1,"disp":false,"width":"35","collapse":false},{"id":"a49d1413.abb888","type":"ui_group","z":"","name":"Temperatur aktuell","tab":"93c6bbb7.618b18","order":2,"disp":true,"width":8,"collapse":false},{"id":"93c6bbb7.618b18","type":"ui_tab","z":"","name":"Wetterdaten aktuell","icon":"wb_sunny","order":5,"disabled":false,"hidden":false},{"id":"9e49cafb.334a18","type":"ui_tab","z":"","name":"Wetterdaten Charts","icon":"fa-line-chart","order":7,"disabled":false,"hidden":false}]

Bei der StationID musst du die drei Punkte durch deine ID ersetzen, bei der API ebenso. Der Link-Node geht zum Enocean Output-Node.

Hi danke
ich kann den Link node irgendwie nicht mit dem Output verbinden. Die linie ist gestrichelt.

Kannst du bitte deinen Kommentar nochmal bearbeiten. Wenn dort der ganze Flow da steht sieht das echt … aus.
Bitte die flows als Datei oder als vorformatierter Text einstellen.
Danke dir

Edit : Danke so ist es etwas übersichtlicher wieder

1 Like

Ich habe den Enocean Output-Node in einem anderen Flow. Über zwei Link-Nodes verbindest du die halt.

1 Like

im debug wird nun {“payload”:“55000a0701eba5fc01a608ffd498010103ffffffffff003b”,“return”:{“syncByte”:85,“header”:{“dataLength”:1,“optionalLength”:0,“packetType”:2},“crc8Header”:101,“data”:[0],“optionalData”:[],“crc8Data”:0},"_msgid":“bad48385.bf4b8”}

gesendet aber im homee wird nichts angelernt

Ich bin jetzt nicht ganz bei deiner Sache.
Welchen Flow hast du benutz und welches Gerät magst du wie anlernen an homee?
Hast du von @SteffenTM den flow genommen den er eingestellt hat ?

VG

Ich habe von Steffen den Workflow von Underground genommen und dann den flow zum anlernen von medicus07 vom 3. Oktober. In Homee habe ich nun auch ein Gerät Wetterstation angelernt. Allerdings irgendwie bekommt dies keine Werte

Hast du dir die richtige EEP von deinem angelernten Gerät gesucht? Da siehst du dann auch die Daten, welche du verwenden kannst.

Also in den Beispielen hier für die Wetterstation steht:
{
“meta”: {
“eep”: “a5-13-01”,
“channel”: 2,
“type”: “teach-in”
},
“teach-in”: {
“type”: “4BS”
},
“data”: {
“LRN”: 0
}
}

so habe ich das auch angelernt. In dem Flow von Steffen zur Wetterstation gehen drei dinge zur Output node: “Sonneneinstrahlung”, “Temperatur und Luftfeuchtigkeit” und “Lufdruck”
Diese habe ich geöffnet und dort die eep von oben (also “a5-13-01”) reingeschrieben. Scheint aber nicht viel zu passieren.

var bar = msg.payload;
var message = {“meta”:{“eep”:“a5-13-01”,“channel”:2,“type”:“data”},“data”:{“BAR”:bar}};
msg.payload = message;
return msg;

Mein Input Node meldet beim erfolgreichen Einlernen folgendes

18.10.2019, 13:15:26node: cbd6e1b0.88107msg.payload : string[48]

“55000a0701eba54c0ffff0050a0e148000ffd498052c0040”

Wie schaut dein msg.payload hinter dem Konvertierungs-Node aus?
Sollte so aussehen:
object
observations: array[1]
0: object
stationID: “…”
obsTimeUtc: “2019-10-18T13:59:37Z”
obsTimeLocal: “2019-10-18 15:59:37”
neighborhood: “…”
softwareType: “EasyWeatherV1.2.0”
country: “DE”
solarRadiation: 57.3
lon: …
realtimeFrequency: null
epoch: 1571407177
lat: …
uv: 0
winddir: 152
humidity: 95
qcStatus: 1
metric: object
temp: 10
heatIndex: 10
dewpt: 10
windChill: 10
windSpeed: 0
windGust: 0
pressure: 1001.69
precipRate: 0
precipTotal: 3.81
elev: 356