HM-Dis-EP-WM55 Temperatur anzeigen
Moderator: Co-Administratoren
HM-Dis-EP-WM55 Temperatur anzeigen
Hallo Homematic-Freunde,
leider finde ich bisher nichts Verwertbares zum EP-Display im Forum, meistens beziehen sich die Threads auf das OLED-Display.
Ich möchte gern die aktuelle Temperatur z.B. eines HM-Wandthermostaten in einer der Statuszeilen anzeigen. Das scheint wohl nur über ein Script zu funktionieren.
Kann mir da wer helfen?
Herzlichen Dank im voraus,
blücher16
leider finde ich bisher nichts Verwertbares zum EP-Display im Forum, meistens beziehen sich die Threads auf das OLED-Display.
Ich möchte gern die aktuelle Temperatur z.B. eines HM-Wandthermostaten in einer der Statuszeilen anzeigen. Das scheint wohl nur über ein Script zu funktionieren.
Kann mir da wer helfen?
Herzlichen Dank im voraus,
blücher16
Zuletzt geändert von alchy am 01.05.2018, 15:32, insgesamt 1-mal geändert.
Grund: Titel geändert
Grund: Titel geändert
Re: MH-Dis-EP-WM55 Temperatur anzeigen
Ansteuern der Statusanzeige mit E-Paper-Display aus Script
https://r.tapatalk.com/shareLink?share_ ... are_type=t
https://r.tapatalk.com/shareLink?share_ ... are_type=t
Re: MH-Dis-EP-WM55 Temperatur anzeigen
Was in meiner Modifikation dann so aussieht:
Gruß
Rainer
Code: Alles auswählen
!! Universalprogramm zum Füllen des HM-Disp-EP-WM55
!! (c) DrTob
!! Version 1.01
! Symbole
! 0x80 AUS
! 0x81 EIN
! 0x82 OFFEN
! 0x83 geschlossen
! 0x84 fehler
! 0x85 alles ok
! 0x86 information
! 0x87 neue nachricht
! 0x88 servicemeldung
! Zugriff auf vordefinierte Texte
!
! 0x80 Textblock 1
! 0x81 Textblock 2
! 0x82 Textblock 3
! 0x83 Textblock 4
! 0x84 Textblock 5
! 0x85 Textblock 6
! 0x86 Textblock 7
! 0x87 Textblock 8
! 0x88 Textblock 9
! 0x89 Textblock 10
! Tonfolgen
! 0xC0 AUS
! 0xC1 LANG LANG
! 0xC2 LANG KURZ
! 0xC3 LANG KURZ KURZ
! 0xC4 KURZ
! 0xC5 KURZ KURZ
! 0xC6 LANG
!Signale
! 0xF0 AUS
! 0xF1 Rotes Blitzen
! 0xF2 Grünes Blitzen
! 0xF3 Orangenes Blitzen
!Seriennummer des HM-Disp-EP-WM55.
string seriennummer = "NEQ0711824";
!Variablen für die Texte und Icons
!Nicht verwendete Variablen nicht löschen, sondern auf "" setzen!
!Zeilen-Variablen können 0x80-0x89 für vordefinierte Texte oder bis zu 12 Zeichen Freitext sein. (längere Texte werden abgeschnitten)
string zeile2 = "Temp: " + dom.GetObject( "BidCos-RF.JEQ0140901:1.TEMPERATURE" ).Value().ToString(1)+ "°C";
string icon2 = "";
string zeile3 = "rel "+ dom.GetObject( "BidCos-RF.JEQ0140901:1.HUMIDITY" ).Value().ToString(0)+ "%";
string icon3 = "";
string zeile4 = "abs "+dom.GetObject( "Abs_Feuchte_aussen" ).Value().ToString(1)+" g/kg";
string icon4 = "";
string signal = "0xF2";
string tonfolge = "0xC0";
! 1 bis 15. 0 = Unendlich
integer wiederholungen = 1;
! es wird zum nächstmöglichen Abstand aufgerundet. Maximum ist 160s.
integer abstand = 10;
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
! System Routine do not change anything below !
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
string splitter="|";
string msgBuffer = zeile2 # splitter # icon2 # "\t";
msgBuffer = msgBuffer # zeile3 # splitter # icon3 # "\t";
msgBuffer = msgBuffer # zeile4 # splitter # icon4;
string substitutions = "A,0x41\tB,0x42\tC,0x43\tD,0x44\tE,0x45\tF,0x46\tG,0x47\tH,0x48\tI,0x49\tJ,0x4A\tK,0x4B\tL,0x4C\tM,0x4D\tN,0x4E\tO,0x4F\tP,0x50\tQ,0x51\tR,0x52\tS,0x53\tT,0x54\tU,0x55\tV,0x56\tW,0x57\tX,0x58\tY,0x59\tZ,0x5A";
substitutions = substitutions # "\ta,0x61\tb,0x62\tc,0x63\td,0x64\te,0x65\tf,0x66\tg,0x67\th,0x68\ti,0x69\tj,0x6A\tk,0x6B\tl,0x6C\tm,0x6D\tn,0x6E\to,0x6F\tp,0x70\tq,0x71\tr,0x72\ts,0x73\tt,0x74\tu,0x75\tv,0x76\tw,0x77\tx,0x78\ty,0x79\tz,0x7A";
substitutions = substitutions # "\t0,0x30\t1,0x31\t2,0x32\t3,0x33\t4,0x34\t5,0x35\t6,0x36\t7,0x37\t8,0x38\t9,0x39\t ,0x20\t!,0x21\t\",0x22\t%,0x25\t&,0x26\t=,0x27\t(,0x28\t),0x29\t*,0x2A\t+,0x2B\t,,0x2C\t-,0x2D\t.,0x2E\t/,0x2F";
substitutions = substitutions # "\tÄ,0x5B\tÖ,0x23\tÜ,0x24\tä,0x7B\tö,0x7C\tü,0x7D\tß,0x5F\t:,0x3A\t;,0x3B\t@,0x40\t>,0x3E";
string bufferLine;
string substEntry;
integer i;
string char;
string line;
string icon;
string command = "0x02,0x0A";
foreach(bufferLine, msgBuffer) {
line = bufferLine.StrValueByIndex(splitter, 0);
icon = bufferLine.StrValueByIndex(splitter, 1);
if ((line <> "") || (icon <> "")) {
command = command # ",0x12";
if ((line.Substr(0,2) == "0x") && (line.Length() == 4)) {
command = command # "," # line;
i = 12;
}
else {
i = 0;
}
while ((i < line.Length()) && (i < 12)) {
char = line.Substr(i, 1);
foreach(substEntry, substitutions){
if (char == substEntry.Substr(0,1)){command = command # substEntry.Substr(1,5);}
}
i = i + 1;
}
if (icon <> "") {
command = command # ",0x13," # icon;
}
}
command = command # ",0x0A";
}
command = command # ",0x14," # tonfolge # ",0x1C,";
if (wiederholungen < 1){
command = command # "0xDF,0x1D,";
}
else {
if (wiederholungen < 11) {
command = command # "0xD" # (wiederholungen - 1) # ",0x1D,";
}
else {
if (wiederholungen == 11) {
command = command # "0xDA,0x1D,";
}
else {
if (wiederholungen == 12) {
command = command # "0xDB,0x1D,";
}
else {
if (wiederholungen == 13) {
command = command # "0xDC,0x1D,";
}
else {
if (wiederholungen == 14) {
command = command # "0xDD,0x1D,";
}
else {
command = command # "0xDE,0x1D,";
}
}
}
}
}
}
if (abstand <= 10) {
command = command # "0xE0,0x16,";
}
else {
if (abstand <= 100) {
command = command # "0xE" # (abstand - 1 / 10) # ",0x16,";
}
else {
if (abstand <= 110) {
command = command # "0xEA,0x16,";
}
else {
if (abstand <= 120) {
command = command # "0xEB,0x16,";
}
else {
if (abstand <= 130) {
command = command # "0xEC,0x16,";
}
else {
if (abstand <= 140) {
command = command # "0xED,0x16,";
}
else {
if (abstand <= 150) {
command = command # "0xEE,0x16,";
}
else {
command = command # "0xEF,0x16,";
}
}
}
}
}
}
}
command = command # signal # ",0x03";
dom.GetObject("BidCos-RF." # seriennummer # ":3.SUBMIT").State(command);
Gruß
Rainer
Alle meine Hinweise sind auf eigene Gefahr umzusetzen. Immer einen Fachmann zu Rate ziehen!
Re: MH-Dis-EP-WM55 Temperatur anzeigen
Hallo Dr.Tob und Rainer,
vielen Dank für Eure Hinweise.
Ich habe beide Programmierungen ausprobiert, das Script von Dr.Tob läuft (entspr. Anzeige wird generiert).
Das von Rainer läuft leider nicht. Um irgendeinen Fehler auszuschließen habe ich nur die String-Zeile 2 (Temp.) von Rainer kopiert und in das Script von Dr.Tob eingefügt mit der Seriennr. meines Wandthermostaten, tut sich aber auch nichts.
Nun bin ich erst mal mit meine Latein am Ende...
vielen Dank für Eure Hinweise.
Ich habe beide Programmierungen ausprobiert, das Script von Dr.Tob läuft (entspr. Anzeige wird generiert).
Das von Rainer läuft leider nicht. Um irgendeinen Fehler auszuschließen habe ich nur die String-Zeile 2 (Temp.) von Rainer kopiert und in das Script von Dr.Tob eingefügt mit der Seriennr. meines Wandthermostaten, tut sich aber auch nichts.
Nun bin ich erst mal mit meine Latein am Ende...
Re: MH-Dis-EP-WM55 Temperatur anzeigen
Ich habe es gerade nochmal als komplett neues Programm gespeichert, jetzt funktioniert es! Ein Programm zu ändern und "als neues Programm speichern" scheint öfter nicht so richtig zu funktionieren.
Das Display will jedoch weder "°C " anzeigen (nur "C") und für das %-Zeichen scheint der Platz nicht zu reichen. Naja, nichts ist perfekt. Aber schonmal ganz brauchbar.
Das Display will jedoch weder "°C " anzeigen (nur "C") und für das %-Zeichen scheint der Platz nicht zu reichen. Naja, nichts ist perfekt. Aber schonmal ganz brauchbar.
Re: MH-Dis-EP-WM55 Temperatur anzeigen
Jetzt würde mich noch interessieren ob es einen Weg gibt die Temperatur eines HMIP-Sensors auf dem HM-Dis-EP anzuzeigen?
-
- Beiträge: 10754
- Registriert: 24.02.2011, 01:34
- System: CCU
- Hat sich bedankt: 65 Mal
- Danksagung erhalten: 673 Mal
Re: MH-Dis-EP-WM55 Temperatur anzeigen
Natürlich.
Alchy
Alchy
Blacklist................... almost full
Ignoranz ist die Summe aller Maßnahmen die man ergreift, um bestehende Tatsachen nicht sehen zu müssen.
© Sandra Pulsfort (*1974)
Lies bitte die Logik von WebUI Programmen und die Tipps und Tricks für Anfänger.
Wichtig auch CUxD ersetzt System.exec. Die HM Script Doku (Downloadart Skripte) hilft auch weiter.
Zum Testen von Scripten den >> HomeMatic Script Executor << von Anli benutzen.
Re: HM-Dis-EP-WM55 Temperatur anzeigen
Hallo Alchy,
aha! Würdest Du denn den Weg WIE mit mir teilen?
aha! Würdest Du denn den Weg WIE mit mir teilen?
Re: HM-Dis-EP-WM55 Temperatur anzeigen
indem du einfach die ID des IP-Sensors in das Script einträgst.
Ähnlich wie:
Rainer
Ähnlich wie:
Grußblücher16 hat geschrieben: mit der Seriennr. meines Wandthermostaten,
Rainer
Alle meine Hinweise sind auf eigene Gefahr umzusetzen. Immer einen Fachmann zu Rate ziehen!
Re: HM-Dis-EP-WM55 Temperatur anzeigen
Ja das dachte ich auch, wenn ich das tue passiert aber gar nichts mehr, habs gerade nochmal ausprobiert.
Es heißt ja das die Funkprotokolle von HM + HMIP nicht zusammenpassen.
Es handelt sich hier übrigens um den Wettersensor HmIP-SWO-B.
Es heißt ja das die Funkprotokolle von HM + HMIP nicht zusammenpassen.
Es handelt sich hier übrigens um den Wettersensor HmIP-SWO-B.