CUxD TIMER_GET funktioniert nicht als Programm-Kriterium

Anbindung von FS20-Komponenten, ELV-Wetterstationen, EnOcean und DMX an HomeMatic

Moderator: Co-Administratoren

rentier-s
Beiträge: 353
Registriert: 19.06.2017, 09:24
Hat sich bedankt: 20 Mal
Danksagung erhalten: 63 Mal

Re: CUxD TIMER_GET funktioniert nicht als Programm-Kriterium

Beitrag von rentier-s » 20.03.2023, 14:08

Hallo Uwe,

jetzt wollte ich gerade das Ergebnis meiner Versuche teilen, aber Du warst ein wenig schneller :wink:

uwe111 hat geschrieben:
20.03.2023, 13:44
Das müsstest Du testen. Meines Erachtens sollte es so funktionieren:
TIMER_SET=10/!10/!10/!10/!10/!10
Genau so funktioniert das im Prinzip, nach dem letzten Mal wird dann die Taste gedrückt.

Das Problem ist aber, dass ich mit einem Programm nicht an die aktuelle TIMER_NUM ran komme. Wie mit TIMER_GET ist es das gleiche Problem, per Skript den State() abfragen klappt, aber in Value() kommt der letzte Wert, den der Timer an die Rega gemeldet hat. Das tut er nur am Anfang und ganz am Ende.

Der erste Versuch war mit TIMER_SET.State("!10/!10/!10/10"), der zweite mit TIMER_SET.State("10/!10/!10/!10")

Multi_Timer.jpg

Danke trotzdem und viele Grüße zurück,
Svenja

Benutzeravatar
uwe111
Beiträge: 4806
Registriert: 26.02.2011, 22:22
Hat sich bedankt: 3 Mal
Danksagung erhalten: 239 Mal
Kontaktdaten:

Re: CUxD TIMER_GET funktioniert nicht als Programm-Kriterium

Beitrag von uwe111 » 20.03.2023, 15:29

rentier-s hat geschrieben:
20.03.2023, 14:08
Das Problem ist aber, dass ich mit einem Programm nicht an die aktuelle TIMER_NUM ran komme. Wie mit TIMER_GET ist es das gleiche Problem, per Skript den State() abfragen klappt, aber in Value() kommt der letzte Wert, den der Timer an die Rega gemeldet hat. Das tut er nur am Anfang und ganz am Ende.
Das sollte so eigentlich nicht sein. Ich prüfe das mal und melde mich.

Viele Grüße

Uwe
Alle sagten: Das geht nicht. Dann kam einer, der wußte das nicht und hat's einfach gemacht.
SPENDEN :wink: Download: CUxD 2.11, SSH KeyDir

Benutzeravatar
uwe111
Beiträge: 4806
Registriert: 26.02.2011, 22:22
Hat sich bedankt: 3 Mal
Danksagung erhalten: 239 Mal
Kontaktdaten:

Re: CUxD TIMER_GET funktioniert nicht als Programm-Kriterium

Beitrag von uwe111 » 20.03.2023, 21:08

Hallo Svenja,

