NEWS
NR crasht wegen Huejay timeout - warum?
-
@schmetterfliege Nun back zu iobroker - heißt ja nicht, dass nicht komplett, sondern man kann die Logik ja trotzdem weiter in NR implementieren. Das ist ja das schöne - man schreibt halt statt in die Node - dann eben in den Datenpunkt des Adapters.
nun mal paar grundsätzliche Überlegenung zu dem Flow:
-
Nun ich weiß nicht, wie Deine iobroker In Node ausschaut und durch was der Datenpunkt getriggert wird. Ist da ein Filter drin, dass nur geänderte Werte triggern.
-
Was macht der switch - was machen die blöden function Nodes - entält der 20 Flows in Codezeilen programmiert?
-
Ist Dir schon mal der Gedanke gekommen, dass mehrfach getriggert wird ?
-
Ist Dir schon mal der Gedanke gekommen, dass Deine HUE Bridge überfordert ist, wenn Du mehr oder weniger 2 Lampen gleichzeitig steuerst. Ggf. macht es Sinn die Nachrichtenrate zu begrenzen, um der HUE Bridge die Möglichkeit zu geben die Nachricht zu verarbeiten. Auch ein Konfigurationsnode , die allen HUE Nodes zugrunde liegt braucht ggf. trotz Asynchronität eine gewisse Verarbeitungszeit?
-
Vielleicht macht es auch mehr Sinn solche Dinge über eine HUE Gruppe zu steuern. - Die Einzelsteuerung dürfte ja immer noch gehen.
-
-
@mickym said in NR crasht wegen Huejay timeout - warum?:
@schmetterfliege Nun back zu iobroker - heißt ja nicht, dass nicht komplett, sondern man kann die Logik ja trotzdem weiter in NR implementieren. Das ist ja das schöne - man schreibt halt statt in die Node - dann eben in den Datenpunkt des Adapters.
Das stimmt. Huemagic hat aber so schön farbige Nodes hahaha
Aber ja, mit "Back to Iobroker" meinte ich nicht dass ich die Steuerung selbst dann über Iobroker mache. Dann müsste ich ja auch wieder zu VIS wechseln, was definitiv nicht mein Plan ist^^nun mal paar grundsätzliche Überlegenung zu dem Flow:
- Nun ich weiß nicht, wie Deine iobroker In Node ausschaut und durch was der Datenpunkt getriggert wird. Ist da ein Filter drin, dass nur geänderte Werte triggern.
Guter Hinweis! Hatte ich vergessen und sofort umgesetzt
- Was macht der switch - was machen die blöden function Nodes - entält der 20 Flows in Codezeilen programmiert?
Der guckt ob der Button True oder False wiedergibt. Wenn True -> in die Function Nodes. Wenn False -> wird false an die Hue Nodes geschickt um die Lampen auszuschalten.
Die Function Nodes enthalten das hier:return {payload: {brightness: 20 } };
return {payload: {colorTemp: 400 } };
Und ja, das könnte man auch mit einer Function oder einer Change Node lösen :D.
- Ist Dir schon mal der Gedanke gekommen, dass mehrfach getriggert wird ?
Jep, hatte ich ja geschrieben
Ist auch das einzige, was für mich in Frage kommen würde.
- Ist Dir schon mal der Gedanke gekommen, dass Deine HUE Bridge überfordert ist, wenn Du mehr oder weniger 2 Lampen gleichzeitig steuerst. Ggf. macht es Sinn die Nachrichtenrate zu begrenzen, um der HUE Bridge die Möglichkeit zu geben die Nachricht zu verarbeiten. Auch ein Konfigurationsnode , die allen HUE Nodes zugrunde liegt braucht ggf. trotz Asynchronität eine gewisse Verarbeitungszeit?
Naja, es sind 2 einzelne Lampen, das sollte die Bridge abkönnen. Wenn ich mein Esszimmer Licht schalte, gehen da ganze 4 Lampen an
Die Steuerung meines Bürolichts in NR funktioniert ja auch tadellos, und da sind es 3 Lampen gleichzeitig.
Also dass es daran liegt würde ich aktuell erst mal ausschließen.
Zum jetzigen Zeitpunkt setze ich mein Pferd darauf, dass der Tradfri Button Quatsch macht - das in der IN Node abzufangen ist ja schon mal ein guter Startpunkt um es rauszufinden -
@schmetterfliege Das was Deine Function Nodes machen ist trotzdem Käse. Das schicke ich doch nicht 2 fach - sondern in einem Objekt.
Jedenfalls sind 2 Eigenschaften mit 2 Objekten zu setzen in meinen Augen unsinnig. Eventuell ist das auch überhaupt Dein Problem, da Du nur eine Eigenschaft schickst, die HUE Node aber beide Eigenschaften erwartet.
Ich befürchte auch, dass Dein zigbee hin und wieder eine Aktualisierung schickt und das passiert auch manchmal zweimal hintereinander. Eventuell auch noch eingrenzen, dass nur bestätigte Änderungen durchkommen (ACK=true).
-
Wie gesagt, mit der Change Node ginge das selbstverständlich auch - und du hast Recht dass das deutlich sinnvoller ist.
Werde die bei Zeiten auch entsprechend mal anpassen.Die Hue Node erwartet nicht beide Eigenschaften, sondern beliebige Eigenschaften. Farbtemperatur, Helligkeit, Farbe.
Wenn ich der nur 1 davon schicke, dann steuert sie die Lampe auch nur entsprechend damit. Der Node kann ich prinzipiell aber übergeben was ich möchte.
NR crasht ja auch nicht wenn ich die Lampen auf genau diese Weiße steuere - sondern zu Zeiten zu denen keiner sie steuert.
-> deshalb kann es meiner Meinung nach nur an den Aktualisierungen liegen.Die bestätigten Änderungen sind ebenfalls ein sehr guter Punkt! Danke!
-
@schmetterfliege sagte in NR crasht wegen Huejay timeout - warum?:
Die Hue Node erwartet nicht beide Eigenschaften, sondern beliebige Eigenschaften. Farbtemperatur, Helligkeit, Farbe.
Wenn ich der nur 1 davon schicke, dann steuert sie die Lampe auch nur entsprechend damit. Der Node kann ich prinzipiell aber übergeben was ich möchte.Das ist schon richtig - ich habe mir ja die Beschreibung der Node angeschaut. Aber wenn Du schon beide Eigenschaften setzt (was Du mit beiden Function Nodes ja tust) - dann doch lieber aufeinmal, als 2 mal - das macht so keinen Sinn und ist nur unökonomisch.
Ausserdem musst Du darauf achten, dass Du über die function Nodes ja den extendend Mode nutzt, beim Ausschalten wahrscheinlich nur den Boolean:
Das heißt vielleicht solltest Du im Extenden Mode - dann On auch als true mitschicken.
-
Wenn ich die Brightness verändere, schaltet der die Lampe automatisch ein.
So steuere ich alle meine Lichter^^Da fände ich es eher unnötig der Lampe zu sagen sie soll auf Helligkeit 20% gehen, und ihr dann noch zu sagen dass sie auch angehen soll - so intelligent sind die Birnen schon :D.
-
@schmetterfliege sagte in NR crasht wegen Huejay timeout - warum?:
Und ja, das könnte man auch mit einer Function oder einer Change Node lösen :D.
Ich habe selbst im NR Forum gesehen, dass die meisten lieber function Nodes nutzen - anstelle von Nodes. Verstehen tue ich es halt nicht.
-
@schmetterfliege sagte in NR crasht wegen Huejay timeout - warum?:
Wenn ich die Brightness verändere, schaltet der die Lampe automatisch ein.
So steuere ich alle meine Lichter^^Da fände ich es eher unnötig der Lampe zu sagen sie soll auf Helligkeit 20% gehen, und ihr dann noch zu sagen dass sie auch angehen soll - so intelligent sind die Birnen schon :D.
Ok - aber colorTemp gibst ja auch mit - wie gesagt - alles in einem Objekt schicken macht jedenfalls mehr Sinn. Deswegen arbeitet man ja mit Objekten, damit nicht alles einzeln verarbeitet werden muss.
-
@mickym said in NR crasht wegen Huejay timeout - warum?:
@schmetterfliege sagte in NR crasht wegen Huejay timeout - warum?:
Wenn ich die Brightness verändere, schaltet der die Lampe automatisch ein.
So steuere ich alle meine Lichter^^Da fände ich es eher unnötig der Lampe zu sagen sie soll auf Helligkeit 20% gehen, und ihr dann noch zu sagen dass sie auch angehen soll - so intelligent sind die Birnen schon :D.
Ok - aber colorTemp gibst ja auch mit - wie gesagt - alles in einem Objekt schicken macht jedenfalls mehr Sinn. Deswegen arbeitet man ja mit Objekten, damit nicht alles einzeln verarbeitet werden muss.
Die Function Nodes sind noch "Relikte" aus der Zeit als ich mit NR angefangen habe (2 Monate?) und bevor du mir die ganzen Tricks, Tipps und Kniffe gezeigt hast.
Ich hatte bloß noch nicht die Muse alles zu überarbeiten/verbessern.
Die beiden Functions in diesem Beispiel werde ich definitiv mit einer Change Node ersetzen. Allein schon weil das Board sonst irgendwann vor lauter Nodes zum Urwald wird -
@schmetterfliege sagte in NR crasht wegen Huejay timeout - warum?:
Die Function Nodes sind noch "Relikte" aus der Zeit als ich mit NR angefangen habe (2 Monate?) und bevor du mir die ganzen Tricks, Tipps und Kniffe gezeigt hast.
Ich hatte bloß noch nicht die Muse alles zu überarbeiten/verbessern.
Die beiden Functions in diesem Beispiel werde ich definitiv mit einer Change Node ersetzen. Allein schon weil das Board sonst irgendwann vor lauter Nodes zum Urwald wirdNa 2 Monate - dann ist das alles OK. Ich habe auch viel gelernt und lerne noch dazu. Ich habe allerdings sofort und nur mit NodeRed unter dem iobroker gearbeitet. Blockly kam nie in Frage. Mit 2 Monaten stehst Du ungefähr da, wo ich vor 2 Jahren stand. Insofern gibts ja auch noch einiges für Dich zu entdecken und begreifen. Insbesondere wenn man tiefer einsteigt ist diese Produkt echt genial und verstehe es bis heute nicht, wie die IBM so etwas dann quasi kostenlos der Open Source Community überlassen hat.
-
@mickym said in NR crasht wegen Huejay timeout - warum?:
@schmetterfliege sagte in NR crasht wegen Huejay timeout - warum?:
Die Function Nodes sind noch "Relikte" aus der Zeit als ich mit NR angefangen habe (2 Monate?) und bevor du mir die ganzen Tricks, Tipps und Kniffe gezeigt hast.
Ich hatte bloß noch nicht die Muse alles zu überarbeiten/verbessern.
Die beiden Functions in diesem Beispiel werde ich definitiv mit einer Change Node ersetzen. Allein schon weil das Board sonst irgendwann vor lauter Nodes zum Urwald wirdNa 2 Monate - dann ist das alles OK. Ich habe auch viel gelernt und lerne noch dazu. Ich habe allerdings sofort und nur mit NodeRed unter dem iobroker gearbeitet. Blockly kam nie in Frage. Mit 2 Monaten stehst Du ungefähr da, wo ich vor 2 Jahren stand. Insofern gibts ja auch noch einiges für Dich zu entdecken und begreifen. Insbesondere wenn man tiefer einsteigt ist diese Produkt echt genial und verstehe es bis heute nicht, wie die IBM so etwas dann quasi kostenlos der Open Source Community überlassen hat.
Das ist von IBM? Boa sind die doof :D.
Mit NR hatte ich mich anfangs gar nicht beschäftigt, weil ich unsinnigerweiße dachte das wäre quasi ein "Konkurrent" bzw. eine Alternative zu IoBroker. Erst als mir klar war, dass man die beiden Systeme ja wunderbar vereinen kann, hab ich angefangen mal reinzuschauen - und mich sofort verliebt.
VIS und Blockly waren nicht doof, aber... alleine das Verbinden der Nodes... ich glaube ich könnte den ganzen Tag einfach nur Nodes miteinander verbinden weil das so geil ist :D. -
Ach menno
Wäre ich mal 2 Stunden länger wach geblieben...
-
@schmetterfliege Deaktiviere halt die iobroker In Node mit dem Tradfri Button und schau mal, ob damit dieser Fehler wieder dauerhaft verschwindet und dann hab ich Dir ja ein paar Tipps gegeben, wie Du den Flow noch optimieren kannst.
Als nächstes wäre ja dann mal ein Logeintrag zu schreiben, wenn die Tradfri Datenpunkte was ausspuken und ob das zeitlich mit den Abstürzen in einen zeitlichen Zusammenhang zu bringen sind.
-
@mickym
Den hatte ich ja noch optimiert, das ist ja das traurige daran :D.EDIT: die Lichter über iob steuern kommt aktuell noch nicht in Frage, weil ich dann den hue extended Adapter wieder aktivieren müsste -> wenn NR und iob Hue steuern hatte das glaube ich auch recht oft für Timeouts gesorgt.
Dann logge ich erstmal nur den Tradfri Datenpunkt.
-
@schmetterfliege Na im Eingangsposting hast Du es aber mit den Buttons in Verbindung gebracht und dann stimmt was an den Nachrichten nicht, die DU in die HUE Nodes schickst.
-
Hast Du die Function Nodes gegen ein Objekt aus einer Change Node ausgetauscht?
-
Es kann auch eine andere Eigenschaft des msg. Objektes aus dem Datenpunkt des Buttons stören, hast Du schon mal - ggf. einzelne Eigenschaften löschen.
-
Und hoffentlich kommen aus Deiner In-Node ein Value und kein Object raus.
-
-
Jap, habs durch eine Change Node ausgetauscht gehabt.
Da sind eigentlich nur die Standard Eigenschaften drin:
Und ja, die In Node spuckt ein Value aus, kein Objekt
(Das Objekt sieht man jetzt nur weil die Debug Node das ganze Object anschaut, im Payload ist aber nur der Value)Hab jetzt trotzdem mal eine Change Node vorne dran gehängt die alles außer dem Payload löscht, und zusätzlich logge ich jetzt mit einer Function Node, wenn die IN Node einen Wert liefert.
Jetzt muss ich bloß noch warten bis es wieder crasht^^
-
Tja... vor ner halben Stunde ist es wieder 3 mal direkt hintereinander gecrasht, vom Button kam aber definitiv NICHTS in NR an.
-
@schmetterfliege Ok - dann musst Du Dich wohl auf die Suche nach weiteren Triggern machen und/oder einzelen HUE Nodes deaktivieren, um den Fehler einzugrenzen. Aber zumindest weißt Du jetzt, dass es doch nichts mit dem Button zu tun hat, obwohl Du das ja zu Beginn vermutet hast. Das ist doch auch schon mal eine wertvolle Erkenntnis.
-
Falls ich morgen dazu komme werde ich huemagic wieder entfernen und hue-extended im iobroker wieder aktivieren um darüber die Lichter wieder zu steuern.
Bei huemagic war das letzte Update vor 14 Monaten. Da wird nix mehr kommen -
Hab mal bei einem Raum angefangen den Flow anzupassen, und soweit funktioniert das auch.
Allerdings habe ich jetzt noch 2 Probleme, wobei das erste eher eine Unannehmlichkeit als ein Problem ist:
Das Licht steuere ich über die Buttons:
Funktioniert auch, und die Werte die ich in der Übersicht angezeigt bekomme updaten sich auch.
Nur habe ich da einen ziemlichen Delay, wenn das Licht nicht über diese Buttons gesteuert wird.
Allerdings habe ich einen ziemlichen Delay wenn ich das Licht nicht über iobroker steuere, sondern über die App.
Liegt logischerweiße daran, dass hue-extended die Werte nur alle x Sekunden abgreift.
Bei Huemagic war das immer instant. Ist halt leicht suboptimal - aber funzt ja...Das "richtige" Problem ist dass der Farb Selektor nicht geupdated wird, außer ich steuer mit ihm selbst.
So wie ich das sehe kann ich dem zwar einen Input geben, er übernimmt den dann aber nicht in der Anzeige.
Also wenn ich die Farbe über die App auf Grün ändere, bleibt der Selector auf Blau. Der wechselt nur auf die Farbe, die ich über ihn einstelle.
Bei on/off, Farbtemp und Helligkeit wird der Input übernommen. Also die Anzeige springt auf den Wert der tatsächlich eingestellt ist.@mickym
Bin ich richtig in der Annahme, dass das schlicht und ergreifend nicht supported ist bei der "color picker" Node?
Gibt es da einen Trick oder eine Alternative?