Howto - Vermeidung von Programmstarts nach Neustart der CCU

Problemlösungen und Hinweise von allgemeinem Interesse zur Haussteuerung mit HomeMatic

Moderator: Co-Administratoren

Xel66
Beiträge: 14085
Registriert: 08.05.2013, 23:33
System: Alternative CCU (auf Basis OCCU)
Wohnort: Nordwürttemberg
Hat sich bedankt: 580 Mal
Danksagung erhalten: 1492 Mal

Re: Howto - Vermeidung von Programmstarts nach Neustart der CCU

Beitrag von Xel66 » 14.04.2019, 22:18

Messiahs hat geschrieben:
14.04.2019, 15:45
Ich kann auch jeden Tag mein Auto starten und dann überlegen, ob ich überhaupt losfahren muss...
Kann man machen, aber übertragen auf Dein Beispiel würde ich zumindest erwarten, dass das Auto auch nach einem Neustart die vorher in Betrieb befindliche Klimaanlage wieder mit der gleichen Solltemperatur wie beim Abstellen aktiviert und auch das Radio wieder einschaltet sowie andere Einstellungen wieder herstellt.

Und wenn die Lichtautomatik eingeschaltet ist, würde ich auch erwarten, dass bei Dunkelheit das Licht ein- und am hellerlichten Tage ausgeschaltet ist oder dass der Klimakompressor der Klimaautomatik wirklich nur bei Bedarf läuft. Nach Deiner Denkweise befindet sich jedes Gerät in irgendeinem Betriebszustand und auch der Schaltzustand des Lichts ist irgendwie (mit etwas Glück so, wie er beim Abstellen war).

Allein an den letzten Beispielen "Licht" und "Klimakompressor" ist schon ersichtlich, dass das Herstellen eines Schaltzustandes in Abhängigkeit der aktuellen (Umgebungs-)Bedingungen mehr als zielführend ist und dass ein willkürlicher oder zuletzt gespeicherter Schaltzustand nicht unbedingt den Erwartungen entspricht. Und genau so ist es im Original angelegt. Von einer smarten Haussteuerung erwarte ich zumindest, dass sie die Rollladen bei einem Neustart nach dem Einspielen eines Backups am Tage oben lässt bzw. hochfährt und gespeicherte Status nachführt, auch wenn das Backup in der Nacht bei runtergelassen Rollladen gezogen wurde. Es ist zu vermuten, dass genau diese logische Denkweise, die Programmierer zu dieser vorhandenen Vorgehensweise geführt hat. Dass dieses bei ungünstiger Programmierung durch den Anwender auch zu unerwarteten Vorgängen führen kann, liegt in der Natur der Sache.

Gruß Xel66
-------------------------------------------------------------------------------------------
524 Kanäle in 146 Geräten und 267 CUxD-Kanäle in 34 CUxD-Geräten:
343 Programme, 334 Systemvariablen und 183 Direktverknüpfungen,
RaspberryMatic Version: 3.65.11.20221005 + Testsystem: CCU2 2.61.7
-------------------------------------------------------------------------------------------
Einsteigerthread, Programmlogik-Thread, WebUI-Handbuch

Messiahs
Beiträge: 11
Registriert: 22.10.2018, 20:20

Re: Howto - Vermeidung von Programmstarts nach Neustart der CCU

Beitrag von Messiahs » 18.04.2019, 17:21

würde ich zumindest erwarten, dass das Auto auch nach einem Neustart die vorher in Betrieb befindliche Klimaanlage wieder mit der gleichen Solltemperatur wie beim Abstellen aktiviert und auch das Radio wieder einschaltet
zum Abschluss:
Wäre es wirklich so, dann wären wir wahrscheinlich das erste Mal der gleichen Meinung...
Aber dein Beispiel spiegelt den falschen Sachverhalt...
Stand jetzt, würde immer die erste Konfiguration eines Bauteiles aktiviert werden, d.h. der erste gespeicherte Radiosender wird gespielt, die Außenspiegel werden passend für deine Frau angepasst (Schatzi wollte damals auf die "1"), der Sitz fährt beängstigend weit an's Lenkrad, gleichzeitig springt die Klimaanlage auf max. Frost und zusätzlich spurtet dein Auto, ohne dein Zutun, von 0 auf 130.
Während Du auf die nächste Mauer in der Tiefgarage zurast, denkst du noch, dass es wahrscheinlich nicht die Beste Idee war, was sich die Entwickler gedacht haben...

