Virtuelle Taster in Programmen

Allgemeines zur HomeMatic Haussteuerung

Moderator: Co-Administratoren

Benutzeravatar
robbi77
Beiträge: 13864
Registriert: 19.01.2011, 19:15
System: CCU
Wohnort: Landau
Hat sich bedankt: 182 Mal
Danksagung erhalten: 739 Mal

Re: Virtuelle Taster in Programmen

Beitrag von robbi77 » 31.12.2023, 19:31

Sieht jemand ein Programm?

Benutzeravatar
Baxxy
Beiträge: 10848
Registriert: 18.12.2018, 15:45
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 610 Mal
Danksagung erhalten: 2229 Mal

Re: Virtuelle Taster in Programmen

Beitrag von Baxxy » 31.12.2023, 23:20

Soweit ich mich erinnere hat dieses "Problem" keine Auswirkungen auf Aktionen der CCU.
Es macht auch, für die Ausführung des Dann, keinen Unterschied ob man das Programm manuell anstößt oder ob es durch irgendeinen Trigger angestoßen wird.
Klingt eher nach Funkkollision.

stefan13
Beiträge: 30
Registriert: 15.09.2019, 14:29
Hat sich bedankt: 7 Mal

Re: Virtuelle Taster in Programmen

Beitrag von stefan13 » 01.01.2024, 12:11

Das "Problem" scheint wirklich ein anderes zu sein - ich hab es jetzt zum Laufen bekommen, kann mir aber das Verhalten nicht erklären.

Ich hab ein ganz einfaches Programm, dass ausgeführt wird, wenn die Eingangstür geöffnet wird.
Dann soll der Taster einen Befehl ausführen und das Licht einschalten.
Bildschirmfoto 2024-01-01 um 11.48.06.png
Wenn ich den Virtuellen Schalter als Gerät auswähle und "DIREKT" ausführe, dann schaltet der HmIP-BSM Aktor nicht.
Im Logile kommt dann auch der unbekannte Fehler.
Bildschirmfoto 2024-01-01 um 11.40.42.png
Wenn ich bei Aktivität anstelle des Gerätes ein Script zum Schalten einbinde

Code: Alles auswählen

datapoints.Get("HmIP-RF.HmIP-RCV-1:10.PRESS_SHORT").State(true)
dann verschwindet der unbekannte Fehler, aber geschaltet wird trotzdem nichts - statt dessen kommt immer noch der Kommunikation Fehler (Gerätekommunikation gestört). Das passt zu Baxxy's Vermutung.
Bildschirmfoto 2024-01-01 um 11.38.56.png
Wenn ich allerdings die Ausführung von "SOFORT" auf "VERZÖGERT" um 1 Sek. ändere, dann Schalter der Aktor, wie erwartet.
Mit der 1 Sekunden Verzögerung kann ich auch den Virtuellen Taster im Programm schalten, wenn der in der Geräteauswahl anstelle des Scripts ausgewählt ist.
Das "Problem" scheint wirklich am Timing zu liegen - "Direkt" geht nie und erzeugt den Kommunikationsfehler - mit Verzögerung funktioniert.
Bildschirmfoto 2024-01-01 um 11.37.08.png
Wenn ich den Virtuellen Taster direkt über die GUI schalte, oder auch den Aktor direkt, dann erhalte ich nie einen Kommunikationsfehler.
Mir ist nicht klar, warum der nur durch das Skript verursacht wird. :?

Benutzeravatar
Baxxy
Beiträge: 10848
Registriert: 18.12.2018, 15:45
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 610 Mal
Danksagung erhalten: 2229 Mal

Re: Virtuelle Taster in Programmen

Beitrag von Baxxy » 01.01.2024, 12:45

stefan13 hat geschrieben:
01.01.2024, 12:11
Wenn ich den Virtuellen Taster direkt über die GUI schalte, oder auch den Aktor direkt, dann erhalte ich nie einen Kommunikationsfehler.
Mir ist nicht klar, warum der nur durch das Skript verursacht wird.
In dem Moment wo das Event des TFK von der CCU registriert wird muss sie, bei sofort "gleichzeitig", 2 Funkbefehle absetzen.
1. die Quittierung für das TFK - Event
2. den "Schaltbefehl" im Dann

Muss das Dann über die Virt. Taste gehen oder ginge es auch anders? Könnte man ja mal probieren.
Vielleicht ginge ja sogar eine DV zwischen TFK und Zielgerät.

