NEWS
[Vorlage] LightControl
-
@freevalley sagte in [Vorlage] LightControl:
leider ist nun die Funktion adaptiveCt an, obwohl diese in den Optionen auf false steht? Nun springt das Licht von hell nach dunkel.
Noch ein Bug!?Hmm, eigentlich nicht, da ist für jeden mode extra ne Abfrage drin, außerdem ändert adaptiveCt die Farbtemperatur, nicht die Helligkeit. Und Du müßtest tagsüber jede Minute ne automatische Veränderung des ct Datenpunktes in den Objekten sehen, is das der Fall? Passiert das bei allen Gruppen oder nur einer oder bestimmten?
PS: Ist das eine reine Farblampe ohne ct und es sind Substitute Colors für warm/kaltweiss eingetragen?
-
Ahh, ok!
Im Log ist dies jede Minute zu finden:
javascript.0 (1513890) script.js.Allgemein.Lichtscript: adaptiveCtLinear=4319 adaptiveCtSolar=4548 adaptiveCtSolarInterpolated=4104
Allerdings ändert sich der ct Wert nicht minütlich in den Objekten. Letzte Änderung gestern Mittag auf 3300 K.Die Lampe wird mit Wert 99 angeschaltet und wird dann sofort auf den Wert 10 gesetzt, bis sie ausgeht. Manchmal wird sie aber auch wieder heller!?
Ein Hardwareproblem kann ich ausschließen. Beim manuellen einstellen des Wertes 99 bleibt alles "stabil".Ich habe bisher nur unsere Bad Lampe im Script integriert.
Snip:
const LightGroups = {
0: {
description: "Bad",
lights: {
0: {
description: "Deckenlampe",
power: { oid: "zwave2.0.Node_038.Multilevel_Switch.targetValue_001", onVal: 99, offVal: 0 },
bri: { oid: "zwave2.0.Node_038.Multilevel_Switch.targetValue_001", minVal: 0, maxVal: 99, defaultVal: 99 },
ct: { oid: "", minVal: 454, maxVal: 250 },
sat: { oid: "", minVal: null, maxVal: null },
modeswitch: { oid: "", whiteModeVal: false, colorModeVal: true },
color: { oid: "", type: "", default: "" }
}
},
sensors: {
0: { id: 'zwave2.0.Node_039.Binary_Sensor.motion' },
1: { id: 'javascript.0.LichtStayOn' }} },
};
Das ist immer noch der Fibaro Dimmer, der kann nur aus/an und Dimmen.
Log:
09:45:32.298 info javascript.0 (1513890) script.js.Allgemein.Lichtscript: Reaching SummarizeSensors, Group=0
09:45:32.299 info javascript.0 (1513890) script.js.Allgemein.Lichtscript: Gruppe=0 Sensor 0 with target zwave2.0.Node_039.Binary_Sensor.motion has value true
09:45:32.299 info javascript.0 (1513890) script.js.Allgemein.Lichtscript: Summarized IsMotion for Group 0 = true
09:45:32.299 info javascript.0 (1513890) script.js.Allgemein.Lichtscript: Motion for Group 0 detected, switching on
09:45:32.300 info javascript.0 (1513890) script.js.Allgemein.Lichtscript: Reaching GroupPowerOnOff for Group 0, OnOff=true rampOn=false - {"enabled":false,"time":10,"switchOutletsLast":true} rampOff=true - {"enabled":true,"time":15,"switchOutletsLast":false}
09:45:32.300 info javascript.0 (1513890) script.js.Allgemein.Lichtscript: Normales anschalten ohne Ramping für Bad
09:45:32.332 info javascript.0 (1513890) script.js.Allgemein.Lichtscript: A Switching 0 zwave2.0.Node_038.Multilevel_Switch.targetValue_001 to: true
09:45:32.335 info javascript.0 (1513890) script.js.Allgemein.Lichtscript: Reaching AutoOffTimed for Group 0 set time=120 LightGroups[Group].isMotion=true LightGroups[Group].autoOffTimed.noAutoOffWhenMotion=true
09:45:32.335 info javascript.0 (1513890) script.js.Allgemein.Lichtscript: Timeout for Group=0 deleted.
09:45:32.339 info javascript.0 (1513890) script.js.Allgemein.Lichtscript: Warmweiss
09:45:39.747 info javascript.0 (1513890) script.js.Allgemein.Lichtscript: Triggered Luxsensor zwave2.0.Node_040.Multilevel_Sensor.illuminance new value is 47
09:45:39.747 info javascript.0 (1513890) script.js.Allgemein.Lichtscript: Reaching RefreshGenericLuxValues
09:46:03.662 info javascript.0 (1513890) script.js.Allgemein.Lichtscript: Reaching SummarizeSensors, Group=0
09:46:03.662 info javascript.0 (1513890) script.js.Allgemein.Lichtscript: Summarized IsMotion for Group 0 = false
09:47:32.340 info javascript.0 (1513890) script.js.Allgemein.Lichtscript: Reaching GroupPowerOnOff for Group 0, OnOff=false rampOn=false - {"enabled":false,"time":10,"switchOutletsLast":true} rampOff=true - {"enabled":true,"time":15,"switchOutletsLast":false}
09:47:32.340 info javascript.0 (1513890) script.js.Allgemein.Lichtscript: Ausschalten mit Ramping und einfache Lampen zuerst für Bad
09:47:34.342 info javascript.0 (1513890) script.js.Allgemein.Lichtscript: Loopcount=1 - Rampsteps=10 RampOffTime= 15
09:47:36.342 info javascript.0 (1513890) script.js.Allgemein.Lichtscript: Loopcount=2 - Rampsteps=10 RampOffTime= 15
09:47:38.343 info javascript.0 (1513890) script.js.Allgemein.Lichtscript: Loopcount=3 - Rampsteps=10 RampOffTime= 15
09:47:40.343 info javascript.0 (1513890) script.js.Allgemein.Lichtscript: Loopcount=4 - Rampsteps=10 RampOffTime= 15
09:47:42.344 info javascript.0 (1513890) script.js.Allgemein.Lichtscript: Loopcount=5 - Rampsteps=10 RampOffTime= 15
09:47:44.344 info javascript.0 (1513890) script.js.Allgemein.Lichtscript: Loopcount=6 - Rampsteps=10 RampOffTime= 15
09:47:46.344 info javascript.0 (1513890) script.js.Allgemein.Lichtscript: Loopcount=7 - Rampsteps=10 RampOffTime= 15
09:47:48.345 info javascript.0 (1513890) script.js.Allgemein.Lichtscript: Loopcount=8 - Rampsteps=10 RampOffTime= 15
09:47:50.344 info javascript.0 (1513890) script.js.Allgemein.Lichtscript: Loopcount=9 - Rampsteps=10 RampOffTime= 15
09:47:52.345 info javascript.0 (1513890) script.js.Allgemein.Lichtscript: Loopcount=10 - Rampsteps=10 RampOffTime= 15
09:47:52.353 info javascript.0 (1513890) script.js.Allgemein.Lichtscript: F Switching 0 zwave2.0.Node_038.Multilevel_Switch.targetValue_001 to: falseSorry für den ganzen Stress mit mir und danke für deine Mühe!!
BG TIno
-
@freevalley sagte in [Vorlage] LightControl:
Im Log ist dies jede Minute zu finden:
javascript.0 (1513890) script.js.Allgemein.Lichtscript: adaptiveCtLinear=4319 adaptiveCtSolar=4548 adaptiveCtSolarInterpolated=4104Ja, das ist soweit korrekt, das logging wird aber ab der nächsten Version deaktiviert sein, war nur weil ich an der Funktion grad gearbeitet hab (gibt jetzt 3 verschiedene Kurven für adaptiveCt)
Allerdings ändert sich der ct Wert nicht minütlich in den Objekten. Letzte Änderung gestern Mittag auf 3300 K.
Wenn sich der ct Wert in den Objekt NICHT ändert, is das ok, Du hast ja adaptiveCt nicht aktiviert. Was allerdings dann seltsam ist, wer/was hat gestern mittag die 3300 eingestellt? Is das heute auch passiert?
bri: { oid: "zwave2.0.Node_038.Multilevel_Switch.targetValue_001", minVal: 0, maxVal: 99, defaultVal: 99 },
Bin nicht sicher obs daran evtl. liegt, aber verwende bitte die Werte nicht doppelt, d.h. ändere die Zeile zu:
bri: { oid: "zwave2.0.Node_038.Multilevel_Switch.targetValue_001", minVal: 1, maxVal: 98, defaultVal: 98 },
Heut abend kommt wieder ne neue Version mit etlichen fixes, evtl. is das Problem dann ja weg. Im geposteten Log seh ich grad nix ungewöhnliches.
Sorry für den ganzen Stress mit mir und danke für deine Mühe!!
Kein Thema, bin froh wenn wer testet, grad mit so etwas ungewöhnlichen Konfigs, ich habs ja auch am laufen, mit vielen Lampen und Gruppen und nahezu keine Fehler mehr, deswegen isses spannend was da bei anderen passiert..
-
Danke. Ich werd´s testen.
bri: { oid: "zwave2.0.Node_038.Multilevel_Switch.targetValue_001", minVal: 1, maxVal: 98, defaultVal: 98 },
Das war deine Idee, um RampOff funktionsfähig zu machen
-
@freevalley sagte in [Vorlage] LightControl:
bri: { oid: "zwave2.0.Node_038.Multilevel_Switch.targetValue_001", minVal: 1, maxVal: 98, defaultVal: 98 },
Das war deine Idee, um RampOff funktionsfähig zu machenJa klar, aber nicht die Werte doppelt zu verwenden ;). Glaub aber eh kaum dass das das Problem ist, aber so isses sauberer.
-
Ich werde den Dimmer und Bewegungssensor im Bad austauschen, ich hab die Nase voll. Viele meiner Probleme scheinen an den ZWave Geräten zu liegen.
Ich habe zum Test mal einen EnOcean PIR Sensor bestellt. Leider ist der nicht ausgelöste Zustand true und Bewegung false. Lässt sich das im Script berücksichtigen?BG Tino
-
@freevalley sagte in [Vorlage] LightControl:
Lässt sich das im Script berücksichtigen?
Bisher nicht, stand aber eh auf meiner ToDo Liste, zieh ichs halt vor, dauert trotzdem evtl. paar Tage, je nachdem wie ich Zeit finde.
-
Ich warte gern, dann schon mal vielen Dank im Voraus.
-
@freevalley So, neue Version is in der Dev Branch, Du mußt jetzt zusätzlich in den Gruppensettings die Werte für die Sensoren angeben.
-
Funktioniert 1a, Danke!!! Eine Frage, ist es "normal" das beim aktiven RampOff keine Bewegung zum reaktivieren der Lampen funktioniert?
-
@freevalley Wie genau meinst das? Meinst grundsätzlich wenn RampOff aktiviert ist, oder meinst wenn er grade beim "rampen" ist? Ersteres wär ungewollt, letzteres eigentlich gewollt.
-
Ich meinte eigentlich letzteres. Mir ist es nun schon mehrfach passiert, dass ich in den Flur gegangen bin und er gerade am "rampen" war. Dann stehe ich mehrere sek. im dunklen.
-
@freevalley sagte in [Vorlage] LightControl:
Ich meinte eigentlich letzteres. Mir ist es nun schon mehrfach passiert, dass ich in den Flur gegangen bin und er gerade am "rampen" war. Dann stehe ich mehrere sek. im dunklen.
Verstehe. Muß mal guggen wie ich das mach. Das Problem ist, dass beim einschalten überprüft wird ob die Gruppe schon an ist beim schalten und dann nix gemacht wird. Und solange er am "rampen" ist, gilt es als noch an.
-
Danke für deine Mühe!
-
Hallo,
ich teste grade dein Skript (developer), mit den Zigbee Lampen klappt das super. Ich habe ein paar Homematic Dimmer, die keinen power DP haben, nur level. Damit macht das Einschalten der Lampen Probleme, eine Idee wie ich das lösen kann. Aktuell sieht das so aus:
description: "Kronleuchter",
power: { oid: 'hm-rpc.1.xxxxx.1.LEVEL', onVal: 100, offVal: 0 },
bri: { oid: 'hm-rpc.1.xxxxx.1.LEVEL'/EG Esszimmer Kronleuchter:1 LEVEL/, minVal: 0, maxVal: 100, defaultVal: 100 },
ct: { oid: "", minVal: 499, maxVal: 155 },
sat: { oid: "", minVal: null, maxVal: null },
modeswitch: { oid: "", whiteModeVal: true, colorModeVal: false },
color: { oid: "", type: "", default: "" }Viele Grüße
Thorsten -
@tratonis sagte in [Vorlage] LightControl:
Damit macht das Einschalten der Lampen Probleme, eine Idee wie ich das lösen kann.
Sieht soweit ok für mich aus, sollte eigentlich klappen. Kannst mal versuchen bei bri das so zu machen:
bri: { oid: 'hm-rpc.1.xxxxx.1.LEVEL'/EG Esszimmer Kronleuchter:1 LEVEL/, minVal: 1, maxVal: 99, defaultVal: 99 },
Und was genau heißt Probleme? Geht gar nicht? Geht manchmal? Geht, aber macht komische Sachen? Bisserl genauer bitte, im idealfall logging anschalten und log beifügen.
-
Es macht eher komische Sachen.
Das Licht geht auf 100% an, irgendwann wird bri dann runtergesetzt, Ich denke bei Reaching AdaptiveBri.
Verlängert "kein Autooff bei Bewegung die AutoOffTime" um die AutoOffTime? Das wäre optimal.Hab das Log mal auf Group 2 gefiltert.
2021-10-21 07:24:55.919 info script.js.Haus_allgemein.LightControl2: Reaching AutoOffTimed for Group 2 set time=300 LightGroups[Group].isMotion=true LightGroups[Group].autoOffTimed.noAutoOffWhenMotion=true 2021-10-21 07:24:55.919 info script.js.Haus_allgemein.LightControl2: Timeout for Group=2 deleted. 2021-10-21 07:24:55.919 info script.js.Haus_allgemein.LightControl2: Motion for Group 2 detected, switching on 2021-10-21 07:24:55.919 info script.js.Haus_allgemein.LightControl2: Reaching GroupPowerOnOff for Group 2, OnOff=true rampOn=false - {"enabled":false,"time":10,"switchOutletsLast":true} rampOff=false - {"enabled":false,"time":10,"switchOutletsLast":false} 2021-10-21 07:24:55.919 info script.js.Haus_allgemein.LightControl2: Normales anschalten ohne Ramping für Esszimmer 2021-10-21 07:24:56.071 info script.js.Haus_allgemein.LightControl2: A Switching 0 hm-rpc.1.OEQ0106192.1.LEVEL to: true 2021-10-21 07:24:56.144 info script.js.Haus_allgemein.LightControl2: A Switching 1 hm-rpc.1.OEQ0570794.1.LEVEL to: true 2021-10-21 07:24:56.436 info script.js.Haus_allgemein.LightControl2: A Switching 2 hm-rpc.1.OEQ0106243.1.LEVEL to: true 2021-10-21 07:24:56.521 info script.js.Haus_allgemein.LightControl2: A Switching 3 hm-rpc.1.OEQ0570695.1.LEVEL to: true 2021-10-21 07:24:56.521 info script.js.Haus_allgemein.LightControl2: Reaching AutoOffTimed for Group 2 set time=300 LightGroups[Group].isMotion=true LightGroups[Group].autoOffTimed.noAutoOffWhenMotion=true 2021-10-21 07:24:56.521 info script.js.Haus_allgemein.LightControl2: Timeout for Group=2 deleted. 2021-10-21 07:24:56.522 info script.js.Haus_allgemein.LightControl2: Reaching WhiteSubstituteColor for Group2 = Esszimmer LightGroups[Group].power=true LightGroups[Group].color =#FFFFFF 2021-10-21 07:25:01.827 info script.js.Haus_allgemein.LightControl2: Warmweiss - ct=2700 (maxCt - minCt) / 4 + minCt=3650 (maxCt - minCt) / 4 * 3 + minCt=5550 2021-10-21 07:25:16.192 info script.js.Haus_allgemein.LightControl2: adaptiveCtLinear=0 adaptiveCtSolar=0 adaptiveCtSolarInterpolated=0 2021-10-21 07:25:16.198 info script.js.Haus_allgemein.LightControl2: Reaching ConvertKelvin 2021-10-21 07:25:16.221 info script.js.Haus_allgemein.LightControl2: Reaching ConvertKelvin 2021-10-21 07:25:16.271 info script.js.Haus_allgemein.LightControl2: Warmweiss - ct=2700 (maxCt - minCt) / 4 + minCt=3650 (maxCt - minCt) / 4 * 3 + minCt=5550 2021-10-21 07:25:40.133 info script.js.Haus_allgemein.LightControl2: Triggered Luxsensor alias.0.Helligkeiten.Helligkeit_Aussen.ACTUAL new value is 2 2021-10-21 07:25:40.133 info script.js.Haus_allgemein.LightControl2: Reaching RefreshGenericLuxValues 2021-10-21 07:25:40.135 info script.js.Haus_allgemein.LightControl2: Reaching AutoOnLux for Group:,2 enabled=false ,actuallux=2 ,minLux=50 LightGroups[Group].autoOnLux.dailyLock=false 2021-10-21 07:25:40.135 info script.js.Haus_allgemein.LightControl2: Reaching AutoOffLux, for Group=2 =Esszimmer 2021-10-21 07:25:40.135 info script.js.Haus_allgemein.LightControl2: Reaching AdaptiveBri for Group 2 actual Lux=2 generic lux=2 2021-10-21 07:25:40.135 info script.js.Haus_allgemein.LightControl2: Reaching SetBrightness, Group=2 Brightness=10 2021-10-21 07:25:55.995 info script.js.Haus_allgemein.LightControl2: Triggered linked Sensor alias.0.Bewegungsmelder.Esszimmer_Bewegungsmelder.ACTUAL new value is false 2021-10-21 07:25:55.996 info script.js.Haus_allgemein.LightControl2: Reaching SummarizeSensors, Group=2 2021-10-21 07:25:55.996 info script.js.Haus_allgemein.LightControl2: Summarized IsMotion for Group 2 = false 2021-10-21 07:26:16.192 info script.js.Haus_allgemein.LightControl2: adaptiveCtLinear=0 adaptiveCtSolar=0 adaptiveCtSolarInterpolated=0 2021-10-21 07:26:16.201 info script.js.Haus_allgemein.LightControl2: Reaching ConvertKelvin 2021-10-21 07:26:16.231 info script.js.Haus_allgemein.LightControl2: Reaching ConvertKelvin 2021-10-21 07:26:16.285 info script.js.Haus_allgemein.LightControl2: Warmweiss - ct=2700 (maxCt - minCt) / 4 + minCt=3650 (maxCt - minCt) / 4 * 3 + minCt=5550 2021-10-21 07:26:42.053 info script.js.Haus_allgemein.LightControl2: Triggered Luxsensor alias.0.Helligkeiten.Helligkeit_Aussen.ACTUAL new value is 1 2021-10-21 07:26:42.053 info script.js.Haus_allgemein.LightControl2: Reaching RefreshGenericLuxValues 2021-10-21 07:26:42.053 info script.js.Haus_allgemein.LightControl2: Reaching AutoOnLux for Group:,2 enabled=false ,actuallux=1 ,minLux=50 LightGroups[Group].autoOnLux.dailyLock=false 2021-10-21 07:26:42.053 info script.js.Haus_allgemein.LightControl2: Reaching AutoOffLux, for Group=2 =Esszimmer 2021-10-21 07:26:42.053 info script.js.Haus_allgemein.LightControl2: Reaching AdaptiveBri for Group 2 actual Lux=1 generic lux=1 2021-10-21 07:26:42.054 info script.js.Haus_allgemein.LightControl2: Reaching SetBrightness, Group=2 Brightness=10 2021-10-21 07:26:47.468 info script.js.Haus_allgemein.LightControl2: Triggered Luxsensor alias.0.Helligkeiten.Helligkeit_Aussen.ACTUAL new value is 2 2021-10-21 07:26:47.468 info script.js.Haus_allgemein.LightControl2: Reaching RefreshGenericLuxValues 2021-10-21 07:26:47.468 info script.js.Haus_allgemein.LightControl2: Reaching AutoOnLux for Group:,2 enabled=false ,actuallux=2 ,minLux=50 LightGroups[Group].autoOnLux.dailyLock=false 2021-10-21 07:26:47.468 info script.js.Haus_allgemein.LightControl2: Reaching AutoOffLux, for Group=2 =Esszimmer 2021-10-21 07:26:47.468 info script.js.Haus_allgemein.LightControl2: Reaching AdaptiveBri for Group 2 actual Lux=2 generic lux=2 2021-10-21 07:26:47.469 info script.js.Haus_allgemein.LightControl2: Reaching SetBrightness, Group=2 Brightness=102021-10-21 07:27:16.192 info script.js.Haus_allgemein.LightControl2: adaptiveCtLinear=0 adaptiveCtSolar=0 adaptiveCtSolarInterpolated=0 2021-10-21 07:27:31.985 info script.js.Haus_allgemein.LightControl2: Warmweiss - ct=2700 (maxCt - minCt) / 4 + minCt=3650 (maxCt - minCt) / 4 * 3 + minCt=5550 2021-10-21 07:28:12.181 info script.js.Haus_allgemein.LightControl2: Group 2 timed out, switching off. Motion=false 2021-10-21 07:28:12.182 info script.js.Haus_allgemein.LightControl2: Reaching GroupPowerOnOff for Group 2, OnOff=false rampOn=false - {"enabled":false,"time":10,"switchOutletsLast":true} rampOff=false - {"enabled":false,"time":10,"switchOutletsLast":false} 2021-10-21 07:28:12.182 info script.js.Haus_allgemein.LightControl2: Normales ausschalten ohne Ramping für Esszimmer 2021-10-21 07:28:12.196 info script.js.Haus_allgemein.LightControl2: B Switching 0 hm-rpc.1.OEQ0106192.1.LEVEL to: false 2021-10-21 07:28:12.232 info script.js.Haus_allgemein.LightControl2: B Switching 1 hm-rpc.1.OEQ0570794.1.LEVEL to: false 2021-10-21 07:28:12.302 info script.js.Haus_allgemein.LightControl2: B Switching 2 hm-rpc.1.OEQ0106243.1.LEVEL to: false 2021-10-21 07:28:12.366 info script.js.Haus_allgemein.LightControl2: B Switching 3 hm-rpc.1.OEQ0570695.1.LEVEL to: false
-
@tratonis sagte in [Vorlage] LightControl:
Das Licht geht auf 100% an, irgendwann wird bri dann runtergesetzt, Ich denke bei Reaching AdaptiveBri.
Naja, das is ja soweit auch logisch und works as designet. Wenn Du mit bri 100 die Lampe anmachst, geht se erst mal natürlich auf 100% und regelt dann runter.
Was mir eher Sorgen macht und ins Auge springt, ist Zeile 42:2021-10-21 07:26:47.469 info script.js.Haus_allgemein.LightControl2: Reaching SetBrightness, Group=2 Brightness=102021-10-21 07:27:16.192 info script.js.Haus_allgemein.LightControl2: adaptiveCtLinear=0 adaptiveCtSolar=0 adaptiveCtSolarInterpolated=0
Brightness=102021-10-21 07:27:16.192 is natürlich sinnfrei, die Frage ist jetzt wo das her kommt?
Verlängert "kein Autooff bei Bewegung die AutoOffTime" um die AutoOffTime? Das wäre optimal.
Ein klares jaein . Es gibt zwei Modi aktuell (Einstellbar z.B. bei javascript.0.LightControl2.0.autoOffTimed.noAutoOffWhenMotionMode) Beim Modus 0 wird kurz vor dem ausschalten auf Bewegung geprüft und ggfs. der timeout neu gestartet. Bei Mode1 wird der timeout nach jeder gemeldeten Bewegung neu gestartet.
-
@pittini said in [Vorlage] LightControl:
Brightness=102021-10-21 07:27:16.192 is natürlich sinnfrei, die Frage ist jetzt wo das her kommt?
Ich fürchte das im ein c&p Fehler, aus 2 Zeilen mach ein, sorry
@pittini said in [Vorlage] LightControl:
Naja, das is ja soweit auch logisch und works as designet. Wenn Du mit bri 100 die Lampe anmachst, geht se erst mal natürlich auf 100% und regelt dann runter.
Ist logisch, dauert aber eine knappe Minute bis die Helligkeit angepasst wird, kann man direkt nach dem Einschalten die Helligkeit prüfen?
-
@tratonis sagte in [Vorlage] LightControl:
Ist logisch, dauert aber eine knappe Minute bis die Helligkeit angepasst wird, kann man direkt nach dem Einschalten die Helligkeit prüfen?
Schau ich mir an, sollte machbar sein.