Nochmal: Ich will eine benutzerfreundlich Kontrolle darüber haben, ob ein Pgm. nach einem Restart automatisch ausgeführt wird oder nicht.. Über Risiken und Nebenwirkungen bin ich mir bewußt und fühle mich aufgeklärt genug.

P.S.: Schauen wir mal, was in diesem Jahr noch kommt.

Xel66
Beiträge: 14085
Registriert: 08.05.2013, 23:33
System: Alternative CCU (auf Basis OCCU)
Wohnort: Nordwürttemberg
Hat sich bedankt: 580 Mal
Danksagung erhalten: 1492 Mal

Re: Howto - Vermeidung von Programmstarts nach Neustart der CCU

Beitrag von Xel66 » 18.04.2019, 18:40

Messiahs hat geschrieben:
18.04.2019, 17:21
Aber dein Beispiel spiegelt den falschen Sachverhalt...
Nein, tut es eben nicht, denn entgegen Deiner Darstellung hätte es die letzten Zustände vor dem Abstellen gespeichert und wüsste an Hand der aktuellen Positionserfassung, dass es sich eben nicht auf der Autobahn befindet (wir gehen mal davon aus, dass ich im Carport und nicht in der Tiefgarage stehe und dadurch GPS geht) und würde eben nicht mit 130 km/h auf irgendetwas unter Begleitung des ersten Senders im Radio zurasen. Sondern es würde mit laufendem Motor nach dem Anlassen dastehen, aus dem Radio spielt der Sender, der beim Abstellen lief (natürlich eine andere Sendung :-) ) und in Abhängigkeit von der Umgebungstemperatur läuft die Klimaautomatik und das Licht ist in Abhängigkeit vom Umgebungshelligkeit an oder eben aus. Übertragen auf die Hausautomation werde eben keine Standardwerte gesetzt, sondern die letzten gespeicherten (Systemvariablen) und die aktuell ermittelten (Uhrzeit, Temperatur, Helligkeit, Aktorzustände) zur Herstellung eines konsistenten Zustandes gemäß der für diese Bedingungen programmierten Schaltzustände wieder hergestellt.

Und genau das erwarte ich. Keine Standardzustände, keine irgendwie vorbelegten Zustände, sondern das, was ich für die durch das System nach dem Reboot festgestellten Bedingungen programmiert habe. Eben z.B. dass nachts die Rollladen geschlossen sind und die Heizung sich in dem Zustand befindet, die gespeichert (Heizperiode etc.) oder eben ermittelt (Heizprofil an Hand des Datums und der Uhrzeit) wurde. Wobei zugegebenermaßen das Beispiel "Heizperiode" etwas tricky ist, da es sich in meinem Fall hier um einen zwar automatisch in Abhängigkeit von der Außentemperatur (und einiger historischer Vortageswerte) gebildeten und in einer Systemvariable zwischengespeicherten Zustand handelt. Das hieße auch, dass beim Einspielen eines Backups vom vor dem Umschaltpunkt ggf. den falschen Zustand hinstellt. Aber bei einem unbeaufsichtigten Reboot würde sich der passende Zustand am nächsten Tag bei passenden Bedingungen wieder hinstellen. Aber das würde genau zwei Mal im Jahr passieren. Und darum muss bei einem Reboot das System genau diese Bedingungen prüfen und die Aktoren gemäß der Programmierung automatisch hinstellen. Mit dem Unterdrücken von automatischen Bedingungsprüfungen verhindert man diesen Automatismus nun mal. Und darum ist das so angelegt, wie es ist.

