Beliebige Texte im Display anzeigen
Moderator: Co-Administratoren
Re: Beliebige Texte im Display anzeigen
Hoi Dirch,
vieeeeelen Dank für deine super Antwort. Sie hat mich einiges weiter gebracht.
Heute habe ich min. 3 und gestern 2 Stunden versucht die Anzeige im CCU Display ein bisschen schöner zu formatieren.
Das schönste, dass mir gelungen ist ist:
string stderr;
string stdout;
var Aussentemperatur = dom.GetObject("Aussentemperatur").Value().ToString();
system.Exec("sh /etc/config/addons/lcd_msg/display_msg.sh Aussentemp.______" # Aussentemperatur.ToString() ,&stdout, &stderr);
Entweder ich schreibe in der dritten Zeile ToInteger, dann bekomme ich keine Nachkommastelle z.B. 23.5 °C oder ich schreibe ToString, dann füllt er den Rest halt mit Nullen.
Zu deiner Frage: am liebsten wäre mir es würde nur dauerhaft die Meldung z.B. 23.5 °C angezeigt werden, bzw. nie der Text CCU Homematic.
Gruess René
vieeeeelen Dank für deine super Antwort. Sie hat mich einiges weiter gebracht.
Heute habe ich min. 3 und gestern 2 Stunden versucht die Anzeige im CCU Display ein bisschen schöner zu formatieren.
Das schönste, dass mir gelungen ist ist:
string stderr;
string stdout;
var Aussentemperatur = dom.GetObject("Aussentemperatur").Value().ToString();
system.Exec("sh /etc/config/addons/lcd_msg/display_msg.sh Aussentemp.______" # Aussentemperatur.ToString() ,&stdout, &stderr);
Entweder ich schreibe in der dritten Zeile ToInteger, dann bekomme ich keine Nachkommastelle z.B. 23.5 °C oder ich schreibe ToString, dann füllt er den Rest halt mit Nullen.
Zu deiner Frage: am liebsten wäre mir es würde nur dauerhaft die Meldung z.B. 23.5 °C angezeigt werden, bzw. nie der Text CCU Homematic.
Gruess René
Re: Beliebige Texte im Display anzeigen
diese meldung wird auch gezeigt wenn im text ein "<" oder ein ">" vor kommt. "<>" ist für befehle reserwiert wie im zeilenumbruch weiter oben beschrieben.rtlplus hat geschrieben:Hallo Dirch,
also wenn ich das Programm installiere und dann die Zeilen:
string stderr;
string stdout;
system.Exec("sh /etc/config/addons/lcd_msg/display_msg.sh Text immer wieder anzeigen",&stdout, &stderr);
im CCU Skript eingebe und dann ausführe, wird auf meinem Display nur <Retry...> angezeig.
kannst du mir helfen?
Vielen Dank und Gruess, René
hast du was am text verändert und so einen klammerfehler drin?
-
- Beiträge: 579
- Registriert: 24.10.2008, 03:26
- Hat sich bedankt: 1 Mal
- Danksagung erhalten: 2 Mal
Re: Beliebige Texte im Display anzeigen
Hallo René,
Gruss,
Dirch
Eine schoene Loesung faellt mir gerade nicht ein, aber Du kannst den String mit den vielen Nullen ja mit SubStr() kuerzen, die Position des Punkts kannst du mit Find herausfinden. Siehe Teil 1 der Homematic Skript Dokumentationrtlplus hat geschrieben: Entweder ich schreibe in der dritten Zeile ToInteger, dann bekomme ich keine Nachkommastelle z.B. 23.5 °C oder ich schreibe ToString, dann füllt er den Rest halt mit Nullen.
Ok, kommt in die naechste Version mit rein.rtlplus hat geschrieben: Zu deiner Frage: am liebsten wäre mir es würde nur dauerhaft die Meldung z.B. 23.5 °C angezeigt werden, bzw. nie der Text CCU Homematic.
Gruss,
Dirch
Neun von zehn Stimmen in meinen Kopf sagen ich bin nicht verrückt. Die andere summt die Melodie von Tetris . ...
Re: Beliebige Texte im Display anzeigen
ich habe es für meine anlage gerade fertig du musst nur oben den sensor und unten den text ändern.
string stderr;
string stdout;
object wettersensor = dom.GetObject("Wettersensor");
object temperature = dom.GetObject("BidCos-RF." # wettersensor.Address() # ".TEMPERATURE");
var temp = temperature.Value();
var vtemp = temp.ToString() ;
var x = vtemp.Length();
string vtemps = vtemp.Substr(0, x-4);
vtemps ="<skip count='2'/>" + vtemps +"°C";
system.Exec("sh /etc/config/addons/lcd_msg/display_msg.sh Temp Garten" # vtemps ,&stdout, &stderr);
string stderr;
string stdout;
object wettersensor = dom.GetObject("Wettersensor");
object temperature = dom.GetObject("BidCos-RF." # wettersensor.Address() # ".TEMPERATURE");
var temp = temperature.Value();
var vtemp = temp.ToString() ;
var x = vtemp.Length();
string vtemps = vtemp.Substr(0, x-4);
vtemps ="<skip count='2'/>" + vtemps +"°C";
system.Exec("sh /etc/config/addons/lcd_msg/display_msg.sh Temp Garten" # vtemps ,&stdout, &stderr);
Re: Beliebige Texte im Display anzeigen
da ich auf dem display keinen scrolltext hin bekomme, stört mich nun das "-ende-" kann man das abschalten?
Re: Beliebige Texte im Display anzeigen
Vieeelen Dank WAdler 68, hat suuuper funktioniert!
Gruess René
string stderr;
string stdout;
object temperature = dom.GetObject("Aussentemperatur");
var temp = temperature.Value();
var vtemp = temp.ToString() ;
var x = vtemp.Length();
string vtemps = vtemp.Substr(0, x-4);
vtemps ="<skip count='2'/>" + vtemps +"°C";
system.Exec("sh /etc/config/addons/lcd_msg/display_msg.sh Aussentemp." # vtemps ,&stdout, &stderr);
Gruess René
string stderr;
string stdout;
object temperature = dom.GetObject("Aussentemperatur");
var temp = temperature.Value();
var vtemp = temp.ToString() ;
var x = vtemp.Length();
string vtemps = vtemp.Substr(0, x-4);
vtemps ="<skip count='2'/>" + vtemps +"°C";
system.Exec("sh /etc/config/addons/lcd_msg/display_msg.sh Aussentemp." # vtemps ,&stdout, &stderr);
-
- Beiträge: 579
- Registriert: 24.10.2008, 03:26
- Hat sich bedankt: 1 Mal
- Danksagung erhalten: 2 Mal
Wunschliste fuer die naechste Version
Ich nehm das mal mit in die Wunschliste fuer die naechste Version mit auf
Mit etwas Aufwand waere auch ein Scrolltext vorstellbar, allerdings nur recht unschoen mit ruckeligem Zeichenweisen Scrollen. Ich bezweifel ob sanftes Scrollen ueber hss_lcd moeglich ist
Ich wuesste auch gerne ob es moeglich ist die Hintergrundbeleuchtung des Displays aus hss_lcd einzuschalten, waere hybsch wenn man das bei neuen Nachrichten koennte.
Und wie man die LEDs aus hss_lcd ansteuern kann interessiert mich auch, es scheint den Tag <leds/> zu geben, was er genau macht und kann ist mir noch schleierhaft
WAdler 68 hat geschrieben:da ich auf dem display keinen scrolltext hin bekomme, stört mich nun das "-ende-" kann man das abschalten?
rtlplus hat geschrieben:Zu deiner Frage: am liebsten wäre mir es würde nur dauerhaft die Meldung z.B. 23.5 °C angezeigt werden, bzw. nie der Text CCU Homematic
Mit etwas Aufwand waere auch ein Scrolltext vorstellbar, allerdings nur recht unschoen mit ruckeligem Zeichenweisen Scrollen. Ich bezweifel ob sanftes Scrollen ueber hss_lcd moeglich ist
Ich wuesste auch gerne ob es moeglich ist die Hintergrundbeleuchtung des Displays aus hss_lcd einzuschalten, waere hybsch wenn man das bei neuen Nachrichten koennte.
Und wie man die LEDs aus hss_lcd ansteuern kann interessiert mich auch, es scheint den Tag <leds/> zu geben, was er genau macht und kann ist mir noch schleierhaft
Neun von zehn Stimmen in meinen Kopf sagen ich bin nicht verrückt. Die andere summt die Melodie von Tetris . ...
Re: Beliebige Texte im Display anzeigen
Hoi Dirch
du hast im letzten Mail geschrieben, dass du die Funktion:
„eine Meldung dauerhaft im Display der CCU Homematic anzuzeigen z.B. 23.5°C“
in die nächste Version mit rein nimmst.
Nun, meinst du die nächste Version der Firmware der HomeMatic CCU Vers. 1.404 oder die deines Zusatzprogrammes um Texte anzuzeigen.
Die neue Firmwareversion habe ich nämlich gerade installiert und der Text wechselt wie vorher von CCU-HomeMatic zu Aussentemperatur zu -ende- usw.
Oder muss ich die Programmzeilen etwas anpassen?
string stderr;
string stdout;
system.Exec("sh /etc/config/addons/lcd_msg/display_msg.sh I" # vtemp2s # "<br/>O" # vtemp1s, &stdout, &stderr);
Gruess René
du hast im letzten Mail geschrieben, dass du die Funktion:
„eine Meldung dauerhaft im Display der CCU Homematic anzuzeigen z.B. 23.5°C“
in die nächste Version mit rein nimmst.
Nun, meinst du die nächste Version der Firmware der HomeMatic CCU Vers. 1.404 oder die deines Zusatzprogrammes um Texte anzuzeigen.
Die neue Firmwareversion habe ich nämlich gerade installiert und der Text wechselt wie vorher von CCU-HomeMatic zu Aussentemperatur zu -ende- usw.
Oder muss ich die Programmzeilen etwas anpassen?
string stderr;
string stdout;
system.Exec("sh /etc/config/addons/lcd_msg/display_msg.sh I" # vtemp2s # "<br/>O" # vtemp1s, &stdout, &stderr);
Gruess René
-
- Beiträge: 579
- Registriert: 24.10.2008, 03:26
- Hat sich bedankt: 1 Mal
- Danksagung erhalten: 2 Mal
Re: Beliebige Texte im Display anzeigen
Hallo René,
Ich werd das bei Zeiten mal einbauen. Aktuell bin ich aber - wenn ich mal Zeit habe - erstmal an der Fernsteuerung per Email dran. Sobald die zumindest halbwegs fertig ist widme ich mich auch wieder anderen Themen wie der Anzeige von Texten im Display. Bis dahin bitte noch etwas gedulden
Gruss,
Dirch
Ich meinte naetuerlich die naechste Version des Zusatzprogramms. Wenn ich Einfluss auf die Firmwareversionen von ELV/eQ-3 haette dann braeuchte man fuer die Anzeige von Texten im Display keine Zusatzsoftwarertlplus hat geschrieben:Nun, meinst du die nächste Version der Firmware der HomeMatic CCU Vers. 1.404 oder die deines Zusatzprogrammes um Texte anzuzeigen.
Die neue Firmwareversion habe ich nämlich gerade installiert und der Text wechselt wie vorher von CCU-HomeMatic zu Aussentemperatur zu -ende- usw.
Ich werd das bei Zeiten mal einbauen. Aktuell bin ich aber - wenn ich mal Zeit habe - erstmal an der Fernsteuerung per Email dran. Sobald die zumindest halbwegs fertig ist widme ich mich auch wieder anderen Themen wie der Anzeige von Texten im Display. Bis dahin bitte noch etwas gedulden
Gruss,
Dirch
Neun von zehn Stimmen in meinen Kopf sagen ich bin nicht verrückt. Die andere summt die Melodie von Tetris . ...
Re: Beliebige Texte im Display anzeigen
mir ist heute das programm einfach so stehen geblieben
ich lasse so ca. aller 20 s eine neue nachricht auf dem display erscheinen. das geht so weit auch recht gut, nur ist mir das heute einfach so stehen geblieben ich habe kein löschen des displays zwischen der neu beschreibung drin, da es eh immer nur den neusten text zeigte. nun dachte ich, ich drücke auf neustart ( in zusatzsoftware ... doch da kommt nur ein fehler Failure Success . das ist blöd. ich habe nun mal aller 15 s ein löschen drin, mal sehen obs dann besser wird. ( ach ja, ich habe nun wieder die fw 1.403 drauf)
ich lasse so ca. aller 20 s eine neue nachricht auf dem display erscheinen. das geht so weit auch recht gut, nur ist mir das heute einfach so stehen geblieben ich habe kein löschen des displays zwischen der neu beschreibung drin, da es eh immer nur den neusten text zeigte. nun dachte ich, ich drücke auf neustart ( in zusatzsoftware ... doch da kommt nur ein fehler Failure Success . das ist blöd. ich habe nun mal aller 15 s ein löschen drin, mal sehen obs dann besser wird. ( ach ja, ich habe nun wieder die fw 1.403 drauf)