Community

Node Red - Hilfe-/Frage-/Ideen-/Austausch - Thread


#1

Moin zusammen,

Neues Jahr und gute Vorsätze…:blush:
Da rückblickend im letzten Jahr bei homee neue Funktionalitäten, Möglichkeiten und manchmal auch Zuverlässigkeit sowie Stabilität auf der Strecke geblieben sind, habe ich mir vorgenommen mich in diesem Jahr mehr bzw. überhaupt mal mit NodeRed zu beschäftigen.

Und da hier ein Hilfe-/Austausch-Thread fehlte, habe ich hiermit mal einen erstellt. Es gibt ja schon einen regen Austausch zu diesem Thema im Slack Channel, teilweise aber auf sehr fortgeschrittenem Niveau.

Deshalb soll dieser Thread auch als Informationsquelle bzw. Motivation für interessierte und nicht so fortgeschrittene User dienen, um sich mal mit NodeRed zu beschäftigen.

In diesem Sinne viel Spaß!


#2

Ich fange auch gleich mal an…

Da ich meinen Raspberry Pi außer Betrieb gesetzt habe, bot sich mir Dank @stfnhmplr und dem Docker Container für die Synology Diskstatiob eine einfache Möglichkeit NodeRed zu nutzen…

https://himpler.com/blog/node-red-mit-docker-auf-synology-diskstation

Installiert ist das ganze ohne viele Vorkenntnisse innerhalb von 10 Minuten und dann kann man direkt schon loslegen.

Mein eigentliches Ansinnen war, da ich aus verschiedenen Gründen alle Zigbee Geräte zur HueBridge umgezogen hatte, eine Möglichkeit zu finden, diese wieder in homee abzubilden ohne Benutzung von z.B. IFTTT.

Also habe ich in NodeRed den Wemo Emulator und HueMagic als Plugins installiert. Mit der grafischen Oberfläche ist dies alles relativ einfach und selbsterklärend.

Und schon hatte ich meine Hue Lampen trotz Hue Bridge auch wieder in homee.


#3

Drei Fragen habe ich gleich am Anfang:

  1. Gibt es eine gute Seite wo man ohne viel Schnickschnack ein paar Basics zu NodeRed nachlesen kann?

  2. Das homee Plugin ist ja verfügbar… Ich weiß nur nicht was man damit genau machen kann? Für was benutzt ihr das z.B.? Welche Möglichkeiten hat man mehr als in homee selber?

  3. Für was ist immer der die Debug Node in den Flows? Was macht der oder was hat man davon? Beispiel:

Das Schalten der Hue Leuchte über den Wemo in homee funktioniert auch, wenn man den Debug Node weglässt.


#4

Und gleich noch eine Frage:

Der erste Flow, den ich erstellt habe, lieferte die kleinen Symbole on bzw. turned off…

Wenn ich jetzt einen neuen Flow erstelle oder einen andern kopiere und die Werte ändere, tauchen die Symbole nicht mehr auf.

Mache ich hier irgendwas falsch?


#5

Hallo @medicus07,

du must nach jeder Änderung auf den Button “Deploy” drücken,

Damit die Änderung am Quelltext übernommen werden.

Zum Debug,

schalte mal im Menue show sidebar ein

Danach in der Sidebar auf den mittleren Button “Debug Messages” drücken

Dann siehst du was zu Beispiel deine Hue iris rechts zurück meldet.

MfG und ein frohes neues Jahr


#6

Hi @RennEnte,

auch dir ein frohes Neues!
Danke für deine Antworten…

Das mit dem Deployen habe ich gemacht und zwar auf Flow-Ebene…
Sidebar ist auch eingeschaltet, aber ich bekomme keine Nachrichten in der Debug-Konsole… der Wemo-Switch in homee schaltet aber bei Betätigung die Hue Lampe an bzw. aus.

Beim ersten Test gestern hatte ich auch wie oben im Bild die kleinen Tags, bei anderen habe ich auch als Tag z.B. listen on [Port] gelesen.
Wie entstehen diese Tags unter den Nodes?


#7

Da hab ich auch gleich einmal eine Frage zu einer Verzögerung.
Der hue Bewegungsmelder schaltet eine hue Lampe. Diese Lampe soll sofort bei Bewegung einschalten, aber erst nach 10 Minuten ausschalten.
Mit der Verzögerung von NodeRed wird mir der gesamte Vorgang verzögert.
Da brauche ich einen Denkanstoß.


#8

Bei den Wemo emu steht so lange listen bis du den wemo das erste mal schaltest,

dann steht auch der richtig Status darunter.

Zur hue kann ich nix sagen , habe ich leider nicht


#9

Hallo @bergjet,

ich weiß ja nicht wie du deine Daten nach Nod-red bekommst.

Ich mach alles über iobrocker mit homee Adapter.

Ich habe das so gelöst, wobei bei uns zwei Bewegungsmelder in der Küche sind.


#10

Hat sich erledigt… war ein Browser- bzw. Instanzproblem… passt jetzt alles. Danke.


#11

Mache ich auch. Aber es sollte doch auch einfacher über NodeRed gehen?


#12