Wenn eine solche Unterdrückungsmöglichkeit wider besseren Wissens eingebaut wird, sage ich mal voraus, dass dieses von vielen Anwendern in Unkenntnis der Auswirkungen aktiviert wird (so wie auch manche die Anwesenheitsvariablenlösung in alle Programme eingebaut haben und oder andere, eigentlich dokumentierte Einstellungsmöglichkeiten falsch justiert werden) und dieses früher oder später zu unvorhergesehenen und auf die Schnelle nicht nachvollziehbaren Effekten führen wird. Zum Glück ist die Behebung dann recht einfach, indem man diese Option deaktiviert. Man muss dann nur erst mal drauf kommen, warum z.B. ein Rollladenprogramm die Rollladen nicht gemäß der programmierten Zeiten hinstellt. Das Problem ist eigentlich, dass sich die Mähr hält, dass alle Programme zum Systemstart durchlaufen werden. Aber das ist nun mal definitiv falsch. Es werden lediglich die Bedingungen geprüft. Und wenn eine solche Prüfung ein WAHR ergibt, wird gemäß der Programmierung die zugehörige DANN-Aktion durchgeführt.

Gruß Xel66
-------------------------------------------------------------------------------------------
524 Kanäle in 146 Geräten und 267 CUxD-Kanäle in 34 CUxD-Geräten:
343 Programme, 334 Systemvariablen und 183 Direktverknüpfungen,
RaspberryMatic Version: 3.65.11.20221005 + Testsystem: CCU2 2.61.7
-------------------------------------------------------------------------------------------
Einsteigerthread, Programmlogik-Thread, WebUI-Handbuch

Messiahs
Beiträge: 11
Registriert: 22.10.2018, 20:20

Re: Howto - Vermeidung von Programmstarts nach Neustart der CCU

Beitrag von Messiahs » 19.04.2019, 14:27

Wie auch immer. Ich habe oben dazu schon alles geschrieben, Danke dir für deine Meinung, die ich akzeptiere.. bleibe aber bei meiner.
Die Option wird (wahrscheinlich) kommen, da anscheinend nicht nur ich den Bedarf und den Nutzen hierfür sehe.

Grüße & frohe Ostern
Messi

Xel66
Beiträge: 14085
Registriert: 08.05.2013, 23:33
System: Alternative CCU (auf Basis OCCU)
Wohnort: Nordwürttemberg
Hat sich bedankt: 580 Mal
Danksagung erhalten: 1492 Mal

Re: Howto - Vermeidung von Programmstarts nach Neustart der CCU

Beitrag von Xel66 » 19.04.2019, 18:12

Messiahs hat geschrieben:
19.04.2019, 14:27
Die Option wird (wahrscheinlich) kommen
Vielleicht. Aber so recht glaube ich noch nicht dran. Ich sehe da aber mehr Probleme und Supportbedarf kommen, als dass das wirklich ein Problem lösen würde. Denn es kaschiert nur die Auswirkungen eines nicht wirklich existenten Problems, denn viele beschriebene Fehlfunktionenen, die auf die automatische Prüfung der Bedingungen zum Systemstart zurückzuführen sind, sind ein Problem der mangelhaften Kenntnis der Logik der CCU und der Abarbeitung und Triggerung von Programmen. Insofern kein technisches, sondern ein gefühltes und humanes Problem eben. Ein Error in Layer 8 eben.
Grüße & frohe Ostern
Ebenso.

Gruß Xel66
-------------------------------------------------------------------------------------------
524 Kanäle in 146 Geräten und 267 CUxD-Kanäle in 34 CUxD-Geräten:
343 Programme, 334 Systemvariablen und 183 Direktverknüpfungen,
RaspberryMatic Version: 3.65.11.20221005 + Testsystem: CCU2 2.61.7
-------------------------------------------------------------------------------------------
Einsteigerthread, Programmlogik-Thread, WebUI-Handbuch