ich habe die Timer-Events in der CUxD Testversion 2.10.4 geändert. (Download hier: http://cuxd.de/download/)
Kannst Du es damit bitte nochmal testen?

Viele Grüße

Uwe
Alle sagten: Das geht nicht. Dann kam einer, der wußte das nicht und hat's einfach gemacht.
SPENDEN :wink: Download: CUxD 2.11, SSH KeyDir

rentier-s
Beiträge: 353
Registriert: 19.06.2017, 09:24
Hat sich bedankt: 20 Mal
Danksagung erhalten: 63 Mal

Re: CUxD TIMER_GET funktioniert nicht als Programm-Kriterium

Beitrag von rentier-s » 21.03.2023, 07:48

Hallo Uwe,

die Testversion probiere ich später oder morgen.

Habe gerade nochmal ausführlich mit der 2.10.1 getestet.

Das Programm
Timer_Prog.jpg

Ergebnis für
dom.GetObject("CUxD.CUX2800001:8.TIMER_SET").State("10/!10/!10/!10");
Timer_noexec10.jpg

Etwas kurios war das Verhalten mit
dom.GetObject("CUxD.CUX2800001:8.TIMER_SET").State("10/10/10/10");
Da wurde insgesamt nur 1x nach 10 Sekunden ausgelöst, danach sprang der Timer im CUxD UI direkt auf inaktiv.
Timer_10.jpg

rentier-s
Beiträge: 353
Registriert: 19.06.2017, 09:24
Hat sich bedankt: 20 Mal
Danksagung erhalten: 63 Mal

Re: CUxD TIMER_GET funktioniert nicht als Programm-Kriterium

Beitrag von rentier-s » 21.03.2023, 08:02

uwe111 hat geschrieben:
20.03.2023, 21:08
Kannst Du es damit bitte nochmal testen?
Nun denn, da schon mal alles zum Testen eingerichtet war, habe ich die 2.10.4 kurzerhand drauf.

Ergebnis ist aber leider dasselbe.
timer_2.10.4.jpg

Wenn ich das Programm zwischendurch über ein anderes Gerät triggere, greifen die Bedingungen für TIMER_NUM trotzdem nicht.

Wegen mir brauchst Du Dich aber nicht weiter abtun, ich komme mit der bisherigen Lösung über Skript TIMER_GET.State() oder mit der Abfrage des Startwerts auch gut klar.

Benutzeravatar
uwe111
Beiträge: 4806
Registriert: 26.02.2011, 22:22
Hat sich bedankt: 3 Mal
Danksagung erhalten: 239 Mal
Kontaktdaten:

Re: CUxD TIMER_GET funktioniert nicht als Programm-Kriterium

Beitrag von uwe111 » 21.03.2023, 16:16

Hallo Svenja,
rentier-s hat geschrieben:
21.03.2023, 08:02
Wenn ich das Programm zwischendurch über ein anderes Gerät triggere, greifen die Bedingungen für TIMER_NUM trotzdem nicht.
Mein Fehler! Jetzt sollte TIMER_NUM funktionieren. Kannst Du es bitte nochmal mit der aktualisierten Version testen?
rentier-s hat geschrieben:
21.03.2023, 08:02
Wegen mir brauchst Du Dich aber nicht weiter abtun, ...
Schon klar, aber diese Änderung macht ja durchaus Sinn.
rentier-s hat geschrieben:
21.03.2023, 07:48
Etwas kurios war das Verhalten mit
dom.GetObject("CUxD.CUX2800001:8.TIMER_SET").State("10/10/10/10");
Da wurde insgesamt nur 1x nach 10 Sekunden ausgelöst, danach sprang der Timer im CUxD UI direkt auf inaktiv.
Das ist richtig! Du hast an irgendeiner Stelle TIMER_SET=0 oder TIMER_STOP gesetzt. Damit wird der Timer sofort beendet.

Viele Grüße

Uwe
Alle sagten: Das geht nicht. Dann kam einer, der wußte das nicht und hat's einfach gemacht.
SPENDEN :wink: Download: CUxD 2.11, SSH KeyDir

rentier-s
Beiträge: 353
Registriert: 19.06.2017, 09:24
Hat sich bedankt: 20 Mal
Danksagung erhalten: 63 Mal

Re: CUxD TIMER_GET funktioniert nicht als Programm-Kriterium

Beitrag von rentier-s » 22.03.2023, 09:02

Hallo Uwe,
uwe111 hat geschrieben:
21.03.2023, 16:16
Du hast an irgendeiner Stelle TIMER_SET=0 oder TIMER_STOP gesetzt. Damit wird der Timer sofort beendet.
Ich hätte schwören können dass nein, aber dank der Programmlogik in HM habe ich das implizit doch. Also doch nicht so kurios wie befürchtet 8)

Laut Systemprotokoll meldet sich der Timer jetzt nach Ablauf jeder Sequenz bei der Rega.
timer_get.jpg

TIMER_NUM = 0 und TIMER_GET > 0 => Multi-Timer läuft los
TIMER_NUM > 0 und TIMER_GET > 0 => neue Sequenz
TIMER_NUM = 0 und TIMER_GET = 0 => Mulit-Timer abgeschlossen

timer_num_prog.jpg

Was ich nicht explizit probiert habe, TIMER_NUM als Kriterium in einem anderen Programm zu verwenden. Muss aber ja theoretisch dann auch funktionieren.

Beim ersten Versuch hat sich meine PivCCU kurz darauf von alleine neu gestartet und war erstmal nicht mehr erreichbar. Ich musste sie mit service pivccu restart wiederbeleben. Nachdem ich das Programm umgebaut und nochmal probiert habe, gab es aber keine Probleme mehr. Mag wohl Zufall gewesen sein.

Vielen Dank für Deine Mühe,
Svenja

Antworten

Zurück zu „CUxD“