HomeMatic Funk-Statusanzeige - HM-Dis-WM55

Begonnen von Roaster, 14 November 2014, 20:33:48

Vorheriges Thema - Nächstes Thema

Posti123

#270
Zitat von: martinp876 am 08 Februar 2015, 09:54:27
Update

es gibt seit jetzt eine neue Funktion - texte dynamisch zu erstellen.

set dis_02 displayWM short  line1 e:{("ca:".ReadingsVal("h.caro.Clima","desired-temp","no")."-".ReadingsVal("h.caro.Clima","measured-temp","no"),"blue",(ReadingsVal("h.caro.Clima","ValvePosition",0))?"on":"off")}
set dis_02 displayWM short  line2 e:{("lg:".ReadingsVal("h.lnge.Clima","desired-temp","no")."-".ReadingsVal("h.lnge.Clima","measured-temp","no"),"green",(ReadingsVal("h.lnge.Clima","ValvePosition",0))?"on":"off")}
set dis_02 displayWM short  line3 e:{("fh:".ReadingsVal("h.fsth.Clima","desired-temp","no")."-".ReadingsVal("h.fsth.Clima","measured-temp","no"),"green",(ReadingsVal("h.fsth.Clima","ValvePosition",0))?"on":"off")}
set dis_02 displayWM short  line4 e:{("du:".ReadingsVal("h.dact.Clima","desired-temp","no")."-".ReadingsVal("h.dact.Clima","measured-temp","no"),"yellow",(ReadingsVal("h.dact.Clima","ValvePosition",0))?"on":"off")}
set dis_02 displayWM short  line5 e:{("ba:".ReadingsVal("h.bad.Clima","desired-temp","no")."-".ReadingsVal("h.bad.Clima","measured-temp","no"),"blue",(ReadingsVal("h.bad.Clima","ValvePosition",0))?"on":"off")}
set dis_02 displayWM short  line6 e:{("o:".ReadingsVal("h_s_aussen","temperature","-")."-p:".ReadingsVal("h_s_aussen","pressure","-"),"blue","noIcon")}

set dis_01 displayWM short  line1 e:{("o:".ReadingsVal("h_s_aussen","temperature","-")."-p:".ReadingsVal("h_s_aussen","pressure","-"),"blue",(ReadingsVal("h_s_aussen","x",1))?"off":"on")}
set dis_01 displayWM short  line2 e:{("o:lum".ReadingsVal("h_s_aussen","luminosity","-"),"blue","noIcon")}
set dis_01 displayWM short  line3 e:{("s1:".ReadingsVal("h_s_az","temperature","-")."-h:".ReadingsVal("h_s_az","humidity","-"),"orange","noIcon")}
set dis_01 displayWM short  line4 e:{("s1:".ReadingsVal("h_s_keller","temperature","-")."-h:".ReadingsVal("h_s_keller","humidity","-"),"green","noIcon")}


Syntax:

set dis_02 displayWM short  line1 e:{(text,color,icon)}

e: ist die erkennung, dass es zu press-time generiert werden soll.
in den {} MUSS ein array von 3 elementen geliefert werden, text color und icon. ggf kann man noIcon senden um no icon zu bekommen :)

Der text darf nicht länger als 12 zeichen sein, sonst wird er nicht dargestellt.
es dürfen zwischen e:{...} KEINE Leerzeichen sein. also alles zusammenschieben.

Beachtet, dass die berechnung zur echtzeit gemacht wird. Also keine langen berechnungen durchführen.

Kommentare?

Hi,

siehe hier ist der Syntax für dynamische Texte.

Gibt aber auch die Variante über die MyUtils:

$levelbad = ReadingsVal('Rollo_Bad', 'pct', 0);

fhem("set CUL_HM_HM_Dis_WM55_33B7CC_Dis_01 displayWM short line5 $levelbad blue noIcon");


VG
18xHM-CC-RT-DN, 5xHM-TC-IT-WM-W-EU, HMLAN, 2xJeeLink 868, 1xJeeLink433, 1xCUL868, HM-LC-Bl1PBU-FM, HM-LC-Sw2-FM, HM-LC-SW1-FM, HM-LC-Sw1PBU-FM, 5xHM-Sec-SC-2, 2xHM-Sec-SCo, HM-ES-TX-WM, HM-Sen-MDIR-O-2, HM-WDS10-TH-O, 6xTechnoline, 2x PCA301,2xHM-PB-2-WM55-2,2xHM-RC-4-2,2xHM-WDS30-T-O, HM-SEC-WDS-2

strauch

Ich werde mich mal ans Wiki machen. Brauch aber noch etwas Zeit hab mich selber in letzter Zeit wenig mit dem Display befasst.

