Seite 13 von 25

Re: HmIP-WRCD - Textzeile per Skript setzen

Verfasst: 10.05.2021, 20:23
von MichaelN
Ich finde dein Skript auch gut durchdacht. Das sollte so funktionieren. Versuch doch mal zu loggen, ob die Probleme immer mit besonders langen Übertragungen zusammen hängen.

Re: HmIP-WRCD - Textzeile per Skript setzen

Verfasst: 11.05.2021, 00:00
von Hacker182
FBK2904 hat geschrieben:
08.05.2021, 17:29

Viel Spass beim testen und weiter tüfteln :) .
ich habe es geschafft...vielen Dank dafür. Ich hab es sogar geschafft mir die rel. Luftfeuchte anzeigen zu lassen. Du hattest natürlich recht und es war der 1.Kanal meines Sensors.

Noch eine Blöde Frage. Die aktuelle Uhrzeit...kann man sich die auch entsprechend anzeigen lassen? Und wenn ja im welchem Format wird die ausgegeben sodass ich mir die auf dem Display anzeigen lassen kann?

Das hab ich bereits gefunden...aber leider nicht den Befehl wie ich es am Display dann entsprechend anzeigen lassen kann.

Code: Alles auswählen

dom.GetObject('SYSTEMVARIABLE_TYP_STRING').State(system.Date("%H:%M Uhr"));
Verstanden hab ich das ich mit dem Code

Code: Alles auswählen

{DDBC=WHITE,DDTC=BLACK,DDI=10,DDA=CENTER,DDS="#curTemp#",DDID=3,DDC=true},
mir meine einzelnen Zeilen definiere und festlege wie etwas angezeigt werden soll....

Nur weiß ich im Moment noch nicht wie ich die Abfrage der Uhr in einer Zeile auf dem Display darstellen kann.

Vielleicht jemand hierzu eine Idee?

Vielen Dank schon einmal vorab.

Re: HmIP-WRCD - Textzeile per Skript setzen

Verfasst: 11.05.2021, 00:08
von Baxxy
Hacker182 hat geschrieben:
11.05.2021, 00:00
eine Idee?
Du definierst im Script einen String als Uhrzeit, z.B. ...

Code: Alles auswählen

string uhrzeit = system.Date("%H:%M Uhr");
und integrierst den in deine "Zeile"...

Code: Alles auswählen

{DDBC=WHITE,DDTC=BLACK,DDI=10,DDA=CENTER,DDS="# uhrzeit #",DDID=3,DDC=true},
Ganz einfach... :wink:

Re: HmIP-WRCD - Textzeile per Skript setzen

Verfasst: 11.05.2021, 07:02
von MichaelN
Und dann kannst du uns mal berichten wie hoch der DutyCycle steigt, wenn man das Display minütlich aktualisiert.

Re: HmIP-WRCD - Textzeile per Skript setzen

Verfasst: 11.05.2021, 19:13
von Hacker182
MichaelN hat geschrieben:
11.05.2021, 07:02
Und dann kannst du uns mal berichten wie hoch der DutyCycle steigt, wenn man das Display minütlich aktualisiert.
Lieber nicht.... hab es schon aufgegeben.... Uhr bleibt weg....😁

Re: HmIP-WRCD - Textzeile per Skript setzen

Verfasst: 11.05.2021, 19:53
von FBK2904
MichaelN hat geschrieben:
10.05.2021, 20:23
Ich finde dein Skript auch gut durchdacht. Das sollte so funktionieren. Versuch doch mal zu loggen, ob die Probleme immer mit besonders langen Übertragungen zusammen hängen.
Genau deswegen steuere ich die Displayzeilen alle einzeln an und nicht im Gesamtpaket :wink: .

Re: HmIP-WRCD - Textzeile per Skript setzen

Verfasst: 11.05.2021, 20:09
von FBK2904
Hacker182 hat geschrieben:
11.05.2021, 00:00
Nur weiß ich im Moment noch nicht wie ich die Abfrage der Uhr in einer Zeile auf dem Display darstellen kann.
Vielleicht jemand hierzu eine Idee?
Auch hier (kann) dir geholfen werden :lol: .

