Änderungen von Homematic CCU Systemvariablen bei Eingabe/Auswahl in Darstellung eines Aktors sollten änderbar sein

Hallo,
ich nutze für die Einstellung der Einschaltdauer eines Aktors eine Systemvariable mit einer Werteliste in der Homematic CCU3. Die Variable habe ich als Tastergruppe der Darstellung des Aktors hinzugefügt. Der aktuelle Wert der CCU wird korrekt dargestellt. Eine Änderung wird aber jedoch nicht an die CCU übertragen. Ich habe den Verdacht, dass die Änderung an den Kanal des Aktors gesendet wird und nicht an die eigentliche Systemvariable.

Bei der gleichen Definition in der Darstellung der Systemvariablen funktioniert es einwandfrei.

Es wäre schön, wenn die Systemvariable auch änderbar wäre. Neben ein/aus könnte man somit bei der Darstellung des Aktors auch verschiedene Einschaltdauern in der CCU nutzen.

Ich bin mir nicht sicher, ob es sich um einen Fehler handelt oder die Funktion fehlt.

VG

Hallo @Letsgowesti,

Danke für Deinen Vorschlag. Allerdings kann ich Dir da nicht 100% folgen, denke ich. Könntest Du auch hier ein paar Screenshots und Anmerkungen dazu senden? So können wir Dir schnell helfen.

– Eddy

Hallo Eddy,

vielen Dank für die schnelle Rückmeldung:

Der folgende Screenshoot zeigt die Ansichten
links: Geräte Darstellung des Aktor mit hinzugefügter Systemvariablen
rechts: Variablen Darstellung der Systemvariablen.

image

Definition der Systemvariablen in der CCU:
image

Auszug aus XML statelist.cgi
image

Eigene Gerätedefinition:
hm-lc-sw1-dr.json (5,0 KB)

Bei Aufruf der Ansichten wird sowohl links (Gerät) als auch rechts (Variable) der aktuelle Status auf der CCU angezeigt. Eine Bestätigung der Tasten in der linken Ansicht führt zu keiner Änderung des Status und der Systemvariablen. Es erscheint in einem grünen Feld die Meldung „Eingabe gesendet“. Die Änderung kommt auf der CCU aber nicht an (kein Eintrag im Systemlog). Betätigt man jedoch eine Taste in der rechten Ansicht, führt dies sofort auch zur Änderung in der linken Ansicht.

image

Das Einstiegsbild nach „Bearbeiten -> Darstellung“ zeigt mir, dass die Variable wohl dem Kanal 1 des Gerätes zugeordnet ist.

image

Ich vermute daher, dass auch die Änderung Richtung des Gerätes gesendet wird, was meiner Meinung nach falsch ist. Man sieht es an zahlreichen nicht definierbaren Einträgen bei der folgenden Auflistung der Datenpunkte

image

Da ich auf meinem Smartphone schon mehrere Tage teste, somit die Auflistung mittlerweile über mehrere Seiten geht, folgende Frage: Wie bekomme ich die falschen Datenpunkte wieder weg?

Als Workaround habe ich mal folgende Lösung erfolgreich ausprobiert:

  • Hinzufügen von neun (9) eigenen Tasten für jeden möglichen Wert der Variablen (0-8)
  • Darstellung der jeweiligen Tasten als „HTTP-Aufruf“
  • Eintrag in „HTTP-Aufruf Einstellung“ in der Form
    :8181/x.exe?antwort=dom.GetObject(„GA.Garten.Poolpumpe.Auswahl“).State("")
    mit =0|1|2|3|4|5|6|7|8.
    Da in dem String viel zu viele Konstanten definiert werden, ist dies natürlich keine Lösung für globale Definitionen, bei einer größeren Anzahl von Aktoren auch sehr aufwendig. Hierbei wäre es eine gute Idee, wenn man in dem String Synonyme definieren könnte, die dann vor dem Senden ersetzt werden, z.B.
    $Zentrale$:8181/x.exe?antwort=dom.GetObject("$Datenpunkt$).State("")

Frage: Gibt es eine ausführlichere Dokumentation als die eher sehr spärliche Online Hilfe auf den Geräten?

Hoffe, meine Ausführungen führen nun zu einem bessern Verständnis.

Im Voraus vielen Dank für deine Bemühungen.

VG Letsgowesti

Hallo @Letsgowesti,

Danke für Deinen ausführen Bericht :slight_smile:

Den Fehler mit der Tastergruppe und der Variable von Typ Werteliste konnte ich nachstellen. Deine Annehme war korrekt. Dieses Problem wird mit der nächsten Version behoben werden.

Zu den Definitionen gibt es leider noch keine ausführliche Dokumentation, da diese zu komplex ist und wir diese noch überarbeiten werden. Da diesen Bereich sehr wenige nutzen und auch eine Überarbeitung stattfinden wird, lohnt sich derzeit der Aufwand nicht.

Synonyme zu verwenden würde den Prozess insgesamt noch komplizierter machen - daher würde ich davon erstmal absehen.

– Eddy

Schade wäre sicherlich nur ein Dreizeiler in der Programmierung :-;

VG Letsgowesti

Hallo @eschaefer,

ich habe in der Beta-App 2.0.4 die Funktion mit der Systemvariablen erfolgreich testen können.

Vielen Dank für die Behebung und Unterstützung.

Gruß
letsgowesti

2 Like