Gesendet von meinem Nexus 4 mit Tapatalk

FHEM 5.6 VMware mit Debian. 1 CUL für FS20 und HMLAN für Homematic, HM-CC-RT-DN, HM-LC_Sw1PBU-FM, HM-LC-Bl1PBU-FM,  HM-SEC-SC, HM-SEC-SC-2, HM-LC-Sw1-Pl2, HM-Sec-RHS, ASH2200, FHT80B, S20KSE, Sonos, XBMC, FB_Callmonitor, SMLUSB, Arduino Firmata, uvm.

netbus

hy strauch,
bist du schon dazu gekommen die Wiki zu erweitern?

tomster

Kurze Zwischenfrage als Laie, der von den technischen Protokoll-Postings hier im Thread vielleicht gerade einmal 10% verstehen kann:

1. Wie ist denn der Ablauf der Statusmeldungen genau?
Wird von FHEM bei jeder Zustandsänderung z.B. eines Fensterkontakts der Status jedes Mal an das Display geschickt und wenn man es "aufweckt" zeigt es sofort den korrekten Status an, oder wird erst bei Tastendruck gepollt?

2. Wie "schnell" werden bei eingeschaltetem Display von FHEM gesendete Stausänderungen auf dem Display angezeigt?
Hintergrund ist, dass ich mir überlegt habe, ob der Bausatz nicht auch eine Fernbedienung für eine Multiroomlösung sein kann:
Langer Tastendruck oben = Audio im entsprechenden Raum an
Langer Tastendruck unten = Audio aus
Kurzer Tastendruck oben = lauter
Kurzer Tastendruck unten = leiser

Würde das Display mit sich ändernden Lautstärkewerten ich Echtzeit mitkommen oder wären die arg verzögert? Klar, man dürfte die Lautstärke nur in Steps ändern, sonst hätte man ja wieder einen langen Tastendruck, aber meine Lösung ist derzeit ja nur ein theoretischer Gedanke.
Danke schon Mal für die Aufklärung meiner Fragen!
LG,
TOM

Posti123

Hi,

zu 1. das Display holt sich aktuelle Daten nach jedem Tastendruck. Es erfolgt kein Push.
Zu 2. ich denke eher ungeeignet.
Zwischen dem drücken und Daten holen vergehen 3-5 Sekunden bis die Daten im Display ankommen. Um Dinge eventuell An/Auszuschalten, zum Beispiel Mute on/off könnt ich mir vorstellen aber nicht zum Lautstärke einstellen bzw. Funktionalitäten in rascher Folge

VG
18xHM-CC-RT-DN, 5xHM-TC-IT-WM-W-EU, HMLAN, 2xJeeLink 868, 1xJeeLink433, 1xCUL868, HM-LC-Bl1PBU-FM, HM-LC-Sw2-FM, HM-LC-SW1-FM, HM-LC-Sw1PBU-FM, 5xHM-Sec-SC-2, 2xHM-Sec-SCo, HM-ES-TX-WM, HM-Sen-MDIR-O-2, HM-WDS10-TH-O, 6xTechnoline, 2x PCA301,2xHM-PB-2-WM55-2,2xHM-RC-4-2,2xHM-WDS30-T-O, HM-SEC-WDS-2

tomster

Ok, Danke! Dann werde ich wohl auf den 6-Kanal-Schalter zum Steuern setzen und warten bis das Display Dauer-An unterstützt um vielleicht ein "Now-Playing" hinzubekommen. Da stören die 2-3 Sekunden wohl weniger.

FHEMAN

Ich kriege das Ding einfach nicht mit FHEM gepairt. Gibt es hier eine Besonderheit? Alles andere funktioniert einwandfrei.
NUC7i5 | PROXMOX | FHEM 6.2 | 1 HMLAND | 2 UART | HM | LMS | HIFIBERRY | DOORBIRD | BLINK | BUDERUS | HUE | ALEXA | MILIGHT | LUFTDATENINFO | MQTT| ZIGBEE2MQTT | INDEGO | ROBOROCK | SMA | APC | OPENWB

martinp876

alles "normal". man muss an dis config drücken und dann entsprechend den Button - wie in der Anleitung beschrieben

mipi

Sorry für die Noob-Frage:

Sagt mal, ist die Prozedur zum dynamischen Befüllen des Displays irgendwo zusammengefasst? Im Wiki ist ja nur die statische Variante beschrieben.

Und mal zum Verständnis: Muss man die Reaktion auf die Tasten unterscheiden a la Lang für neue Seite, Kurz für Auswahl?

Gruß Micha
__________________________________________________
Gruß aus'm Wedding

RPi         Maxlan               HMCFGLAN           TT
PiUSV     3 Max!-Therm    div. Homematic

