Beliebige Texte im Display anzeigen

Einrichtung, Anschluss und Programmierung der HomeMatic CCU

Moderator: Co-Administratoren

timmy1977
Beiträge: 79
Registriert: 28.04.2012, 17:14
System: CCU
Hat sich bedankt: 7 Mal

Re: Beliebige Texte im Display anzeigen

Beitrag von timmy1977 » 12.05.2012, 12:06

Danke für die Tipps!
Werde Deine Parameter auch mal testen.
Bei mir ist die CCU bislang nicht abgestürzt (außer bei fehlerhaten Skripten im Test)
Aber zur Vorbeugung:
Da beim Dimmer die Werte relativ schnell nacheinander eingeblendet werden, dürfte eine Regel:

Wenn: Dimmer Dimmwert von...bis Auslösen auf Aktualisierung ("Änderung" geht hier nicht, da ein Ändern des Dimmwertes dann nicht angezweigt wird wenn kein ein-ausschalten dazwischen liegt)
Dann: Skript verzögert um 2 Sekunden

vielleicht einer besseren Stabilität dienen.
(Bislang hatte ich es auf "sofort" stehen, was beim Dimmvorgang (kann 2-3 Sekunden dauern von 0 auf z.B. 80%) eine sekündliche Aktualisierung im Display bewirkt hat.)

timmy1977
Beiträge: 79
Registriert: 28.04.2012, 17:14
System: CCU
Hat sich bedankt: 7 Mal

Re: Beliebige Texte im Display anzeigen

Beitrag von timmy1977 » 16.05.2012, 23:43

Hallo!
Warum werden folgende Texte in der CCU nicht abwechselns angezeigt?
Programm eins läuft ab mit:
string stderr;
string stdout;
system.Exec ("sh /etc/config/addons/lcd_msg/display_msg.sh $m100s b150s r350 i2$Tür öffnen<br/>ausgelöst!" ,&stdout, &stderr);

direkt anschließend Programm mit:
string stderr;
string stdout;
system.Exec ("sh /etc/config/addons/lcd_msg/display_msg.sh $m100s b150s r350 i1$Haustürschloss<br/>entriegelt!" ,&stdout, &stderr);

Da beide Nachrichten unterschiedliche IDs haben, sollten sie doch abwechselnd eingeblendet werden - oder? In welchem Rythmus eigentlich (10Sek-->1, 10Sek-->2)?
Es wird immer nur die letzte Nachricht angezeigt, es sei denn ich gebe Nachricht 1 z.B. p400. Dann natürlcih nur die erste.

klassisch
Beiträge: 3978
Registriert: 24.03.2011, 04:32
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 112 Mal
Danksagung erhalten: 71 Mal

Re: Beliebige Texte im Display anzeigen

Beitrag von klassisch » 17.05.2012, 05:34

Ich habe mit den Hochkommas experimentiert und zusätzlich eine Gruppe eingeführt:

Code: Alles auswählen

