Hervorragendes und günstiges Mini Touch Display

Hallo zusammen,

ich habe beim günstigen China Händler ein hervorragendes Mini Touch Display gefunden und erfolgreich integriert. Ich dachte ich teile das mal mit euch, da es sich gut bspw. auf dem Tisch etc. macht und extrem flexibel ist. Versorgt per USB-C.

Es geht um folgendes Gerät:
Display Link

Hier ein Bild wie es bei mir jetzt aussieht:

Das Display habe ich mit OpenHASP umgeflasht was sehr einfach ist:

  • Per USB-C an den Rechner anschließen
  • Auf dieser Website https://nightly.openhasp.com/
  • Dieses Gerät auswählen: Guition ESP32-S3-4848S040
  • Starten und fertig.

Dann mit dem WLAN verbinden. Rest erfolgt auf der Website im File Editor:

In IpSymcon muss ein MQTT Server angelegt werden. Diese Daten müssen in der config.json im Panel eingetragen werden:

Unbenannt1

In der pages.jsonl erfolgt die Konfiguration der GUI. Es gibt sehr viele verschiedene mögliche Items die auf dieser Website aufgelistet sind. Es sind auch mehrere Seiten möglich:
https://openhasp.com/0.7.0/design/objects/

Bei mir sieht diese folgendermaßen aus:

{"page":0,"id":1,"obj":"label","x":20,"y":0,"h":40,"w":250,"text":"Außentemperatur:","align":0,"bg_color":"#2C3E50","text_color":"#FFFFFF"}
{"page":0,"id":2,"obj":"label","x":396,"y":0,"h":40,"w":110,"text":"23.2°","align":0,"bg_color":"#2C3E50","text_color":"#FFFFFF"}

{"page":1,"id":1,"obj":"btn","x":9,"y":60,"w":465,"h":70,"toggle":true,"text":"Nachtmodus","text_font":32,"mode":"break","align":1}
{"page":1,"id":2,"obj":"btn","x":9,"y":140,"w":465,"h":70,"toggle":false,"text":"Alle Lampen aus","text_font":32,"mode":"break","align":1}
{"page":1,"id":3,"obj":"btn","x":9,"y":220,"w":465,"h":70,"toggle":true,"text":"Deckenlampe","text_font":32,"mode":"break","align":1}
{"page":1,"id":4,"obj":"slider","x":9,"y":310,"w":465,"h":30,"min":0,"max":100}
{"page":1,"id":5,"obj":"arc","x":9,"y":360,"w":110,"h":110,"min":0,"max":100,"border_side":1,"type":0,"rotation":0,"start_angle":0,"end_angle":360,"start_angle10":0,"end_angle10":360,"adjustable":false}
{"page":1,"id":7,"obj":"label","x":40,"y":390,"h":50,"w":55,"text":"0","align":0,"bg_color":"#2C3E50","text_color":"#FFFFFF"}
{"page":1,"id":8,"obj":"label","x":140,"y":390,"h":50,"w":70,"text":"Akku","align":0,"bg_color":"#2C3E50","text_color":"#FFFFFF"}

page0 taucht auf allen Seiten auf.

Im MQTT Server Konfigurator entsprechend die notwendigen Instanzen anlegen. Es sind nur die nötig auf die man im IPS reagieren möchte:

Dort kann man dann auf die Variablen reagieren (werden beim ersten antippen angelegt)

EDIT: Bitte nehmt die Variante in Post 5 von @kris Es klappt auch so und läuft stabiler.

Für das steuern bin ich über den Telnet Weg gegangen. Client Socket auf die (festgelegte) IP mit Port 23 anlegen. Der MQTT Pfad ist für die Commands ein anderer. Telnet war für mich einfacher.

Anbei ein Beispiel mit dem ich einen Button steuere und die Hintergrundbeleuchtung dimme (Nachtmodus):

If($IPS_VARIABLE == 29970){
    $temp=getvalue(29970);
    If($temp==2){
        CSCK_SendText(48581, "p1b1.val=1".chr(13));
        IPS_Sleep(500);
        CSCK_SendText(48581, "backlight=5".chr(13));
    }else{
        CSCK_SendText(48581, "p1b1.val=0".chr(13));
        IPS_Sleep(500);
        CSCK_SendText(48581, "backlight=60".chr(13));
    }
}

Ich hoffe das hilft dem ein oder der anderen.

Lg
Theo

3 „Gefällt mir“

Habe mir eines bestellt. Brauche dringend ein kleines Bedienpanel für den Schreibtisch

Genau für sowas ist das Teil super geeignet :slight_smile:

1 „Gefällt mir“

Wer mich kennt, mit sowas spiele ich auch.
Das Modul ist schon recht viel erwähnt worden, hier:
Meine Annex ESP32 Version mit UDP Anbindung (Code ist im Zip-File), schaut auch das Youtube Video.
Und Tasmota: aus dieser Diskussion und seiner Version
Die Annex Basic ESP32 Version ist recht flexible weil man(n) eigene Button oder Hintergründe einbinden kann.

1 „Gefällt mir“

Hi,

ich habe ein Sunton ESP32-2432S028 (auch bekannt als Cheap Yellow Display), leider aus Zeitgründen nicht viel gemacht…

Aber bzgl MQTT, ihr erstellt eine Instanz „MQTT Client Gerät“, tragt dort euren Topic ein, Haken bei „Nutze abweichendes Thema beim senden“, Bei Thema das „state/…“ durch „command/“ ersetzen, als Typ string und speichern.