hug0
Beiträge: 178
Registriert: 03.06.2013, 08:11

Re: Howto - Vermeidung von Programmstarts nach Neustart der CCU

Beitrag von hug0 » 13.06.2019, 15:28

Hallo,

vielleicht habe ich es überlesen, aber kann es sein, dass die Programme seit einer der letzten CCU-Updates nicht mehr alle bei einem Neustart starten? Zumindest interpretiere ich das so, da ich normalerweise bei jedem Neustart jede Menge Push-Nachrichten bekam, die diverse Programme aussenden und bei meinen letzten 2 Starts war ziemliche Ruhe...

In den Change Logs habe ich auch nichts gesehen (oder falsch gesucht).

Danke, der Hugo

Benutzeravatar
NilsG
Beiträge: 1684
Registriert: 09.08.2013, 23:44
System: CCU
Hat sich bedankt: 381 Mal
Danksagung erhalten: 30 Mal
Kontaktdaten:

Re: Howto - Vermeidung von Programmstarts nach Neustart der

Beitrag von NilsG » 13.09.2019, 12:02

almrausch hat geschrieben:
26.07.2017, 08:46
Natürlich werde ich die ursprüngliche Variable "Anwesenheit" umbenennen, um Klarheit für die Verwendung herzustellen. Mir erschloss sich nur nicht der Sinn für eine neue Variable, wenn die bisherige nicht benutzt wurde.

Bevor ich eine "fremde" Lösung einsetze, möchte ich die vollständig verstehen. Daher stelle ich auch schon mal "nervige" Fragen :)
Moin!

Und was, wenn ich die Ursprungs-Variable "Anwesenheit" bereits benutze?!
z.B. für mein iPhone, sprich mich :mrgreen:

Dafür dann einfach eine "neue" anlegen mit den ursprünglichen Werten?!

Ein weiteren "vorteilhafter" Nebeneffekt wäre ja auch, dass bei einem Neustart - und setzen der "Anwesenheit" auf TRUE, nicht überall die Dinge passieren, die man haben möchte, wenn man nach Hause kommt :mrgreen:
Irgendwie lustig, dass die CCU /Homematic da so macht ...

Lustige Szenarien, die da entstehen können, wenn man mit der Ursprungsvarible arbeitet, Stromausfall hatte und die CCU in Abwesenheit neu startet :lol:

Somit werde ich die wohl tunlichst nicht (mehr) verwenden und für den hier beschrieben Effekt entsprechend verbiegen ... :idea:


Danke!

Nils
Grüße und DANKE! 🍻

Nils

-----------------------------------------
CCU3 + 2x LAN-Gateway

dtp
Beiträge: 10655
Registriert: 21.09.2012, 08:09
System: CCU
Wohnort: Stuttgart
Hat sich bedankt: 320 Mal
Danksagung erhalten: 501 Mal

Re: Howto - Vermeidung von Programmstarts nach Neustart der

Beitrag von dtp » 16.09.2019, 15:19

NilsG hat geschrieben:
13.09.2019, 12:02
Und was, wenn ich die Ursprungs-Variable "Anwesenheit" bereits benutze?!
z.B. für mein iPhone, sprich mich :mrgreen:
Steht doch in meinem Startposting drin. Neue Systemvariable für die An- bzw. Abwesenheit anlegen und die alte für den Reboot verwenden.

Und wenn du willst, dass die neue Anwesenheitsvariable nach einem Neustart immer auf anwesend steht, dann einfach ein entsprechendes Programm erstellen. Aber wirklich sinnhaft ist das nicht. Schließlich kann die CCU ja nach einem Stromausfall auch mal in Abwesenheit neu starten. Aber seien wir dankbar, dass eQ-3 eine nicht löschbare Systemvariable eingeführt hat, die nach einem Neustart immer einen definierten Wert einnimmt. Ich persönlich hätte sie nur nicht unbedingt "Anwesenheit" getauft. 8)
CCU3 mit stets aktueller FW und den Addons "CUxD" und "Programmedrucken", ioBroker auf Synology DiskStation DS718+ im Docker-Container;
einige Projekte: zentrales Push-Nachrichten-Programm zPNP, DoorPi-Videotürsprechanlage, An- und Abwesenheitsdetektion per Haustürschloss, zentrales Programm zur Steuerung von Beschattungsgeräten zBSP.

