NEWS
Froggit DP1500 / Ecowitt GW1000 USB Dongle - Node-Red Flow
-
@lemuba Ja, hat funktioniert. Habe neue Subflows erstellt und damit ging es Danke
-
Moin, danke für die Idee die Daten via node-red einzulesen, die anderen Ansätze, welche ich gefunden hatte, waren fehleranfälliger und nutzen nur den wunderground-feed.
Ich habe deinen flow etwas verändert, da mir zum einen die vielen subflows nicht so gefallen hatten und ich es etwas leichter wart- und erweiterbar haben wollte.
Ich habe neben dem DP1500 und der WH300SE (GW1000) noch eine DP50 eingebunden.
Um diese im iobroker besser getrennt zu bekommen, habe ich Unterobjekte für jedes Gerät angelegt (Bsp. weatherstation.dp1500.temperature anstatt gw1000_indoor_temp) und die Datenpunkte dann nur nach Datentyp (Temperatur, Feuchtigkeit usw.) übertragen. Die Objekte werden dann in der change-node dem msg-Objekt übergeben.Von daher hier mein flow als input zu deiner tollen Vorarbeit
-
Jo, danke für dein Feedback - schaut klasse aus! Ich ziehe gerade mit meinem Iobroker um und schaue mir das dann bei Gelegenheit nochmal genauer an
Falls Du nochmal weitere Weiterleitungsziele benötigst (z.B. Wetter Software), oder vorher einen Split, kann ich Dir auch das Foshkplugin empfehlen.
Z.B. vom DP1500 aufs Foskplugin im RAW Ecowittformat, von da aus dann weiter gesplittet aufa) Node-Red/Iobroker
b) Weeewx
c) PWS Dashboard
d), etc.,etc.https://www.loxwiki.eu/display/LOXBERRY/FOSHKplugin+-+generic+version
Der Oliver ist auch gut übers Forum zu erreichen und immer sehr bemüht:
https://www.loxforum.com/forum/projektforen/loxberry/plugins/222662-loxberry-plugin-foshkplugin-wettergateway-froggit-dp1500-ecowitt-gw1000-anbindenDas Foshkplugin läuf bei mit in einem Proxmox Debian 10 Container mit max. 50MB RAM Nutzung und praktisch null Prozessorlast.
-
@lemuba super, danke, das liest sich gut, werde ich mir mal genauer durchlesen.
Ich verwende zwar keinen Loxone Server, aber das scheint ja für das Script egal zu sein!Was ich eine ganz schöne Idee finde, ist der Weiterleitungsmode.
Wenn ich das richtig verstanden habe, kann ich damit zB den DP50 Temperaturwert anstatt des WH3000SE Wertes zB. an Weathercloud versenden. Sehr praktisch, denn der Wert des WH3000SE Sensor liegt immer höher/niedriger als der Wert des DP50 im Schatten.
Mal sehen, vlt baue ich das aber auch in das node-red script mit ein, wenn ich verstanden habe in welchem Format das Ganze erwartet wird. -
Ja, schaust Du hier, den Threat von gestern.
https://www.wxforum.net/index.php?topic=39625.0Laut Olicat geht dann in der nächsten Version auch die Weiterleitung an Weathercloud. Gut, wenn Du es direkt in Node-Red einbauen kannst, dann sicherlich die schlankere Lösung.
-
@QuentinS Danke für deinen Flow funktioniert 1a
@lemuba Danke für deine ausführlichen Infos in Beitrag 1Ich habe nur eine Zusatzfrage. Ich habe auch einen DP100 angebunden und da bekomme ich bei Batterie (soilbatt1) folgenden Wert. Wie soll ich diesen interpretieren?
Zusätzlich wie kann ich das Datum in folgendes wandeln? z.B. 07.10.2020 19:57:43Ich bin recht neu in node-red aber ich bin begeistert...
dateutc: "2020-10-07+17:57:43" soilmoisture1: "37" soilbatt1: "1.6"
-
@QuentinS
Hallo, leider werden bei mir beim Import die Typen unit-converter und auch ioBroker out nicht erkannt. Was mache ich falsch? -
@sro Moin, generell kann man alle fehlenden Module über den Palletenmanager über das Hamburgermenü oben rechts installieren. Danach funktioniert der flow.
Eine Ausnahme ist mWn das ioBroker Modul. Dies ist automatisch installiert, wenn man im ioBroker node-RED als Adapter installiert und diese Node-RED Instanz öffnet. Ein Zugriff auf ioBroker über ein separat installiertes node-RED scheitert an der Verfügbarkeit des ioBroker Modules über den Palletenmanger. Jedenfalls habe ich bislang keinen Weg gefunden. Viel Erfolg! -
Hallo zusammen,
besten Dank erstmal für die tolle NodeRed Vorlage.Die "Rain Rate" fällt bei mir immer wieder auf "0.0 mm", wenn der Behälter entleert wurde.
ist das bei euch auch so?
Kann man das im Script irgendwie korrigieren? -
Da ist nichts zu ändern. RainRate ist ein dynamischer Wert, der aus der Wetterstation kommt und automatisch wieder auf Null fällt, sobald eine bestimmte Zeit seit der letzten Regelmessung ohne Regen vergangen ist.
-
@lemuba es regnet ja weiter....während des regens entleert sich der "behälter" und dann springt die rainrate auf 0. dann dauert es wieder bis ein wert angezeigt wird
-
Aber trotzdem, Rain Rate wird nicht im Node Red Flow berechnet, sondern kommt direkt vom Dongle oder Wetterstation. Welche Wetterstation oder Dongle hast Du denn? Neuste Firmware, etc. geprüft?
-
@lemuba
Bei mir kamen die Daten immer nur alle 60-70 Sekunden mit deinem Flow, weil die Verbindung so lange bestehen bleibt, bis ein Timeout kommt.Ich habe den Input node gegen "HTTP in" getauscht.
Methode: Post
Pfad: /weather/
Da dran dann ein "HTTP response" node, damit die Verbindung beendet wird.In der Wetterstation
Custom Server
Protokoll: Ecowitt
Pfad: /weather/
Port: 1880Der Split Node in deinem Flow kann somit auch entfallen.
Viele Grüße,
TiDO -
Ich habe mir ein Ecowitt GW100 + WH51 Set besorgt (https://www.growland.net/Ecowitt-Gateway-WLAN-Bodenmessgeraet-mit-Sensor), würde aber ungerne Node-RED verwenden und damit eine weitere "Komponente" ins Smarthome bringen.
Kann mir jemand den Einstieg erleichtern? Docs, API, Protokolle, Beispielcode, Kommunikationsbasis,... etc. wären sehr hilfreich.
-
Hast Du es mal mit dem Adapter von @fogg versucht:
https://github.com/phifogg/ioBroker.sainlogic/issues/64Oder dem script von @sborg?:
https://forum.iobroker.net/topic/28384Ansonsten wirst Du die Sensoren auch über das Foshkplugin und den MQTT-Adapter einbinden können, so mache ich das zumindest aktuell:
https://forum.iobroker.net/topic/43731/ecowitt-wetterstation-froggit-foshkplugin-mqtt-iobroker/1
Mit dem foshkplugin kannst Du dann auch noch beliebig viele weitere Weiterleitungsziele aktivieren - hier z.B. die Wetterseite von Oliver (olicat) dem Autor des Foshkplugin, inkl. Bodenfeuchtesensoren:
Wenn Du selber programmieren willst, kannst du auch die Lucy von Ecowitt anschreiben: ecowittweather@outlook.com
Die stellt Dir dann eventuell das GW1000 data exchange protocol v1.5.1_.docx zur Verfügung.
Vielleicht gibt es da schon eine neuere Version - hatte ich mal letztes Jahr bekommen, kann aber selber nichts damit anfangen;-)Und bei Ecowitt/Lucy sind die Sensoren um einiges günstiger - meine Bodenfeuchte Sensoren sind noch im Zulauf.
Musst Du nur in der richtigen Frequenz bestellen...https://www.ecowitt.com/shop/goodsPage/1/42
Gruß,
lemuba
-
Moin,
erstmal Dankeschön für die tolle Arbeit @lemuba und @QuentinS . Habe auch einen DP1500 im Einsatz und bekomme die Datenpunkte, top. Allerdings wollte ich noch weitere DP50 hinzufügen. Dahe dazu die Namen der Datenpunkte um dn Kanal erweitert, also z.B. DC501 für Kanal 1, DC502 für Kanal 2 etc. 2 Sensoren werden auch in die Datenpunkte eingetragen. Beim dritten gibt es einfach keine Werte in die Datenpunkte, immer nur " " - also Leerzeichen wird eingetragen. Debug der drei change Knoten gibt aber die korrekten Werte aus. Ich verstehe einfach nicht, woran es liegt. Es ist fast, als ob der Node ioBroker out nicht so viele Ausgaben verarbeiten kann.
Würde sich das mal jemand anschauen?
Danke & Gruß
-
@aueland moin, schwer zu sagen, denke aber nicht das es an der Anzahl der Nachrichten pro Node liegt. Ich habe erst heute Abend wieder Zeit mir den Flow anzuschauen, aber würde zum testen mal folgendes probieren.
Die Nodes dp50 1 und 2 mal von der out node abklemmen und nur dp50 3 dran lassen.
Falls das nichts ändert, dp50 3 nodes löschen, eine der anderen kopieren und auf dp50 3a ändern und schauen was iobroker dort anlegt. Ggf auch die Datenpunkte in iobroker von node 3 löschen.Insgesamt würde ich mal austesten, ob es an der Anzahl der outnodes liegt oder vlt in iobroker, zB weil die Datenfelder unvollständig geschrieben wurden. Loglevel hochsetzen hilft um besser zu verstehen, was in iobroker ankommt.
Das wars auf die ´Schnelle´. VG
-
Moin @QuentinS
Danke für die schnelle Rückmeldung.@quentins said in Froggit DP1500 / Ecowitt GW1000 USB Dongle - Node-Red Flow:
Die Nodes dp50 1 und 2 mal von der out node abklemmen und nur dp50 3 dran lassen.
Hat nichts geändert.
Falls das nichts ändert, dp50 3 nodes löschen, eine der anderen kopieren und auf dp50 3a ändern und schauen was iobroker dort anlegt. Ggf auch die Datenpunkte in iobroker von node 3 löschen.
Hat nichts verändert. Datenpunkte werden angelegt wenn gelöscht oder neu, aber dp50 3 und/oder dp50 3a werden nur mit " " gefüllt. dp50 1 und dp50 2 erhalten die Daten wie vorgesehen.
Ich habe auch mal probiert, die Daten, die von dem Kanal 3 kommen dem node vom Kanal zuzuweisen, also quasi den Input 2 und 3 vertauscht, dann werden die Daten, die der Sensor auf Kanal 3 sendet auch in den Datenpunkte für Kanal 2 geschrieben.
Insgesamt würde ich mal austesten, ob es an der Anzahl der outnodes liegt oder vlt in iobroker, zB weil die Datenfelder unvollständig geschrieben wurden. Loglevel hochsetzen hilft um besser zu verstehen, was in iobroker ankommt.
Erst dachte ich, das logging hilft mir auch nicht weiter, abermeine ich daraus sehen zhu können, dass iobroker.admin beim subscribe der nodes aus red-node teilweise die Einträge abschneidet. Warum gerade immer bei Kanal 3 (und 4 etc.) - keine Ahnung. Ich bin dan hingegangen und habe die Bezechnungen der datenpunkte geändert, nicht dp501, dp502 etc, sondern ch1, ch2, ch3 für den jeweiligen Kanal. Der output läuft also z.B. in weatherstation.ch3.humidity anstatt weatherstation.dp503.humidity - und siehe da, Plötzlich werden alle Werte, die die Station liefert auch in die Datenpunkte eingetragen... bisher habe ich so 4 Temperatursensoren (DP50er) eingebunden. Ein paar werden noch folgen,
Hiermit läuft es jetzt bei mir mit den 4 zusätzlichen Sensoren:
weather2iobroker_aue.jsonVielleicht magst Du es dir trotzdem heute Abend noch mal anschauen um dem Problem noch etwas genauer auf die Spur zu kommen.
VGEdit: Habe es jetzt mit insgesamt 6 DP50 umgesetzt und mit der CH-Bezeichnung als Name funktioniert es problemlos,
-
@aueland Super, ich hatte an deinem NR-Code auch nichts Negatives finden können. Liegt dann vlt wirklich an den Zeichenlängen bei der Übergabe in iobroker. Umso besser, dass es jetzt für dich funktioniert. Ich selbst verwende den flow nicht mehr, da ich zZ auf HomeAsssitant migriere und es dort eine Integration gibt, welche alles ohne den Umweg erledigt.
-
@quentins Danke
Darf ich fragen, warum Du zu HomeAsssitant wechselst? Ich stehe noch ganz am Anfang (Ausgangspunkt war die Visualisierung der PV-Anlage ) und noch könnte ich problemlos auf ein anderes System schwenken.