Also so:
image

Dann erstellt Ihr ein Script mit folgendem Inhalt

$ID = 12345; //euer MQTT Client Gerät
$senden = 'p1b1.val=1';

RequestAction($ID,$senden); // euer sendebefehl.

Das ist der einfachste weg. Man kann auch json senden, hat bei mir aber adhoc nicht geklappt…

Was ganz cool ist, man kann per mqtt den Text ändern

$ID = 12345; //euer MQTT Client Gerät
$senden = 'p1b1.text=Tagmodus';

RequestAction($ID,$senden); // euer sendebefehl.

So wird aus dem „Nachtmodus“ ein „Tagmodus“…

Danke dir! Ich gucke mir das nochmal an. Ich habe irgendwie das mit der RequestAction auf die MQTT Instanz nicht hinbekommen. Aber bestimmt nur irgendein Tippfehler.

Die Themen mit Text senden etc. benutze ich schon bei der Außentemperatur. „Nachtmodus“ ist auch im IPS ein Button :smiley:

Vllt noch als Zusatz: Wenn man als Typ „String“ in der Instanz auswählt, kommt der JSON String zurück. Die Variablen „event“ und/oder „val“ werden dann nicht mehr verwendet.

@kris Ich habe es jetzt nochmal probiert, laufe aber auf den selben Fehler.

  • In der MQTT Client Instanz als senden "hasp/plate/command/"hinterlegt. Typ String.
  • Dieser Befehl:
RequestAction(43136,"p0b2.text=".$temp);

43136 ist die MQTT Instanz von dem Objekt p0b2. Und ich kriege ein:

Warning: Variable #43136 existiert nicht in /var/lib/symcon/scripts/20312.ips.php on line 11

Wundert mich auch nicht weil RequestAction geht ja auf die Variablenaktion die ja garnicht hinterlegt ist. Oder hast du irgendein ActionScript?

Lg
Theo

Wenn ich in der instanz ein gültiges thema habe und auf string stelle, wird mir auch eine stringvariable von symcon erstellt.

Was steht denn bei dir als thema? Ich würde erwarten

hasp/plate/state/p0b2

Ach ich bin doch doof…Ich habe die Client Instanz genommen und nicht die String Variable. Mit der klappt es. Dann baue ich mein Sende Skript jetzt auf MQTT um. Danke dir.

Es ist im übrigen egal in welche Instanz man das reinschreibt. Solange der Befehl auf das richtige Objekt verweist, wird der Wert gesetzt.

Moin,

hab mir auch mal son ding bestellt, macht erstmal einen guten Eindruck.

Was bei mir nicht funktioniert sind die Symbole im text per mqtt.

Bsp.:

//Uhrzeit Text
$currentTime = date('H:i');
$senden = 'p1b30.text=\uE150 '.$currentTime;
RequestAction($ID,$senden);

Da bekomme ich statt dem Uhren Symbol halt den Text „\uE150 …“ eingetragen.
Wenn ich das Symbol in der json conifg hinterlege nach dem gleichen Schema wird mir das Symbol angeziegt…

Wäre für einen Tipp dankbar :slight_smile:

Und danke für den Tipp mit dem Display!

Versuch mal mit zwei \. Ich denke das man das quoten muss. Also so:

Leider nicht, es wird aber trotzdem nur ein \ angezeigt…

Habs gefunden, so geht’s:

//Uhrzeit Text
$currentTime = date('H:i');
$senden = '["p1b30.text=\uE150 '.$currentTime.'"]';
RequestAction($ID,$senden);

Habe mein Display erhalten und mir erstmal was zusammen gefrickelt. Wirklich tolles Ding zumal für den Preis. Und die Firmware ist echt großartig!

Habe es mir auch bestellt :grinning:
Bin gespannt.

Wollen wir perspektivisch die Layouts hier rein packen wenn einer fertig ist? Vllt ist für jemand anderen was dabei :grin:

Vielleicht kann man ein Modul basteln, dass das Layout aus Symcon direkt da rein schreibt. :thinking:

Das sollte möglich sein, da die GUI Inhalte selbst auch als JSON per MQTT übertragen werden können.
Und da man für die MQTT Befehle nicht auf das exakte Objekt schicken muss sondern auch eine Instanz vom bzw. Backlight ansprechen kann dürfte das erstmal gehen.

Das Ding ist der Hammer :blush:

Der 230V Teil ist nicht berührungssicher ausgeführt und ich habe mich noch nicht „getraut“ da Spannung drauf zu geben bzw überlege eher einen Schaltregler für eine 12/24V Versorgung einzubauen weil der Teil jetzt nicht sooo toll ist


Nach kurzem ausprobieren und lesen der Doku hat man es am laufen.
Die openHASP Software ist echt super flexibel.

Sofern kein anderer da schon was am basteln ist schreibe ich aber mal ein kleines Modul, da die MQTT Implementierung von Symcon hier recht schnell sehr unübersichtlich wird.

Aha… noch jemand, der das Teil neugierig zerlegt hat… :wink:

Ich hab in meinem früheren ( Berufs-) Leben schon einige minimalistische Netzteile gesehen, aber die verbaute Lösung schlägt das alles um Längen und ich würde die Netzversorgungs-Option aus Sicherheitsgründen unter keinen Umständen nutzen wollen.

Der Digital-Part ist exzellent, aber die Versorgung definitiv übles China-Niveau.

1 „Gefällt mir“