Posti123

Hi Micha,

die dynamische Variante ist in diesen Thread auf Seite 18-19 beschrieben.

Bzw. siehe mein Post ein paar weitere Einträge oben

VG
18xHM-CC-RT-DN, 5xHM-TC-IT-WM-W-EU, HMLAN, 2xJeeLink 868, 1xJeeLink433, 1xCUL868, HM-LC-Bl1PBU-FM, HM-LC-Sw2-FM, HM-LC-SW1-FM, HM-LC-Sw1PBU-FM, 5xHM-Sec-SC-2, 2xHM-Sec-SCo, HM-ES-TX-WM, HM-Sen-MDIR-O-2, HM-WDS10-TH-O, 6xTechnoline, 2x PCA301,2xHM-PB-2-WM55-2,2xHM-RC-4-2,2xHM-WDS30-T-O, HM-SEC-WDS-2

hoover123

Mal etwas neues zum Thema "Einschalten des Displays" von der Ferne via FHEM.

Man könnte doch einen Schaltaktor nehmen, und den einen Taster des Displays überbrücken. Dabei wären sogar Short- und Long-Befehle möglich, also welche Zeiten man für den Schaltaktor setzt.

Meine Idee ist dieser hier:
http://www.elv.de/homematic-schaltaktor-fuer-batteriebetrieb-komplettbausatz.html
Mit seinen Abmessungen von 45x45mm ließe er sich prima in der Gerätedose hinter dem Display verstauen. Zudem ist er auch vom Energieverbrauch ein guter Kandidat. Als Ausgang hat er einen MOSFET-Schalter.

Am Taster TA1 des HM-Dis-WM55 lässt sich die 3V Batteriespannung des Displays abgreifen. Man müsste doch bloß zwei Drähtchen anlöten, um den TA1 durch den Schaltaktor (in meinem Beispiel der HM-LC-SW1-BA-PCB) zu überbrücken. Man muss natürlich auf die richtige Polung achten.

Anbei mein Gedankenspiel als Mini-Schaltplan.

Auf dem HM-Dis-WM55 ist der STM32F101CBT6 verbaut. Das Signal des TA1-Zustandes wird an den PA10 des STM32 geführt. Dieser müsste nach meiner Recherche ein USART1_RX sein, also ein hochohmiger Receiver.
http://www.st.com/web/en/resource/technical/document/datasheet/CD00161561.pdf

martinp876

ohne es genau zu analysieren - es sollte klappen.
Was du benötigen könntest sind 2 Taster(aktoren) da es ja 2 Tasten gibt.
Beurteilen kann ich es aber nicht, da mit die Sinnhaltigkeit entgeht. Wenn ich nicht da bin, es also von remote ansteuern will - kann ich es nicht ablesen (ohne webcam).
da es 4 Ausgaben gibt Btn1/2 short/long kann ich unterscheiden, was ich sehen will. Remote kann ich also Beobachtern, die keine Taste drücken können/wollen/dürfen eine Anzeige schalten.
Was ist also die Anwendung? Ich sehe weniger das technische Problem.

hoover123

#282
Das Display soll im Treppenhaus direkt bei der Wohnungseingangstüre sitzen (dort ist zufälligerweise eine Unterputz-Gerätedose frei). Beim Zusperren oder Aufsperren der Tür soll das Display bestimmte Zustände anzeigen (Alarm scharf/unscharf; Fenster ... zu/offen; Herd noch an; Außentemperatur ... Schirm mitnehmen).
Ein Schaltaktor soll in der Gerätedose unter dem Display verstaut werden, der das Display automatisch aufweckt, wenn ich die Wohnungstüre zu- oder aufsperre (Abfrage eines Riegelschaltkontaktes). Die Display-Texte sollen auch als Hinweis für "autorisierte" Personen gelten (Babysitter, Schwiegermutter...), um sich zu vergewissern, dass z.B. die Alarmanlage tatsächlich unscharf beim Betreten der Wohnung ist.
Wie gesagt - das Display soll ohne Tastendruck aufgeweckt werden, denn für die Schwiegermutter ist das alles zu kompliziert. Darüber hinaus hat man nur eine Hand für den Schlüssel frei, mit der anderen Hand trägt man irgendeine Tasche.

hoover123

Ich habe mein Gedankenspiel in die Tat umgesetzt.
Das Display HM-Dis-WM55 lässt sich nun durch einen externen Schaltaktor aufwecken, ohne eine Taste drücken zu müssen.

Hier der Beweis auf Youtube:
https://youtu.be/X01Jewuhgxg