string stderr;
string stdout;
system.Exec ("sh /etc/config/addons/lcd_msg/display_msg.sh '$m1d b2359t gAllesZu 
iKellerlicht$Kellerlicht' ",&stdout, &stderr);
Das Löschen sieht dann so aus:

Code: Alles auswählen

string stderr;
string stdout;
system.Exec ("sh /etc/config/addons/lcd_msg/delete_msg.sh '-g AllesZu -i Kellerlicht' " ,&stdout, &stderr);
In einem anderen Programm

Code: Alles auswählen

string stderr;
string stdout;
system.Exec ("sh /etc/config/addons/lcd_msg/display_msg.sh '$m1d b2359t gAllesZu iHaustuer$Haustuer' ",&stdout, &stderr);
und Löschen

Code: Alles auswählen

string stderr;
string stdout;
system.Exec ("sh /etc/config/addons/lcd_msg/delete_msg.sh '-g AllesZu -i Haustuer' ",&stdout, &stderr);
die SystemExec immer in einer Zeile. Den Zeilenumbruch macht das Forum.
In dieser Art gibt es für jeden Sensor ein Programm. Es dürften jetzt ca. 12 Stück sein; vorwiegend Fenster-Drehgriffsensoren, TFKs für die Riegelkontaktschalter aber auch Rauchmeldegruppe und Wassermelder.
Allerdings habe ich vor dem systemExec-Aufruf immer einige Sekunden Verzögerung eingebaut, um gleichzeitige Aufrufe von Systems Execs zu minimieren. Das macht die Anzeige zwar träger, aber das System stabiler. Und die Riegelkontaktschalter sind recht lang gefiltert.

timmy1977
Beiträge: 79
Registriert: 28.04.2012, 17:14
System: CCU
Hat sich bedankt: 7 Mal

Re: Beliebige Texte im Display anzeigen

Beitrag von timmy1977 » 17.05.2012, 13:01

@ Klassisch
Werden bei Dir dann Texte "im Wechsel" angezeigt? Wie sieht das aus? Werden die Texte dann z.B. im 10-Sekundentakt Text1/Text2/Text1/Text2 eingeblendet über die angegebene Dauer (z.B: m2m - 2 Minuten lang)?
So in etwa verstehe ich den Text aus dem Wiki (vielleicht verstehe ich da auch etwas falsch?):

$m1h i1$Hallo Welt!

⇒zeigt 1 Stunde lang den Text "Hallo Welt!" mit der Standard-Priorität 500 an.

$m1h i2 p500$Test

⇒zeigt zusätzlich neben "Hallo Welt!" auch "Test" an. Die Angabe einer anderen id (wahlweise auch Gruppe) ist notwendig um nicht die vorherige Nachricht zu überschreiben.

$m1m p400$Neue Mail!

⇒zeigt eine Minute lang die Meldung "Neue Mail!" an. Während dieser Minute werden die anderen beiden Nachrichten nicht angezeigt! Nach Ablauf der Minute wird diese Meldung gelöscht, und es wird wieder im Wechsel "Hallo Welt!" und "Test" angezeigt.

So habe ich im "Skript testen" folgendes ausprobiert (den ganzen Code am Stück):

Code: Alles auswählen

string  stderr;
string stdout;
system.Exec ("sh  /etc/config/addons/lcd_msg/display_msg.sh $m2m b2m i1$Hallo Welt!" ,&stdout,  &stderr);

string  stderr;
string stdout;
system.Exec ("sh  /etc/config/addons/lcd_msg/display_msg.sh $m2m b2m i2 p500$Test" ,&stdout,  &stderr);
Testweise habe ich auch "p500" bei "Hallo Welt" eingetragen, es wird immer nur "Test" angezeigt und nichts anderes.

Mit Hochkomma habe ichs mal so versucht:

Code: Alles auswählen

string  stderr;
string stdout;
system.Exec ("sh  /etc/config/addons/lcd_msg/display_msg.sh '$m2m b2m i1$Hallo Welt!' " ,&stdout,  &stderr);
system.Exec ("sh  /etc/config/addons/lcd_msg/display_msg.sh '$m2m b2m i2 p500$Test' " ,&stdout,  &stderr);
Ebenfalls erfolglos. Es wird immer nur "Test" angezeigt für 2 Minuten.

In meinen Programmen habe ich ebenfalls 1-7 Sekunden Verzögerung eingebaut (je nach dem) um die CCU zu entlasten.
Dort funktioniert das auch nicht.
Zuletzt geändert von timmy1977 am 17.05.2012, 13:39, insgesamt 1-mal geändert.

klassisch
Beiträge: 3978
Registriert: 24.03.2011, 04:32
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 112 Mal
Danksagung erhalten: 71 Mal

Re: Beliebige Texte im Display anzeigen

Beitrag von klassisch » 17.05.2012, 13:34

timmy1977 hat geschrieben:@ Klassisch
Werden bei Dir dann Texte "im Wechsel" angezeigt? Wie sieht das aus? Werden die Texte dann z.B. im 10-Sekundentakt Text1/Text2/Text1/Text2 eingeblendet über die angegebene Dauer (z.B: m2m - 2 Minuten lang)?
So in etwa verstehe ich den Text aus dem Wiki (vielleicht verstehe ich da auch etwas falsch?):
Bei mir wechseln sich die Texte ständig ab. Etwa nach 1 bis 2 Sekunden. Ganz praktisch, man kann die einzelnen Texte lesen und auf den nächsten warten. Also genau so wie ich das für meine Funktion brauche.
Habe mit den Optionen auch hin- und herjongliert. Meine sind seit ca. eine Jahr so wie ich sie brauche und wenn ein neuer Sensor dazu kommt, wird einfach ein altes Programm kopiert und modifiziert. Dafür habe ich mir ein "Rezept" geschrieben und das wird stur abgearbeitet.
Habe gerade nochmals nachgeschaut, ob ich zu den Einstellungen von lcd_msg noch was notiert haben. Dem ist leider nicht so, außer "Achtung! LCD-Einstellungen der CCU NUR am Display vornehmen. Nicht übers WebUI. Ansonsten wird lcd_msg unwirksam."
Mit lcd_msg habe ich aber auch gekämpft. Die Spuren sind sicher im Forum zu finden, wahrscheinlich sogar in diesem Thread. Es waren auch ein paar Fehler drin. Von der Anlage und den Parametern ist das lcd_msg genial. Sehr universell gemacht. Ich bin sehr dankbar, daß es dieses AddOn gibt, aber eigentlich gehört eine solche Funktion "ins Bordwerkzeug" fest mit eingebaut. Da ist eQ3 wieder auf halber Strecke stehengeblieben.

Noch ein Edit: meine Auseinadersetzung mit lcd_msg findest Du hier ab dem 25.04.2011. DoZoid hat damals dankenswerterweise noch einen Fehler beseitigt.
Ja, nochwas: Bei mir läuft die CCU auf 1.503, und ich nutze lcd_msg 1.21.

timmy1977
Beiträge: 79
Registriert: 28.04.2012, 17:14
System: CCU
Hat sich bedankt: 7 Mal

Re: Beliebige Texte im Display anzeigen

Beitrag von timmy1977 » 17.05.2012, 14:31

@Klassisch
Jetzt funktionierts! :D
Mit den von mir geschriebenen Scripten (in der Antwort oben) klappts doch.
Die CCU brauchte wohl "nur" einen Neustart. Sie lief jetzt fast zwei Wochen ohne Neustart und hat all meine Experimente mitgemacht, das war wohl, zumindest was das lcd_msg angeht, etwas zu viel. Alles andere lief ohne Probleme, bis auf den wechselnden Text. Daher kam ich vorher nicht auf einen Reboot.
Aber irgend jemand schreib ja hier immer wieder: Reboot tut gut. So scheints zu sein.

Die CCU läuft bei mir auf 1.505 und lcd_msg 1.21

Ich bin erst mal bei ID´s und Prioritäten geblieben. Jetzt noch Gruppen dazu.... vielleicht später. Ich habe das Teil erst seit 3 Wochen (bin also noch Anfänger) und mir qualmt der Kopf. Gut, dass ich noch in Elternzeit bin, nur noch bis morgen und mein Sohn tagsüber zwischendurch geschlafen hat. Sonst hätte ich mich nicht so einarbeiten können. :wink: Aber erst mal habe ich alles so wie ichs haben möchte mit meinen ersten Komponenten (Keymatic mit 2 FBDs, 1x UP-Dimmer mit Taster, 1xUP-Doppelschalter mit 2 Doppeltastern an Ein- und Ausgang).
Später sollen als nächstes meine FS20 Heizungsregler durch Homematic ersetzt werden, dann wird es mit Scripten wohl noch mal kompliziert, denn ich stelle mir ein paar Auswahlmöglichkeiten über einen Displaywandtaster vor (z.B. Partymodus darüber, eine "Haus-Verlassen-Funktion", wird wohl = Variable "Abwesend" sein, ....)

Vielen Dank schon mal an alle die mir geholfen haben! :D

Wahrscheinlich werde ich noch öfter Fragen haben!

klassisch
Beiträge: 3978
Registriert: 24.03.2011, 04:32
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 112 Mal
Danksagung erhalten: 71 Mal

Re: Beliebige Texte im Display anzeigen

Beitrag von klassisch » 17.05.2012, 14:58

Herzlichen Glückwunsch zur erfolgreichen Implementierung (und dem pflegeleichten Söhnchen).

ebecker
Beiträge: 81
Registriert: 17.03.2013, 09:59
Hat sich bedankt: 1 Mal
Danksagung erhalten: 1 Mal

Re: Beliebige Texte im Display anzeigen

Beitrag von ebecker » 01.04.2013, 11:51

Moin allerseits,

ich zeige im Display Wetterdaten an.So weit so gut.

Nun möchte ich den Status eines Sensors unabhängig von dieser Anzeige durch die bei mir weitgehend ungenutzte Alarm-LED anzeigen und zwar für 6 Minuten.

Alle meine Versuche haben nicht geklappt. Entweder ich brauche einen Text, der für einige Sekunden (>2) angezeigt wird oder die LED geht gar nicht an oder nach der vorgegebenen Zeit nicht wieder aus.

Jmd. einen Tipp für mich?

Was ich dachte, was gehen sollte (hier mit 12 Sekunden):

string stdout;
string stderr;
system.Exec("sh /etc/config/addons/lcd_msg/display_msg.sh $m0s a12s$Test", &stdout,&stderr);

Macht leider Dauerlicht.
Alternativ ginge auch das Dauerlicht, wenn es auch eine Möglichkeit gäbe, die Alarm-LED auch auszuschalten.

klassisch
Beiträge: 3978
Registriert: 24.03.2011, 04:32
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 112 Mal
Danksagung erhalten: 71 Mal

Re: Beliebige Texte im Display anzeigen

Beitrag von klassisch » 01.04.2013, 12:03

Kann man die Alarm-LED nicht direkt aus einem WebUI-Programm heraus starten? Denke das so gemacht zu haben. Dadür gibt es eine Systemvariable, soweit ich mich erinnere.

Matthi140
Beiträge: 379
Registriert: 04.09.2009, 22:46
Wohnort: bei Erfurt
Kontaktdaten:

Re: Beliebige Texte im Display anzeigen

Beitrag von Matthi140 » 20.04.2013, 21:20

Hallo,

ich experimentiere neuerdings auch ein wenig rum, aber nutze jetzt CuxD. irgendwie funktioniert das nicht mehr so wie bei System.exec. Früher Standen die Wetterdaten da und wenn das Garagentor offen ist, wechselte die Ansicht, etwa alle 2 sekunden hin und her. Jetzt Steht so lange "Garagentor offen" da bis der wettersensor wieder seine Daten schickt, dan steht das dauerhaft da. und die Verdammte hintergrundbeleuchtung vom display krieg ich auch nicht an.

Der Syntax ist denke ich irgendwie anders.
48 Geräte: 1xCCU1; 1xYAHM+HMW-LGW-O-DR-GS-EU(Testsystem)
Wired (33): 4xHMW-IO-12-Sw7-DR; 5xHMW-LC-Dim1L-DR; 9xHMW-LC-Bl1-DR; 4xHMW-IO-4-FM; 4xHMW-IO-12-FM;
4xHMW-Sen-SC-12-FM; 1xHBW-LC-Sw8; 1xHBW-Sen-Key-12
RF (5): 1xHM-Sec-SD; 1xHM-WDS100-C6-O; 1xHM-WDS30-OT2-SM-2; 1xHM-TC-IT-WM-W-EU; 1xHM-LC-Sw4-WM
Kaputt (7): 2xHM-RC-4-B; 2xHM-Sen-Wa-Od; 1xHM-RC-4-2; 1xHM-WDS100-C6-O; 1xHM-Sec-SD
ausgebaut (1): 1xHM-Sec-RHS

Antworten

Zurück zu „HomeMatic Zentrale (CCU / CCU2 / CCU3 / Charly)“