jens-maus / RaspberryMatic

:house: A feature-rich but lightweight, buildroot-based Linux operating system alternative for your CloudFree CCU3/ELV-Charly 'homematicIP CCU' IoT smarthome central. Running as a pure virtual appliance (ProxmoxVE, Home Assistant, LXC, Docker/OCI, Kubernetes/K8s, etc.) on a dedicated embedded device (RaspberryPi, etc.) or generic x86/ARM hardware.
https://raspberrymatic.de
Apache License 2.0
1.56k stars 192 forks source link

HmIP-RGBW -> Saturation kann nicht mit HM-Script gesetzt werden #2837

Open smezger123 opened 2 months ago

smezger123 commented 2 months ago

Describe the issue you are experiencing

Mit HM Script kann ich bei den HMiP RGBW Devices die "Saturation" nicht einstellen. (Manuell über Weboberfläche oder die XML API funktioniert es)

dom.GetObject('16262').State(1); -> Dieser Befehl müsste die SATURATION auf 100% stellen. Bei z.B. der Farbe (HUE) oder Helligkeit (LEVEL) funktioniert es

<channel name="HmIP-RGBW 0033E0C992481C:1" ise_id="16243" index="1" visible="true" operate="true">
<datapoint name="HmIP-RF.0033E0C992481C:1.ACTIVITY_STATE" type="ACTIVITY_STATE" ise_id="16244" value="3" valuetype="16" valueunit="" timestamp="1725474602" operations="5"/>
<datapoint name="HmIP-RF.0033E0C992481C:1.COLOR_TEMPERATURE" type="COLOR_TEMPERATURE" ise_id="16245" value="" valuetype="16" valueunit="K" timestamp="1725474602" operations="7"/>
<datapoint name="HmIP-RF.0033E0C992481C:1.COLOR_TEMPERATURE_STATUS" type="COLOR_TEMPERATURE_STATUS" ise_id="16246" value="1" valuetype="16" valueunit="" timestamp="1725474602" operations="5"/>
<datapoint name="HmIP-RF.0033E0C992481C:1.COMBINED_PARAMETER" type="COMBINED_PARAMETER" ise_id="16247" value="" valuetype="20" valueunit="" timestamp="0" operations="2"/>
<datapoint name="HmIP-RF.0033E0C992481C:1.DIM2WARM_STATE" type="DIM2WARM_STATE" ise_id="16248" value="false" valuetype="2" valueunit="" timestamp="1725474602" operations="5"/>
<datapoint name="HmIP-RF.0033E0C992481C:1.DURATION_UNIT" type="DURATION_UNIT" ise_id="16249" value="" valuetype="16" valueunit="" timestamp="0" operations="2"/>
<datapoint name="HmIP-RF.0033E0C992481C:1.DURATION_VALUE" type="DURATION_VALUE" ise_id="16250" value="" valuetype="16" valueunit="" timestamp="0" operations="2"/>
<datapoint name="HmIP-RF.0033E0C992481C:1.EFFECT" type="EFFECT" ise_id="16251" value="0" valuetype="16" valueunit="" timestamp="1725474602" operations="2"/>
<datapoint name="HmIP-RF.0033E0C992481C:1.HUE" type="HUE" ise_id="16252" value="135" valuetype="16" valueunit="" timestamp="1725474602" operations="7"/>
<datapoint name="HmIP-RF.0033E0C992481C:1.HUE_STATUS" type="HUE_STATUS" ise_id="16253" value="0" valuetype="16" valueunit="" timestamp="1725474602" operations="5"/>
<datapoint name="HmIP-RF.0033E0C992481C:1.HUMAN_CENTRIC_LIGHT_STATE" type="HUMAN_CENTRIC_LIGHT_STATE" ise_id="16254" value="false" valuetype="2" valueunit="" timestamp="1725474602" operations="5"/>
<datapoint name="HmIP-RF.0033E0C992481C:1.LEVEL" type="LEVEL" ise_id="16255" value="0.000000" valuetype="4" valueunit="100%" timestamp="1725474602" operations="7"/>
<datapoint name="HmIP-RF.0033E0C992481C:1.LEVEL_STATUS" type="LEVEL_STATUS" ise_id="16256" value="0" valuetype="16" valueunit="" timestamp="1725474602" operations="5"/>
<datapoint name="HmIP-RF.0033E0C992481C:1.PROCESS" type="PROCESS" ise_id="16257" value="0" valuetype="16" valueunit="" timestamp="1725474602" operations="5"/>
<datapoint name="HmIP-RF.0033E0C992481C:1.RAMP_TIME_TO_OFF_UNIT" type="RAMP_TIME_TO_OFF_UNIT" ise_id="16258" value="" valuetype="16" valueunit="" timestamp="0" operations="2"/>
<datapoint name="HmIP-RF.0033E0C992481C:1.RAMP_TIME_TO_OFF_VALUE" type="RAMP_TIME_TO_OFF_VALUE" ise_id="16259" value="" valuetype="16" valueunit="" timestamp="0" operations="2"/>
<datapoint name="HmIP-RF.0033E0C992481C:1.RAMP_TIME_UNIT" type="RAMP_TIME_UNIT" ise_id="16260" value="" valuetype="16" valueunit="" timestamp="0" operations="2"/>
<datapoint name="HmIP-RF.0033E0C992481C:1.RAMP_TIME_VALUE" type="RAMP_TIME_VALUE" ise_id="16261" value="" valuetype="16" valueunit="" timestamp="0" operations="2"/>
<datapoint name="HmIP-RF.0033E0C992481C:1.SATURATION" type="SATURATION" ise_id="16262" value="0.800000" valuetype="4" valueunit="100%" timestamp="1725474602" operations="7"/>
<datapoint name="HmIP-RF.0033E0C992481C:1.SATURATION_STATUS" type="SATURATION_STATUS" ise_id="16263" value="0" valuetype="16" valueunit="" timestamp="1725474602" operations="5"/>
<datapoint name="HmIP-RF.0033E0C992481C:1.SECTION" type="SECTION" ise_id="16264" value="0" valuetype="16" valueunit="" timestamp="1725474602" operations="5"/>
<datapoint name="HmIP-RF.0033E0C992481C:1.SECTION_STATUS" type="SECTION_STATUS" ise_id="16265" value="0" valuetype="16" valueunit="" timestamp="1725474602" operations="5"/>

