mdzio / ccu-jack

CCU-Jack bietet einen einfachen und sicheren REST- und MQTT-basierten Zugriff auf die Datenpunkte der Zentrale (CCU) des Hausautomations-Systems HomeMatic. Zudem können einfach Fremdgeräte an die CCU angebunden werden.
GNU General Public License v3.0
115 stars 12 forks source link

Frage: Wochenprogramm de-/aktivieren #136

Closed djiwondee closed 1 year ago

djiwondee commented 1 year ago

Hallo @mdzio

gibt es eine Möglichkeit, bei eingestellten Wochenprogrammen diese von Automatisch auf Manuell und umgekehrt zu setzen?

image

Ich habe es ein paar Versuche über z. B. device/set/003***********/8/WEEK_PROGRAM_TARGET_CHANNEL_LOCK

gemacht. Das hat aber nicht funktioniert. Hintergrund: ich möchte konfigurierte, aktive Wochenprogramme z. B. bei An-/Abwesenheit de-/aktivieren.

Danke für einen Hinweis.

mdzio commented 1 year ago

Ist denn die Information im Navigator der Web-UI des CCU-Jacks zu finden? Eventuell ist sie auch Bestandteil vom Masterparamset eines Gerätes. Masterparamsets sind in der Variablen $MASTER zu finden.

djiwondee commented 1 year ago

Hallo @mdzio die Adresse /device/00************/8/$MASTER eines in Frage kommenden Gerätes betroffenen zeigt fünfundsiebzig Eigenschaftswerte in dieser Art

image

Das scheint mir die falsche Stelle. Sieht mir bzgl. der Werte aber auch nicht nach der Konfiguration des Wochenprogrammes aus

Der MQTT Explorer ist noch weniger auskunftsfreudig

image

und /device/00************/$MASTER:

image
Baxxy13 commented 1 year ago

Wenn man weiß wie ist das ganz einfach. :wink:

Wir müssen den COMBINED_PARAMETER im Wochenprogramm-Kanal ansprechen.

Der zu sendende Wert ist ein String und die beiden möglichen Werte kommen aus einer Binärmaske. Am einfachsten ist es wenn man sich die "Templates" aus der WebUI holt.

Also im DANN eines WebUI-Programmes den Wochenprogramm-Kanal wählen (Kanalaktion) und ins hintere Feld klicken. Dort im PopUp das zusammenklicken was man möchte. Anschließend den fertigen COMBINED_PARAMETER notieren oder screenshotten.

Sieht dann im MQTT-Explorer so aus: (Beispiel: es werden alle 3 virt.Kanäle einer HmIP-PS auf MANU gesetzt) Wochenprog_Aktor_AUTO_MANU_per_CCU_Jack

Nicht von den "Kullerchen" im Wochenprogramm-Kanal verwirren lassen, die sind mit 3.69.7 buggy und zeigen fehlerhaft an. (wird dann in 3.71.x [oder wie auch immer die dann heißt] gefixt sein)

Noch ein Hinweis: Der Modus steht im flüchtigen Speicher des Gerätes. Ist das Gerät kurz spannungslos steht danach alles wieder auf AUTO.

RBrzDVAG commented 1 year ago

Hallo @Baxxy13, des werde ich ausprobieren! Vielen Dank für die Recherche.

... die beiden möglichen Werte kommen aus einer Binärmaske

Da bin ich bei bißchen Recherche im Forum auch schon draufgestoßen

Der Modus steht im flüchtigen Speicher des Gerätes. Ist das Gerät kurz spannungslos steht danach alles wieder auf AUTO.

Das wäre für mich sogar ein gewünschter Nebeneffekt. Der Default soll unbedingt so sein: AUTO

Nicht von den "Kullerchen" im Wochenprogramm-Kanal verwirren lassen, die sind mit 3.69.7 buggy

Danke für die Info. Den Bug habe ich auch schon festgestellt, allein der geplante Fix ist mir neu. Ich bin beim eq3-Support schon mal abgeblitzt, mit der Begründung, ich hätte custom Software auf der CCU. Deshalb habe ich mir Feedback/Meldung dazu gespart...

Nochmals Danke!

mdzio commented 1 year ago

Ich denke, dass der Eintrag mit der letzten Antwort geschlossen werden kann.

djiwondee commented 1 year ago

Hallo @Baxxy13, @mdzio
jetzt hätte ich aber doch nicht mal ein Frage: Wie lässt sich denn der RAW-Wert in einen JSON Key/Value-Pair "übersetzen".

Hintergrund: ich möchte mittels Node-red und der MQTT-Node den Modus ändern können image

Weder der Payload als String "WPTCLS=7,WPTCL=1" als auch per JSON in der Form

{
    "WPTCLS": 7,
    "WPTCL": 1
}

funktionieren damit.

Was mach CCU-Jack aus dem Payload?

mdzio commented 1 year ago

Dann probier bitte mal:

{"v":"WPTCLS=7,WPTCL=1"}

Oder:

WPTCLS=7,WPTCL=1

(Ohne Anführungszeichen)

RBrzDVAG commented 1 year ago

Hallo @mdzio

probiert hatte ich schon msg.payload.v = "WPTCLS=7,WPTCL=1", was auch nicht funktionierte. Aber das hier tut es:

msg.payload = {"v":"WPTCLS=7,WPTCL=1"}

Vielen Dank!