gmp
Beiträge: 72
Registriert: 05.12.2020, 18:25
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 5 Mal
Danksagung erhalten: 1 Mal

Re: Howto - Vermeidung von Programmstarts nach Neustart der CCU

Beitrag von gmp » 06.12.2020, 19:35

Hallo zusammen,
vom zentralen Push-Nachrichten-Programm rüber zur nächsten Baustelle. :D

Ich habe alles so eingerichtet, wie hier angegeben. Die Logik dahinter ist mir auch soweit klar, doch nach einem Neustart werden meine aktiven Programme jetzt gar nicht mehr automatisch gestartet. Ich muss meine (zu dieser Zeit) aktiven Aktoren (z.B. Zwischenstecker) händisch wieder einschalten.
Des Weiteren ist mir der Punkt 3 der Anleitung nicht so ganz klar. Warum soll man denn die zuvor eingestellte "CCU SV Status" Variable überall wieder gegen die "Haus SV Anwesenheit" tauschen?

VG
Thomas

Xel66
Beiträge: 14085
Registriert: 08.05.2013, 23:33
System: Alternative CCU (auf Basis OCCU)
Wohnort: Nordwürttemberg
Hat sich bedankt: 580 Mal
Danksagung erhalten: 1492 Mal

Re: Howto - Vermeidung von Programmstarts nach Neustart der CCU

Beitrag von Xel66 » 06.12.2020, 19:52

gmp hat geschrieben:
06.12.2020, 19:35
Ich muss meine (zu dieser Zeit) aktiven Aktoren (z.B. Zwischenstecker) händisch wieder einschalten.
Das bräuchtest Du nicht, würdest Du diesen Blödsinn nicht an allen möglichen und unmöglichen Stellen einsetzen, denn dann würden Aktoren, die zu dem Rebootzeitpunkt eingeschaltet sein sollten, auch eingeschaltet. Es gibt durchaus Anwendungsfälle, aber der globale Einsatz dieses Workarounds ist einfach falsch, auch wenn es hier gern anders kommuniziert wird. Diese "Empfehlung" basiert einfach auf der Tatsache, dass die Empfehlungen das System WebUI und die zugrunde liegenden Mechanismen einfach nicht begriffen haben.

Sorry für die klaren Worte, aber der Hersteller hat sich was dabei gedacht, als er das so angelegt hat, denn die Vorgehensweise ist grundsätzlich zielführend, das System in einen kosistenten Zustand zu stellen, der den aktuellen Gegebenheiten und dem Zeitpunkt entspricht, bzw. wie es der Anwender in seiner Programmierung hinterlegt hat. Steht das System nicht so, wie es der Anwender es sich gedacht hat, dann hat er bei seiner Programmierung einen Fehler gemacht. Und diese falschen oder unzureichenden Programmierungen werden durch diesen Workaround übertüncht, sind danach aber nicht korrekter. Läuft nach dem Motto: "Wenn ich nicht weiß, wie ich es richtig mache, mache ich gar nichts." In der Politik hieß das mal "Regieren mit ruhiger Hand".

Gruß Xel66
-------------------------------------------------------------------------------------------
524 Kanäle in 146 Geräten und 267 CUxD-Kanäle in 34 CUxD-Geräten:
343 Programme, 334 Systemvariablen und 183 Direktverknüpfungen,
RaspberryMatic Version: 3.65.11.20221005 + Testsystem: CCU2 2.61.7
-------------------------------------------------------------------------------------------
Einsteigerthread, Programmlogik-Thread, WebUI-Handbuch

Antworten

Zurück zu „HomeMatic Tipps & Tricks - keine Fragen!“