Describe the behavior you expected

SATURATION auf 1.000000 setzen (100%)

Steps to reproduce the issue

  1. dom.GetObject('16262').State(1);

What is the version this bug report is based on?

3.77.7.20240826

Which base platform are you running?

rpi4 (RaspberryPi4, ARM64/aarch64)

Which HomeMatic/homematicIP radio module are you using?

HM-MOD-RPI-PCB

Anything in the logs that might be useful for us?

Nichts im Log zu sehen

Additional information

No response

Baxxy13 commented 2 months ago

Hatten wir erst kürzlich.

2829

Wobei dort auch das schreiben eines Wertes per XML-Api nicht ging. Das Problem wurde dort mithilfe des COMBINED_PARAMETER umgangen.

smezger123 commented 2 months ago

Hallo Baxxy13, danke für den Hinweis. Den Issue habe ich leider nicht selbst gefunden.

Ist der Combined_String dann die neue Methode um das Device anzusprechen oder nur ein Workaround bis der Fehler behoben ist?

Baxxy13 commented 2 months ago

Das kann ich dir nicht konkret beantworten. Man müsste erstmal herausfinden woran es genau hapert, das ist aber ohne entsprechendes Gerät quasi unmöglich. Es kann auch sein das der Fehler in den Teilen der CCU/RM-Firmware steckt an die nur eQ-3 ran darf.

Was mich halt wundert ist: Du schreibst über die XML-Api geht es, im anderen Issue ging es aber über die XML-Api nicht. Außerdem ist die XML-Api nur ein "Wrapper", im Endeffekt wird da auch nur ReGa-Script ausgeführt. D.h. die Ergebnisse sollten über XML-Api und ReGa-Script gleich sein.