jp112sdl
Beiträge: 12116
Registriert: 20.11.2016, 20:01
Hat sich bedankt: 849 Mal
Danksagung erhalten: 2150 Mal
Kontaktdaten:

Re: Virtuelle Taster in Programmen

Beitrag von jp112sdl » 01.01.2024, 12:52

Baxxy hat geschrieben:
01.01.2024, 12:45
In dem Moment wo das Event des TFK von der CCU registriert wird muss sie, bei sofort "gleichzeitig", 2 Funkbefehle absetzen.
1. die Quittierung für das TFK - Event
Wo kommt denn der TFK her?
Sein Programm wird doch durch die Änderung einer SV getriggert?
Kommt der Kommunikationsfehler denn auch, wenn nur die SV auf GEÖFFNET geändert wird?

VG,
Jérôme ☕️

---
Support for my Homebrew-Devices: Download JP-HB-Devices Addon

Benutzeravatar
Baxxy
Beiträge: 10848
Registriert: 18.12.2018, 15:45
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 610 Mal
Danksagung erhalten: 2229 Mal

Re: Virtuelle Taster in Programmen

Beitrag von Baxxy » 01.01.2024, 13:10

Der TFK kam aus meiner frisch polierten Glaskugel und spekulativer Interpretation des Kontextes, und weil ich "Systemzustand" übersehen hatte. :wink:
Aber stimmt, es könnte auch irgendwas anderes sein was vermutlich die SysVar sofort per Programm setzt.

stefan13
Beiträge: 30
Registriert: 15.09.2019, 14:29
Hat sich bedankt: 7 Mal

Re: Virtuelle Taster in Programmen

Beitrag von stefan13 » 01.01.2024, 13:11

Der Türkontakt wird über einen externen Sensor realisiert. Die Systemvariable in der CCU wird bei Statusänderung der Tür durch meinem OpenHAB System in der CCU aktualisiert. Daher muss die CCU keine Events per Funk an den Sensor quittieren. Es ist lediglich eine Änderung der Variable.
Wenn nur das Türevent erkannt wird und die Debbugging Systemvariable gesetzt wird, dann kommt keine Fehlermeldung.
Auch wenn das Programm über "Status/Bedienung -> Programme" manuell ausgeführt wird, kommt kein Kommunikationsfehler. Dann wird das Licht korrekt geschaltet.
Der Kommunikationsfehler kommt nur, wenn das Programm durch die Änderung der Systemvariable getriggert wird.

Benutzeravatar
Baxxy
Beiträge: 10848
Registriert: 18.12.2018, 15:45
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 610 Mal
Danksagung erhalten: 2229 Mal

Re: Virtuelle Taster in Programmen

Beitrag von Baxxy » 01.01.2024, 13:24

Gibt es denn noch mehr was auf Änderung der SysVar passiert?
Und warum die Virt.Taste wenn nur 1 Aktor angesprochen wird? Das geht doch auch direkt.

stefan13
Beiträge: 30
Registriert: 15.09.2019, 14:29
Hat sich bedankt: 7 Mal

Re: Virtuelle Taster in Programmen

Beitrag von stefan13 » 01.01.2024, 13:40

Baxxy hat geschrieben:
01.01.2024, 13:24
Gibt es denn noch mehr was auf Änderung der SysVar passiert?
Und warum die Virt.Taste wenn nur 1 Aktor angesprochen wird? Das geht doch auch direkt.
Mit der SysVar passiert sonst nichts mehr.
Ich hatte ursprünglich gar keinen Virtuellen Taster verwenden wollen.
Das ursprüngliche Programm hat den Kanal 5 des HmIP-BSM direkt geschaltet. Dann kamen aber auch immer der Kommunikationsfehler.
Bildschirmfoto 2024-01-01 um 13.34.23.png
Ich hatte es daher mit dem Virtuellen Taster versucht.

Wenn ich den Aktor mit Kanal 5 direkt schalte, dann funktioniert es jetzt auch - sofern ich anstelle von SOFORT eine 1 Sekunden Verzögerung einbaue.

Das Programm funktioniert jetzt glücklicherweise, allerdings verstehe ich nicht, warum beim sofortigen Schalten ein Kommunikationsfehler kommt.

Antworten

Zurück zu „HomeMatic allgemein“