Da wir auf der Terrasse (wo das Display hängt) auch ab und zu mal die Uhrzeit wissen wollen, habe ich das auf "Abruf" gelöst.

Ich mache das bei mir mit diesem Script (Türöffner-Scriptteil mit "langem Tastendruck unten" entfernt):
-> Programm anlegen "WENN Displaytasten-Druck unten kurz (:1), DANN Script"

Code: Alles auswählen

!###    E-PAPER Display Zeile 5 Uhrzeit oder Türöffner   ###
!###   wenn langer Tastendruck dann Türöffner betätigen  ### 
!###    bei kurzem Druck Uhrzeit für 10 Sek. anzeigen    ###

!- # Auslöser (Taste) holen #
object src = dom.GetObject("$src$");
string taster = dom.GetObject(((dom.GetObject(src)).Channel())).Name();

!- # System-Uhrzeit holen #
string UHRZEIT = system.Date("%H:%M:%S");

!- # Wenn unterer Taster kurz gedrückt, dann Uhrzeit anzeigen #
if (( taster == "ANZEIGE: DISPLAY (EG):1" ) && ( src.HssType() == "PRESS_SHORT" )) {
  string ZeilenRefresh = "{DDBC=WHITE,DDTC=BLACK,DDI=0,DDA=CENTER,DDS="#UHRZEIT#",DDID=5,DDC=true}";
   dom.GetObject(ID_CHANNELS).Get ("ANZEIGE: DISPLAY (EG):3").DPByHssDP ("COMBINED_PARAMETER").State (ZeilenRefresh);
  string ZEILE_5 = "<  Uhrzeit  <";
  string ZeilenRefresh = "{DDBC=WHITE,DDTC=BLACK,DDI=0,DDA=CENTER,DDS="#ZEILE_5#",DDID=5,DDC=true}";
   dom.GetObject(ID_CHANNELS).Get ("ANZEIGE: DISPLAY (EG):3").DPByHssDP ("COMBINED_PARAMETER").State (ZeilenRefresh, 10000); }  
Drückt man den unteren Taster kurz, wird die aktuelle Uhrzeit für 10 Sekunden in Zeile 5 angezeigt und danach der Text "Uhrzeit" mit jeweils
einem Pfeil nach unten, links und rechts außen angezeigt 8) .

Re: HmIP-WRCD - Textzeile per Skript setzen

Verfasst: 15.05.2021, 13:42
von Aquaplex
Ist schon mal aufgefallen, dass bei Übertragung einer einzelnen Zeile es nicht möglich ist, am Ende ein Leerzeichen zu platzieren? Hintergrund: das Icon für die Zeile soll etwas Abstand haben und nicht so rangeklatscht sein. Funktioniert aber irgendwie nicht bzw. das Leerzeichen wird durchweg ignoriert.

Code: Alles auswählen

dom.GetObject("HmIP-RF.ID:3.DISPLAY_DATA_STRING").State("Hallo ");

Re: HmIP-WRCD - Textzeile per Skript setzen

Verfasst: 15.05.2021, 14:36
von Hacker182
Hallo,
jemand eine Ahnung wie ich von meinem Lichtsensor die Lux Werte auf dem Display angezeigt bekomme?

Mein Sensor ist der HMIP-SLO...

Wenn ich hier was gelernt hab müsste ich doch den Wert erst in eine Variable wandeln und anschließend dann auf eine Zeile bringen....

Gefunden hab ich bis jetzt noch nichts...

Danke schon mal vorab

Re: HmIP-WRCD - Textzeile per Skript setzen

Verfasst: 15.05.2021, 15:31
von MichaelN
Hacker182 hat geschrieben:
15.05.2021, 14:36
müsste ich doch den Wert erst in eine Variable wandeln und anschließend dann auf eine Zeile bringen
Nein, den kannst Du auch direkt aufs Display bringen.