Adaptives Licht aka HomeKit

Hey starke Community, schön ist es wenn das Licht zuhause dem Sonnenstand folgt. Dies hat wohl Apple auch für sich erkannt und mit iOS 14.3 das Adaptive Licht herausgebracht dies allerdings mit kompatiblen Lampen wie Hue / Eve.

Nun nicht alle Lampen die ich habe sind kompatibel daher die Idee, dies via Homeegramm nachzustellen. Soweit so gut …mein Ansatz ist:

  1. mehrere Homegramme für verschiedene Lampen
  2. Auslöser auf Experten Interval stellen um alle 5Min die Lampen zu steuern und zwar Dimmer und Farbtemperatur entweder alle 5Min um 2% senken oder erhöhen und alle 5Min Kelvinzahl um 30 senken oder erhöhen. Das ganze bis zu 72 Wiederholungen 6std / 5Min = 72 Wiederholungen
  3. nach 72Wiederholungen Homegramme stoppen und ein anderes abspielen lassen um den Dimmwert bspw. umzukehren und so Mittagszeit volle Helligkeit anzusteuern…
  4. mit zusätzlichen Homeegrammen steuere ich den Start oder Ende der einzelnen Homeegramme

Boah gar nicht so einfach zu erklären daher füge ich ein paar Bilder hinzu.

Das größte Problem ist, dass die Homegramme mit dem Experten Interval immer einen Zeitpunkt in der Vergangenheit haben und somit starten diese nicht ergo ich muss sie manuell immer auf sofort umstellen damit sie anfangen zu laufen…dann klappt alles mit dem automatischen Dimmwert / Farbtemperatur.

Habt ihr Ideen - wie dieses adaptive Licht am besten umzusetzen ist …ps auch so dass wenn die Dimmwerte verändert werden und die Lampen nicht eingeschaltet sind diese nicht automatisch eingeschaltet werden sondern der Dimmwerte darf sich nur verändern wenn die Lampe an ist.

Das machen diverse Leuchtmittel automatisch. Das kann homee nicht verhindern oder per HG steuern.

Das ein Dimmwert nur gesetzt wird, wenn die Lampe an ist, kannst Du über eine Bedingung wie in Deinem Beispiel oben vorgeben.

Das einfachste wäre es den Dimmwert in einer variable festzuhalten.
Und dann, wenn Lampe wird eingeschaltet dimmwert gleich variable.
Und wenn Variable sich ändert und Lampe ist eingeschaltet dann Dimmwert = Variable.
Da homee keine Variablen out of the box can, wäre eine Möglichkeit vhih oder du opferst eine Lampe die die Variable ersetzt und als Vorlage für alle anderen Lampen dient.

1 „Gefällt mir“

Danke euch für eure Gedanken…ich hab das mit den Variablen über ioBroker ausprobiert und eigtl lief alles so lala …irgendwann fingen an die Lampen zu spinnen und an und aus zu gehen ein schönes Disco im Wohnzimmer …nicht gerade förderlich für den Faktor Happy wife happy life :joy::rofl: ich vermute der ioBroker und der Homee Adapter wollten nicht wirklich Freunde werden…vllt aber hängt das damit zusammen dass ich noch über NodeRed alle die Lampen in mein HomeKit rein hole.

Ich teste das mit der Variablen in Homee und berichte mal …wenn ich eine Lösung gefunden habe.

die Variablen des armen Mannes hier erklärt

1 „Gefällt mir“

Damit kannst aber doch nur eine boolesche variable abbilden, oder nicht?!

Das lässt sich doch über den Status eines Dummy-HG‘s doch genau so gut abbilden, oder nicht?

Hier wäre aber eine numerische Variable zwischen 0-100 von Nöten.

Ich hab das ganz über vhih und node red gelöst.
in Node Red berücksichtige ich dann auch die nautischen Sonnenaufgangs und Untegangszeiten sowie den Zenit. Nachts liegt die Farbtemeratur bei 2100 K zum Zeitpunkt des Zenits bei 4000 K. Die Dimmwerte berücksichtige ich dabei nicht, da ich diese je nach Schaltzustand lieber fixiert haben möchte.
Die Übertragung zu homee läuft dann über eine virtuelle Lampe (nennen wir sie mal Lampe X), die jede Minute einen aktualiserte Farbtemp bekommt.

In homee habe ich dann für jede Lampe (Lampe Y) ein HG angelegt.
Wenn Y eingeschaltet wird oder Farbtemperatur sich bei X ändert
Aber nur wenn Y eingeschaltet ist
dann stelle die Farbtemperatur von Y auf die von X.

Habe das schon einn wenig länger so am laufen und muss sagen dass ich das echt angenehm finde.

2 „Gefällt mir“

Ui ui ui das klingt spannend…ich hab das heute mal bissl getestet und habe so ähnlichen Ansatz via iobroker und einem Skript mit Datenpunkten als Variablen umgesetzt allerdings eine Lampe dafür geopfert die die Werte in Homee bekommt und diese zapfe ich dann mit anderen Lampen an per Homeegramm. Dabei habe ich den Auslöser Experten Interval eingestellt (alle 30Min) damit auch bereits eingeschaltete Lampen die Werte anzapfen und nicht nur wenn sie eingeschaltet werden.

Zusätzlich habe ich noch extra Homeegramme erstellt die diesen Anzapf-Homeegramm aktivieren und deaktivieren und zwar ziemlich simple wenn Wohndecke an dann aktiviere Homegramme Anzapfen …

Magst du mal deinen Node Red Flow mit uns teilen???

Danke und Grüße

Ich versucht den nachher Mal hoch zu laden.:+1:t2:

Den Zeitintervall Auslöser kannst du doch weg lassen, wenn du als Trigger auswählst „wenn sich der Wert bei der Lampe die den Wert von iobroker bekommt ändert“

Lool joar stimmt … danke!

So musste noch ein paar Sachen schick machen, da der flow halt so gewachsen war wie er dann auch lief :

Im ersten Step wird nach einem Neustart/Deploy und beim Tageswechsel die globale atro erstellt die die Zeiten für Sonnenauf- und -untergang enthält.

Als zweites wird daraus einmal täglich/Neustart/deploy das flow Object cs generiert in dem ein Array „Arr“ enthalten ist, das für jede Minute zwischen Sonnenaufgang und Untergang einen Wert enthält.

Im dritten stepp wird der aktuelle Wert aus dem Array heraus gesucht und an das homee device übergeben.

Da lässt sich sicherlich noch viel verkürzen - gerade step 1 und 2 lassen sich garantiert zusammen fassen, aber ich brauchte das astro Object eh und hab es dann halt genutzt. :sweat_smile:

Ach ja neben evtl. dem homee node werden noch die folgenden benötigt:

  • node-red-contrib-astrodata
  • node-red-contrib-easing
  • node-red-contrib-moment

Der Flow:
color_shift.json.pdf (13,2 KB)

Durch den Easing Node sieht der Farbtemperaturverlauf dann z.B. so aus:

da lassen sich aber ganz unterschiedliche Kurven je nach belieben auswählen.

3 „Gefällt mir“

Blöde Frage dazu…gibt es einen Sensor der Kelvin messen kann.Ich hab da leider nichts gefunden.
Dann könnte man einfach das Tageslicht messen und die Lampen folgen lassen.

Vg