Seite 1 von 1
[gelöst] Falsche Farbtemperatur nach Einschalten
Verfasst: 9. Jan 2022 11:18
von oliverbaush
Moin zusammen,
ich habe mir für die Farbtemperatur einen Dimmer gebaut, der den Regelbereich zwischen 3000K-6500K abdeckt. Über eine Rule wird beim Ändern des Dimmers die Farbtemperatur in der Gruppe als Wert gesetzt.
Code: Alles auswählen
var CTValue;
var CTState
CTState = itemRegistry.getItem('ReglerFarbtemperatur').getState();
CTValue = CTState * 35;
CTValue = CTValue + 3000;
events.sendCommand('GroupLightCT', CTValue);
Damit kann ich per Dimmer die Farbtemperatur aller Lampen in der Gruppe setzten. Das funktioniert bei allen Lampen.
Bei zwei ist es aber so, dass nach dem Aus- und Einschalten die Farbtemperatur auf 6500K gesetzt wird.
Zum Testen habe ich einen Item GlobaleCT erstellt, was mit dem Wert der CT jede Minute aktualisiert wird und die Gruppe per sendCommand setzt. Das klappt aber nicht zuverlässig, die Werte der betroffenen ändern sich immer wieder auf 6500K (scheint zu toggeln).
Hab ich was generelles übersehen? (System ist noch am entstehen...) Danke!
Update: Persistenz ist über mariadb umgesetzt, wenn ich die Lampe ausschalte, steht in der DB der korrekte Wert drin, sobald ich einschalte, dauert es ca 3 Sekunden, dann wird der korrekte Wert auf 6500 geändert.
Re: Falsche Farbtemperatur nach Einschalten
Verfasst: 9. Jan 2022 14:07
von udo1toni
Um welche Hardware handelt es sich? Kann es sein, das die Lampe selbst grundsätzlich mit 6500K aufwacht?
Re: Falsche Farbtemperatur nach Einschalten
Verfasst: 9. Jan 2022 14:56
von oliverbaush
die betroffenen Lampen sind beides LivarnoLux HG06492A, im ConBee II werden sie unterschiedlich angezeigt... Vendor _TZ3000_el5kt5im und Model TS0502A bzw HG06492A
Hab grade eine Rezension gefunden, dass die Livarno nicht den letzten Zustand speichert, allerdings ist nicht klar um welchen Typ es sich handelt (
https://www.lidl.de/p/livarno-lux-leuch ... p100306622). Kann sein, dass das die Ursache ist
Kann man das über eine Regel abfangen? In dem Zusammenhang war ich über folgenden Post gestolpert
viewtopic.php?p=40792#p40792 -> Hatte das probiert, aber bisher erfolglos
Re: Falsche Farbtemperatur nach Einschalten
Verfasst: 9. Jan 2022 17:51
von HiG
oliverbaush hat geschrieben: ↑9. Jan 2022 14:56
Kann sein, dass das die Ursache ist
Das zwei unterschiedliche Leuchten unterschiedlich reagieren? Naja... schon
Re: Falsche Farbtemperatur nach Einschalten
Verfasst: 9. Jan 2022 20:37
von udo1toni
Solange Du die Lampe über openHAB einschaltest, sollte es möglich sein, die Farbtemperatur vor dem Einschalten zu senden. Wobei das die Lampe auch unterstützen muss, ob Deine das tun, weiß ich natürlich nicht.
Kniffliger wird es, wenn Du die Lampe außerhalb openHAB steuerst, dann muss openHAB mitbekommen, dass die Lampe eingeschaltet wurde und nachträglich die Farbe anpassen. Das wird zwangsläufig verzögert geschehen.
Gelöst Re: Falsche Farbtemperatur nach Einschalten
Verfasst: 10. Jan 2022 13:42
von oliverbaush
Sorry, das kleine Detail hatte ich vergessen. Die Lampe wird "normal" über einen Schalter ein und ausgeschaltet.
Eine Lösung habe ich jetzt
-Jeweils ein dummy Switch-Item mit ExpiryTimer (5s) für die betroffenen Schalter erstellt (3s waren zu kurz und haben nicht zuverlässig funktioniert)
-Regel, die den Timer Triggert, Input ist Einschalten der Lampe, Output -> schickt ein Postupdate an das Timer-Item
Code: Alles auswählen
configuration: {}
triggers:
- id: "1"
configuration:
itemName: BrightnessDusche
type: core.ItemStateChangeTrigger
conditions: []
actions:
- inputs: {}
id: "2"
configuration:
type: application/vnd.openhab.dsl.rule
script: TimerDuscheDecke.postUpdate(ON)
type: script.ScriptAction
Weitere Regel, Trigger ist Ablauf des Timer, Output -> CT der jeweiligen Lampe per Postupdate setzt
Code: Alles auswählen
configuration: {}
triggers:
- id: "2"
configuration:
itemName: TimerDuscheDecke
state: OFF
previousState: ON
type: core.ItemStateChangeTrigger
conditions: []
actions:
- inputs: {}
id: "1"
configuration:
type: application/javascript
script: |-
var CTValue;
CTValue = itemRegistry.getItem('GlobalCT').getState();
events.postUpdate('DuscheDecke_ColorTemperature', CTValue);
type: script.ScriptAction
Danke für das Feedback!
Folgende Quellen waren hilfreich:
https://community.openhab.org/t/using-e ... mer/127771
viewtopic.php?p=40792#p40792
Re: [gelöst] Falsche Farbtemperatur nach Einschalten
Verfasst: 10. Jan 2022 20:20
von udo1toni
oliverbaush hat geschrieben: ↑10. Jan 2022 13:42
Die Lampe wird "normal" über einen Schalter ein und ausgeschaltet.
Dann kann das nicht automatisch funktionieren. Immer dran denken; die smarten Geräte haben RAM und Flashspeicher verbaut. Eine Flashzelle hält mit Glück ein paar hundert Schreibzyklen, danach ist Ende. Entsprechend können solche Geräte allenfalls umprogrammiert werden, mit einer bestimmten (festen) Farbtemperatur aufzuwachen, sich aber keinesfalls über den Stromausfall hinaus jeweils die "letzte" Einstellung merken.