Wermutstropfen:
Die Variante Short (vergleichbar mit kurzem Drücken des Tasters) funktioniert leider nicht, weil mein Funkschalt-Aktor zu träge ist. Es klappt nur mit der Variante Long (vergleichbar mit langem Drücken des Tasters). Nach dem Aufwecken können somit die wichtigsten Infos auf einer "Long"-Startseite des Displays angezeigt werden. Durch nachträgliches, händisches Drücken lassen sich immerhin Texte für short und long darstellen.

Lösungsansatz:
Einer der beiden Taster wird einfach durch ein nachträglich angelötetes Kabel von extern durch einen Schaltaktor gebrückt. Lötkolbenerfahrung ist erforderlich.

In meinem Beispiel habe ich den stromsparenden Schaltaktor HM-LC-SW1-BA-PCB (circa 17 Euro bei ELV) verwendet. Hier muss auf die Polung des Kabels geachtet werden! Bei anderen Schaltaktoren mit integriertem Minirelais (potentialfreie Kontakte) muss nicht auf die Polung geachtet werden. Im letzteren Fall ist aber dafür der Ruhestrom größer (schlechtere Energieeffizienz).

Der HM-LC-SW1-BA-PCB lässt sich mit Abmessungen von 45x45mm inklusive Batterie hervorragend in einer Unterputz-Gerätedose bzw. Hohlwanddose bei Trockenbau verstauen.

Die nachfolgende Fotodokumentation ist meine persönliche Variante. Hier gibt es sicherlich noch Raum für Verbesserungen, ich habe es relativ schnell zusammengeschustert.

Schritte:
1. Kabel von alten Festplatten-Flachbandkabel mit roter Farbmarkierung gefunden, davon zwei Adern benutzt. (Hier geht natürlich jedes andere Kabel auch). Vorteilhaft sind farbliche Markierungen, damit man die Polung unterscheiden kann.
2. Anlöten am Taster TA1 ist ungünstig, weil in unmittelbarer Nähe empfindlich SMD-Bauteile sitzen. Deshalb TA2 benutzt. Am TA2 sind zwei Füße frei.
3. Display-Anschluss durch temporären Einschub eines Pappdeckels gegen Hitze des Lötkolben geschützt. Ohne Schutz ist die Gefahr durch Hitze der Lötspitze sehr hoch!!!
4. Randseite des TA2 ist +3V (Batteriespannung), Displayseite des TA2 ist der geschaltete Kontakt. (hier bitte Schaltplan von vorherigen Post beachten!
5. Die beiden Adern am TA2 angelötet, dann mit einem Klecks aus der Heißklebepistole gesichert (Zugentlastung).
6. Überbrückungskabel durch vorhandene Öffnungen der Leiterplatte und des Gehäuses nach außen geführt und am Schaltaktor mit der richtigen Polung angeschlossen.

Bitte Fotodokumentation anschauen!


Pfriemler

#284
Cool. Zwei Ideen:
1. Das HM-MOD-Re-8 ist nur unwesentlich teurer, aber deutlich kleiner. Damit könnte man auch gleich beide Taster fernsteuern, so man sich die andere Seite zu löten traut.
2. Schalten die Taster nicht wie bei solchen Tastern oft üblich gegen GND? (Ich kenne den Schaltplan nicht) Dann könntest Du die Empfängerschaltung auch gleich mit von den Displaymodul-Batterien mit versorgen - der Stromverbrauch dürfte ein Bruchteil des Displaytasters ausmachen. Bedeutet allerdings mehr Lötbedarf am Gerät.
edit: Ich schäme mich für diese Frage... ein Blick aufs Schaltbild hätte Klarheit gebracht.

Trotzdem müsste es klappen, das zusätzliche Modul mit von den Displaybatterien zu speisen, indem man die Ausgangsstufen der Empfänger einfach umgeht: Sowohl der FET des Einkanalschalters als auch die Basen der Transistoren des 8-Kanal-Moduls werden vom Controller des Empfängers aktiv mit UB angesteuert, mit einem Widerstand "für alle Fälle" von irgendwas um 1k in Serie mit einem Diödchen (damit die Ausgangsstufe des Empfängers nicht angesteuert wird, wenn man lokal einen Taster drückt)  könnte man direkt an den Tasterpin in Richtung Displaycontroller. Das macht genau einen Draht mehr: UB, GND und Ansteuerung. Dafür keine extra Batterie mehr.
Man muss nur den Niedrigvolt-Versorgungszweig des Empfängers speisen.
"Änd're nie in fhem.cfg, denn das tut hier allen weh!" *** Wheezy@Raspi(3), HMWLAN+HMUART, CUL868(SlowRF) für FHT+KS+FS20, miniCUL433, Rademacher DuoFern *** "... kaum macht man es richtig, funktioniert es ..."