@bergjet Mach mal ein Bild von deinem Flow.


#13

Habe das nur einmal als Versuch. Der Bewegungsmelder soll die Deckenlampe einschalten und nach 3 Minuten ausschalten. Die Funktion liefert true und false. Aber Delay verzögert die Aktion um 3 Minuten (auch das true).


#14

Mit dem Plugin kannst du soviel machen, dass es schwierig werden dürfte alles aufzuzählen. Man kann damit z.B. alle Nachrichten beobachten, Zustandswerte von Geräten abfangen und weiterverarbeiten (eigene Datenbank o.ä.), Nachrichten an homee senden um Homeegramme abzuspielen (ohne webhook), Zustände von Geräten ändern. Letztendlich kann man homee auf eine einfache Art und Weise mit anderem SmartHome Zubehör verbinden und Funktionen ergänzen, die homee (noch) nicht kann.

Außer der offiziellen Node-RED Seite (https://nodered.org) weiß ich leider keine. Dort sind vielleicht die Beispielflows ganz hilfreich. Ansonsten habe ich auf meiner Webseite ja auch ein paar Flows beschrieben. Aber die kennst du ja vermutlich schon.

Die kann man bei der Entwicklung eines Plugins einbauen. Der homee Node hat die z.B. auch, ich habe die zur Darstellung des Verbindungsstatus verwendet.


#15

Danke Stefan…

das homee Plugin habe ich installiert und konnte auch schon mal die Geräte auslesen… an dieser Stelle muss ich mich jetzt weiter beschäftigen und probieren.

Die Leuchten der Hue-Bridge habe ich jetzt alle eingebunden… diese können über Wemos in homee ein- bzw. ausgeschaltet.
Das Ganze mache ich über den function node…

Gibt es hier für geschicktere Lösungen?

Ich habe nämlich zwei Probleme… wenn ich die Funktion so belasse, wird die Lampe immer mit dem vorherigen Zustand eingeschaltet und man kann sie auch ausschalten. Wenn ich aber Werte für Helligkeit oder Farben eintrage, geht die Lampe zwar mit diesen Einstellungen an, ich kann sie aber nicht mehr ausschalten.

Das zweite Problem betrifft den Zustand der Wemos an/aus in homee.
Wenn ich nämlich per Webhook z.B. einen Colorloop starte, gehen die Hues auch an, es gibt aber keine Rückmeldung an homee, so dass die Wemos in homee auf “aus” stehen bleiben.


#16

Guck dir mal die Funktion an:

if(msg.payload == 'on') {
    msg.payload = {
        on: true,
        brightness: 40,
        hex: '#FFB950'
    }
} else {
    msg.payload = {
        on: false,
        transitionTime: 5
    }
}

return msg;

Damit sollte auch das ausschalten funktionieren. Die transitionTime sorgt für ein sanftes dimmen, kannst du aber auch rausnehmen. Die Funktion ist für das huemagic Plugin.

@Micha war so nett und hat ein paar seiner Flows in die Node-RED Datenbank eingestellt. Hier kannst du dir für den Rückkanal etwas abgucken: https://flows.nodered.org/flow/ca42fa0e9ae352c5497b34ca12cc0a5e

EDIT: Sorry, der war ohne Rückkanal. Dafür brauchst du noch folgendes Plugin: node-red-node-wemo
Vielleicht kann @Micha ein fertiges Beispiel beisteuern.


#17

Ich würde an dieser Stelle mit einem Timer arbeiten.

bei Motion = true Licht einschalten und den Timer stoppen
und bei Motion = false den Timer starten und nach Ablauf des Timers das Licht ausschalten.

51

Hier wird der Timer gestartet wenn Motion= false und der payload on=false an die hue gesendet.
Bei erneuter Bewegung wird der Timer mit “stop” gestoppt


#18

Hallo @bergjet,

so ist das klar das beides Verzögert wird.

Nimm noch einen Switch mit einen Vergleich auf true oder false dazu.

Dann wird es gehen.

@Osorkon war schneller :scream:

@Osorkon so gehts natürlich auch.

Das ist das schöne an Node-Red , viele Wege führen zum Ziel.
Darum laufen auf meinen homee auch nur noch 4 HG bei 54 Geräten.


#19

Hallo @stfnhmplr und @medicus07,

Den Rückkanal kannst du einmal über ein WEMO Plugin und einmal über homee realisieren.
In meinem Beispiel war der Rückkanal über das homee Plugin gewählt , da dieser weg schneller ging als über den wemo Node.

Edit


Hier ne die Möglichkeit es über das hue Node zu lösen.
Jedoch gibt es eine Verzögerung von ca. 7 Sekunden bis die Änderung in Node Red stattfindet.

Und in homee kommt die Änderung erst nach ca. 60-70 Sekunden an.

Daher ist mein klarer Favorit das homee Plugin um die Rückmeldung zu senden


#20

Habe das so geändert, dann gehts.


Aber jetzt brauche ich noch einen Zusatz.
Wenn innerhalb von 3 Minuten eine weitere Bewegung kommt, sollten die 3 Minuten wieder von vorne beginnen, ohne dass die Lampe ausgeht.