[BETA] [MODUL] Raumdisplay (RoomDisplay)

Noch kurz vor dem Wochenende ein kleines Update:

v1.2.202408728

  • NEU: Hintergrundbilder und Beispielbilder hinzugefügt
  • NEU: Bibliotheks- bzw. Modulinfos vereinheitlicht
  • FIX: Fehler beim Abrufen von ‚MoodLight‘ korrigiert
  • FIX: Problem beim Auswerten von booleschen Werten gelöst

Wichtigster Punkt ist der Letzte (Auswerten von booleschen Werten), da konnte es zu Fehlern im Modul kommen. Ansonsten verrichtet es bei mir absolut zuverlässig seine Dienste auf 2 Displays!

Gruß HEiko

Habe Dein Modul gerade am Wickel, er schreibt nicht die Seiten JSon in das Display.
Die Objekte werden bedient, habe einmal Gauge drin und die Info ist im Debug. nichts im Debug wenn ich Objekte erstelle.
Kannst Du helfen?

Du hast Dir aber die Hintergründe und Idee des Moduls schon durchgelesen?

DAS Modul schreibt keine Seiten, es kümmert sich um das Mapping der UI- und IPS-Objekte (in beide Richtungen).

Wenn Du auch die Seiten designen und verwalten möchtest, dann solltest Du Dich mit dem openHASP Modul beschäftigen!

Gruß Heiko

Tschuldige, ich hatte es für ein eigenständiges Modul gehalten und wollte es so ausprobieren.
Ich lese gleich mal genauer.

Kein Ding. Es ist ein eigenständiges Modul, aber eben mit einem anderen Focus!

Gruß Heiko

Wer es zufällig gesehen hat, ich habe nochmal meine Designs für „Zimmer“ überarbeitet. In diesem Zusammenhang ist nochmal viel Arbeit in das Modul geflossen um jetzt auch das Mapping der UI-Objekte ARC, BUTTON, LINEMETER und ROLLER richtig zu unterstützen.

Habe auch nochmal die Screens (rot & blau) und die dazugehörigen Konfigurationen (pages10.jsonl [rot] & pages30.jsonl [blau]) dazu gepackt (Ordner docs bzw. imgs).

Die Dinger sind leider echte Zeitfresser - weil es macht so viel Spaß damit zu experimentieren, aber jetzt muss ich mal meine Sucht in den Griff bekommen. Eigentlich funktioniert jetzt auch alles was funktionieren sollte :slight_smile: Aus diesem Grund habe ich das Modul jetzt als Beta eingestellt.
Hier noch der Changelog:

BETA v1.3.20240827

  • NEU: Neue Beispielbilder und Konfigurationen hinzugefügt
  • NEU: Neben dem Platzhalter {{val}} wird jetzt auch {{txt}} bei Rückrechnung unterstützt
  • FIX: Unterstützung für ARC, BUTTON, LINEMETER und ROLLER hinzugefügt bzw. verbessert
  • FIX: Fehler bei Umrechnung und Rückrechnung korrigiert
  • FIX: Fehler bei Auswertung von booleschen Werten nochmal korrigiert
  • FIX: Textausgabe mit Sonderzeichen jetzt bei allen Objekten möglich
  • FIX: Bessere und mehr Debug-Meldungen

Gruß Heiko

1 „Gefällt mir“

Danke für die tolle Arbeit.
Aber ich verstehe das noch nicht so richtig.
Die pages10 und 30.jsonl müssen in das Display hochgeladen werden und können auch dort verwaltet werden?

Hi,

danke für Dein Lob!

Vielleicht mal ein Paar Worte bzw. Steps wie und wo man was machen kann.

1.) Nach dem Flashen (selbstredend) kann man das Display ganz normal im Browser aufrufen!

HINWEIS: Ich habe jedem Display eine feste IP über meine Fritzbox zugewiesen.

Das sieht dann so im Home-Menu aus:

2.) Das Grunddesign usw. einstellen. Oben den ersten Button drücken „HASP Design“

Dort kann man den UI-Theme (Hasp Dark - ist für meine Beispiele der Richtige)

Farben habe ich wie folgt …

ORANGE/ROTE Variant:

  • Primär = 255 153 000
  • Secondary = 255 121 057

BLAUE Variante:

  • Primär = 016 161 230
  • Secondary = 000 085 131

3.) Start Layout ist standardmäßig die Datei pages.jsonl !!

Jetzt gibts es 2 Möglichkeiten:

a) ALLES SO LASSEN und den Inhalt meiner Beispieldateien (pages10 & pages30) in die schon existierende pages.jsonl reinkopieren (so mach ich es)!

b) IM DIALOG HASP DESIGN ÄNDERN und den Dateinamen hier ändern, z.B. /paghes10.jsonl

Save Settings und zurück über Main Menu (Reboot bei Änderungen ist immer gut :slight_smile:

4.) Der File Editor

Über Hauptmenu aufrufbar …

Variante a) einfach auf den Dateinamen pages.jsonl klicken und das File wird geladen und angezeigt und man kann einfach über Copy&Paste den Inhalt austauschen und mit Strg+S alles Speichern und dann „Reload Pages“ (oder reboot)!

