Closed sleiner closed 3 months ago
Versuch bitte mal, ob folgende paramsets gesendet werden können:
service: homematicip_local.put_paramset
data:
paramset_key: VALUES
paramset:
HUE: 44,
SATURATION: 0.66,
DURATION_VALUE: 111600,
RAMP_TIME_UNIT: 0,
RAMP_TIME_VALUE: 5,
LEVEL: 1.0,
device_address: XXX
channel: 1
service: homematicip_local.put_paramset
data:
paramset_key: VALUES
paramset:
RAMP_TIME_TO_OFF_UNIT: 0,
RAMP_TIME_TO_OFF_VALUE: 5,
LEVEL: 0.0,
device_address: XXX
channel: 1
service: homematicip_local.put_paramset
data:
paramset_key: VALUES
device_address: XXX
channel: 1
paramset:
HUE: 44,
SATURATION: 0.66,
RAMP_TIME_UNIT: 0,
RAMP_TIME_VALUE: 5,
DURATION_UNIT: 0,
DURATION_VALUE: 8760,
LEVEL: 1
Hi 👋
ich habe die drei Paramsets ausprobiert (allerdings ohne die Kommas, ich gehe davon aus, dass die nicht beabsichtigt waren 😅)
service: homematicip_local.put_paramset data: paramset_key: VALUES paramset: HUE: 44 SATURATION: 0.66 DURATION_VALUE: 111600 RAMP_TIME_UNIT: 0 RAMP_TIME_VALUE: 5 LEVEL: 1.0 device_address: XXX channel: 1
Funktioniert, das Licht geht über 5 Sekunden an 👍🏻
service: homematicip_local.put_paramset data: paramset_key: VALUES paramset: RAMP_TIME_TO_OFF_UNIT: 0 RAMP_TIME_TO_OFF_VALUE: 5 LEVEL: 0.0 device_address: XXX channel: 1
Funktioniert nicht - das Licht wird nicht ausgeschaltet. Das Log sagt:
2024-06-02 17:48:15.769 WARNING (MainThread) [hahomematic.client] PUT_PARAMSET failed: ClientException [XMLRPC Fault from backend: -1 Generic error (MISSING_NON_OPTIONAL_PARAMETER)] 0033E0C9923CA1:1, VALUES, {'RAMP_TIME_TO_OFF_UNIT': 0, 'RAMP_TIME_TO_OFF_VALUE': 5, 'LEVEL': 0}
service: homematicip_local.put_paramset data: paramset_key: VALUES device_address: XXX channel: 1 paramset: HUE: 44 SATURATION: 0.66 RAMP_TIME_UNIT: 0, RAMP_TIME_VALUE: 5 DURATION_UNIT: 0 DURATION_VALUE: 8760 LEVEL: 1
Funktioniert auch: Das Licht geht über 5 Sekunden an 👍🏻
außerdem habe ich getestet:
service: homematicip_local.put_paramset
data:
paramset_key: VALUES
device_address: XXX
channel: 1
paramset:
RAMP_TIME_UNIT: 0
RAMP_TIME_VALUE: 5
LEVEL: 0.0
DURATION_VALUE: 111600
Funktioniert soweit, das Licht geht über 5 Sekunden aus. Ich habe allerdings nicht abgewartet, ob es nach 13301 Sekunden wieder angeht 😅
Aber apropos 13301 Sekunden: Ich habe mir mal die Paramset-Description genauer angeschaut.
Dort ist ein Maximalwert für DURATION_VALUE
angegeben, nämlich 16343.
Auch wenn die API das zu akzeptieren scheint: Mit 111600 sind damit außerhalb der Spezifikation.
Meine Theorie ist, dass wir hier also in eine Bitlängen-Begrenzung laufen:
16343 ist sehr nahe an 2^14.
Wenn wir also davon ausgehen, dass 14 Bits für diese Zahl vorgesehen sind, und die höheren Bits einfach abgeschnitten werden, ergibt sich eine Anschaltdauer von 111600 mod (2^14) von 13296 Sekunden.
Rechnet man noch die 5 Sekunden Übergangszeit dazu, die ich verwendet hatte, landet man genau bei den 13301 Sekunden aus dem ursprünglichen Bug Report. Das spricht sehr dafür, dass hier in der Tat ein Überlauf vorliegt.
Was sollte man also schicken, um das Licht dauerhaft anzuschalten? In der CCU-WebUI steht:
Zu beachten ist, dass die Einschaltdauer auf 30 Stunden begrenzt ist. Ein Wert von 31 Stunden bedeuted 'dauerhaft ein'.
Das erklärt auch die Zahl 111600: 31 60 60. Ich habe also mal folgendes Paramset gesendet:
service: homematicip_local.put_paramset
data:
paramset_key: VALUES
device_address: XXX
channel: 1
paramset:
RAMP_TIME_VALUE: 5
RAMP_TIME_UNIT: S
LEVEL: 0.25
DURATION_VALUE: 31
DURATION_UNIT: H
Daraufhin hat das Licht über 5 Sekunden hochgedimmt und brennt seitdem unverändert. Sobald 31 Stunden vorbei sind, gebe ich bescheid, ob das Licht weiterhin brennt oder doch ausgegangen ist.
Danke fürs Testen. Dei 111600 kommt, auch ohne Unit, in deiner Kanalaktion vor:
L=0,OT=111600,RT=5,H=0,SAT=100,RTTOV=0,RTTOU=0,TC=0
Nur der Parameter TC sagt mir nichts.
Versuch bitte mal:
service: homematicip_local.put_paramset
data:
paramset_key: VALUES
paramset:
RAMP_TIME_TO_OFF_UNIT: 0
RAMP_TIME_TO_OFF_VALUE: 5
LEVEL: 0.0
DURATION_VALUE: 111600
device_address: XXX
channel: 1
Versuch bitte mal:
service: homematicip_local.put_paramset data: paramset_key: VALUES paramset: RAMP_TIME_TO_OFF_UNIT: 0 RAMP_TIME_TO_OFF_VALUE: 5 LEVEL: 0.0 DURATION_VALUE: 111600 device_address: XXX channel: 1
funktioniert nicht:
2024-06-02 18:58:19.622 WARNING (MainThread) [hahomematic.client] PUT_PARAMSET failed: ClientException [XMLRPC Fault from backend: -1 Generic error (MISSING_NON_OPTIONAL_PARAMETER)] 0033E0C9923CA1:1, VALUES, {'RAMP_TIME_TO_OFF_UNIT': 0, 'RAMP_TIME_TO_OFF_VALUE': 5, 'LEVEL': 0, 'DURATION_VALUE': 111600}
der Parameter TC
WebUI sagt: Das ist die Farbtemperatur in Kelvin :-)
funktioniert nicht:
Hatte ich befürchtet.
Bitte teste mal mit der 1.62.1b1. Bitte teste auch die sonstigen Grundfunktionen
Die 1.62.1b1 sieht gut aus, ich konnte bisher in meinen Tests keine weiteren Probleme feststellen 👍🏻 Damit wäre das Ausschaltproblem gelöst 🙌
Was mir noch aufgefallen ist: Zum Ausschalten funktioniert auch 0 als DURATION_VALUE
, es braucht hier nicht den "magischen" Wert 111600. Nach Ablauf der Dauer geht das Licht wohl wirklich aus, nicht zurück in den vorigen Zustand.
Und was das Einschaltproblem anbelangt:
Ich habe also mal folgendes Paramset gesendet:
service: homematicip_local.put_paramset data: paramset_key: VALUES device_address: XXX channel: 1 paramset: RAMP_TIME_VALUE: 5 RAMP_TIME_UNIT: S LEVEL: 0.25 DURATION_VALUE: 31 DURATION_UNIT: H
Daraufhin hat das Licht über 5 Sekunden hochgedimmt und brennt seitdem unverändert. Sobald 31 Stunden vorbei sind, gebe ich bescheid, ob das Licht weiterhin brennt oder doch ausgegangen ist.
Die Zeit ist nun vorbei, nach genau 31 Stunden und 5 Sekunden ist das Licht wieder ausgegangen 🙈 Ich habe jetzt also mal an eQ-3 geschrieben und gefragt, was sie in dem Szenario empfehlen.
Danke für die Info.
DURATION_VALUE: 31
DURATION_UNIT: H
Hier ist auch nachvollziehbar, daß das Gerät ausschaltet.
111600
ist aber ein "special" Wert, der für "NOT_USED" steht. Siehehttps://homematic-forum.de/forum/viewtopic.php?f=31&t=63093&p=622655&hilit=111600#p622655
Eine Nachfrage bei eQ-3 finde ich sehr gut. Erwähne aber nicht, falls Du es nutzen solltest, Raspberrymatc.
Ich werde das Ticker erst mal schliessen. Melde dich bitte, wenn Du Antwort erhalten hast.
I agree to the following
The problem
Nach etwas rumspielen mit einem HMIP-RGBW habe ich zwei Probleme festgestellt, wenn das Licht über Home Assistant geschaltet und
transition
gesetzt ist:light.turn_off
funktioniert nicht, wenntransition
gesetzt ist. Das Debug-Log zeigt:Vermutlich liegt dem das gleiche Problem wie #1351 zugrunde und man muss die on-time setzen (auch beim Ausschalten, merkwürdigerweise). Wenn ich in der CCU-WebUI ein Programm erstelle, welches das Licht per Kanalaktion über eine Zeit von 5 Sekunden ausschaltet, kommen folgende Parameter raus:
L=0,OT=111600,RT=5,H=0,SAT=100,RTTOV=0,RTTOU=0,TC=0
Danach dimmt das Licht ca. 5 Sekunden lang unter und ist danach aus. MitOT
scheint es aber noch ein weiteres Problem zu geben, siehe den zweiten Punkt:Ich habe das Licht die letzten Tage über öfter über Home Assistant mit einer
transition
-Zeit von 5 Sekunden angeschaltet. Hin und wieder ging das Licht einige Zeit später von alleine aus. Ich habe jetzt nochmal das Log gecheckt und tatsächlich geht das Licht immer nach genau 13301 Sekunden (also ca. 3 Stunden und 42 Minuten) aus.Ich habe das Licht vor ein paar Minuten nochmal direkt über ein CCU-Programm mit Kanalaktion
L=100,OT=111600,RT=5,H=0,SAT=100,RTTOV=0,RTTOU=3,TC=0
angeschaltet und beobachte mal, ob das Licht auch in ein paar Stunden wieder ausgeht.What version of HomematicIP (local) has the issue?
1.62.0
What was the last working version of HomematicIP (local)?
No response
What type of installation are you running?
Home Assistant OS
What type of installation are you running for your homematic backend?
RaspberryMatic Standalone
Which version of your homematic backend are you running?
3.75.7.20240420
What hardware are you running for your system?
CCU3
Which config details do you use
Which interfaces do you use?
Diagnostics information (no logs here)
No response
Log file extract. Anything in the logs that might be useful for us? The log (Setting/System/Logs -> load full log) is the best source to support trouble shooting!
No response
Additional information
No response