Sollte man die Variante b) gewählt haben, dann über den Button Upload die Konfigurationsdatei hochladen - wahrscheinlich dann nochmal Reload Pages bzw. Reboot (habe ich selber noch nicht probiert)!

5.) Selber was Anpassen

Einfach in den File Editor gehen, pages.jsonl laden und die Anpassungen vornehmen. Danach Speichern (Strg+S) und Reload Pages ausführen.
Manchmal ist das Teil hartnäckig oder man ist sich sicher die Anpassungen haben nicht gezogen … dann Clear Pages … warten bis Display schwarz wird … dann Reload Pages klicken … jetzt sollte es passen!

Gruß HEiko

2 „Gefällt mir“

Ganz blöde Frage: ich habe Checkboxen gesetzt, die ich mit der Auswertung vom MQTT Server Gerät und dem Value zum Schalten bringe.
Ist nun das Gerät von woanders geschaltet, würde ich gerne den Zustand im Display ändern, ich muß wohl ein „Payload“ schicken. Wie würde der aussehen?
Ich kenn mich nicht so aus mit MQTT
Die Checkbox heißt hasp/uhr/state/p3b8

Bin mir nicht sicher ob ich die Frage richtig verstehe. Hast Du ein UI-Objekt vom Typ Switch mit einer Boolean Variable in IPS verknüpft, oder was genau?

Wenn Du eine Verknüpfung hinterlegst, wird auch bei Aktivität am Display das entsprechende IPS-Objekt geschalten (sofern diese ein Action hat [RequestAction]).

Gruß Heiko

Ich arbeite eigentlich nur mit Deinem Modul für das Mappen, wie ihr das nennt.
Die Displayinhalte erstelle ich mit dem Online Tool von Openhasp, d.h. ich nutze die Objektzuordnung nur für Daten von Gauge usw , bei Checkboxen ist nichts drin, weil ich MQTT Server Client nutzen kann.
Kein Requestaktion, frage per Script und Ereignis den Zustand „0“ und „1“ ab.
Funktioniert eigentlich für mich super.
Aber zur Synchronität müßte ich wahrscheinlich in die Objektzuordnung auch die Checkboxen eintragen, oder?


Ich bin mir zwar immer noch nicht 100% klar ob ich alles verstanden habe, aber muss ich vielleicht auch nicht … weil …

Ja, wenn Du das synchrone am Display haben möchtest.

HINWEIS: Wenn Du bei der Spalte Rückrechnung eine „-1“ einträgst, dann wird definitiv keine RequestAction nach IPS durchgeführt! Wenn Du also das Dinge selber per MQTT und Script machen willst, solltest Du die sicherheitshalber eintragen :slight_smile:

Das mit der MQTT und Payload Geschichte zum Display und ist mein Problem, wie sage ich’s dass sie sich ändert ohne auf das Display zu drücken?

Gab auch ohne Eintrag kein Problem, aber wie sage ich dem Display und der Checkbox, Du bist checked :wink: oder unchecked :wink:

Falls es mal nicht mehr klappt, weißt Du ja wie man es lösen kann :slight_smile:

Naja, normalerweise verknüpfst Du ja ein boolesche Variable mit dem Switch (Checkbox). Das sollte dann automatisch funktionieren. Wenn nicht muss ich nochmal schauen. Wenn Du was anderes verknüpfen willst, dann musst Du in „Umrechnung“ etwas eintragen das den wert auf 1 bzw. 0 umrechnet. Der Switch in HASP kennt nur 0 oder 1 :smiley:

Gruß HEiko

Na… ich glaube ich erkläre schlecht, das Schalten per Display funktio nokkelt, brauch dafür keine Verknüpfung.
Nur wenn ich per Webfront was schalte, sollte im Display auch der Zustand erneuert werden.
Das wird wohl per Payload gehen, nur wie weiß ich nicht.

Wenn die Variable richtig über das Modul verknüpft ist, dann sollte der Zustand auch automatisch vom Modul gepflegt werden.

Aber du hast oben im BIld keine Checkboxen zugeordnet.

1 „Gefällt mir“

Die ist in deinem Screen ein Label und nicht zugeordnet (wie @ralf richtig schreibt)?!?!?

Es muß laut Openhasp Erklärung irgendwas mit

  • hasp/<nodename>/command topic with payload <keyword>=<parameter(s)>
    werden.
    Das verstehe ich nicht.
    hasp/uhr/command und dann p3b8=1 oder 0
    oder was muß ich senden?
    Ein MQTT Client Device mit dem Inhalt hasp/uhr/command/p3b8=1 müßte es meiner einer Meinung werden…

Fangen wir nochmal anders an :smiley:

Was möchtest Du auf dem Display angezeigt haben?

Checkboxen werden mit dem UI-Element „Switch“ dargestellt! Wenn Du also einen Switch mit einer IPS-Variable (BOOL) verknüpfst, dann wird auch bei Änderung der Variable in IPS auch der Schalter auf dem Display geschalten.

Gruß HEiko

Ich würde vermuten, dass Helmut die Zustände selber in einem Script managen möchte und nur auf der Suche nach dem richtigen MQTT Kommando ist.

1 „Gefällt mir“