Ulanzi TC001 Smart Pixel Uhr

Themen, die in keine andere Kategorie passen

Moderator: Co-Administratoren

mademyday
Beiträge: 272
Registriert: 03.10.2014, 12:46
System: CCU
Wohnort: Enzkreis
Hat sich bedankt: 3 Mal
Danksagung erhalten: 43 Mal

Ulanzi TC001 Smart Pixel Uhr

Beitrag von mademyday » 19.11.2023, 12:28

Dank eines Artikels in der ct (https://ct.de/y47n) habe ich ein (für mich) neues Spielzeug entdeckt:
Ulanzi TC001 Smart Pixel Uhr - geflashed mit Awtrix Light, s. https://blueforcer.github.io/awtrix-light/#/.

Ich steuere das Teil durch ein einzelnes sh-Skript auf der ccu an. Das Skript holt sich relevante Informationen aus den homematic-Systemvariablen, baut dann die dazu passenden Ansichten und sendet diese per curl-http-request an die Anzeige.

Das Skript wird per cron-tab alle 20min gestartet sowie Event-getriggert aus der homematic via system.Exec().

Hier ein Beispiel für eine Anzeige, wo zb eine "Waschmaschine-ist-fertig-seit-x-Uhr"-(Demo-)Meldung mit enthalten ist
awtrix-wms.zip
(341.84 KiB) 40-mal heruntergeladen
(leider kann hier wohl kein animiertes gif direkt als Dateianhang hochgeladen werden)
Zuletzt geändert von Roland M. am 19.11.2023, 13:39, insgesamt 1-mal geändert.
Grund: Abgetrennt und verschoben von https://homematic-forum.de/forum/mcp.php?f=60&t=78152

holyset
Beiträge: 1
Registriert: 20.11.2023, 11:46
System: CCU und Access Point

Re: Ulanzi TC001 Smart Pixel Uhr

Beitrag von holyset » 20.11.2023, 11:51

Genau das hatte ich auch vor :D
Magst du dein Skript Teilen?
Zuletzt geändert von Roland M. am 20.11.2023, 14:05, insgesamt 1-mal geändert.
Grund: Doppelpost gelöscht

mademyday
Beiträge: 272
Registriert: 03.10.2014, 12:46
System: CCU
Wohnort: Enzkreis
Hat sich bedankt: 3 Mal
Danksagung erhalten: 43 Mal

Re: Ulanzi TC001 Smart Pixel Uhr

Beitrag von mademyday » 22.11.2023, 17:17

holyset hat geschrieben:
20.11.2023, 11:51
Magst du dein Skript Teilen?
sorry, denke das macht kaum Sinn, das Skript ist nicht auf "Weitergabe" ausgerichtet :)

vielleicht als "Denkanstoß", ein Auszug der zeigen soll, wie es in etwa läuft:
- zuerst holt ein tcl-Skript eine HomeMatic-SV - und prüft dabei auf einen Zeitstempel von "heute"
Sofern ein (tages-)aktueller Wert vorliegt
- wird der Ausgabestring je nach Inhalt und Länge ggf noch "gepimpt"
- und an eine "Custom App" an die Pixel Uhr gesendet

Code: Alles auswählen

TXT=$( "$scriptP"/../get_hm-sysvar.tcl Aussen_Temp | grep " .$(date +%y-%m-%d/..:..:..).$" | cut -d\  -f2 )
if [ "$TXT" != "" ]; then
  TXT=$( echo "$TXT" | awk 'END {printf("%.1f",$1)}' )
  TXT=$( echo "$TXT" | sed "s/\.0$//" )
  [ $( echo -n "$TXT" | wc -c ) -eq 5 ] && TXT="${TXT}C"
  [ $( echo -n "$TXT" | wc -c ) -eq 4 ] && TXT="${TXT}C "
  [ $( echo -n "$TXT" | wc -c ) -lt 4 ] && TXT="${TXT}\u00b0C "
fi
echo
echo "$( date +%Y-%m-%d\ %H:%M:%S ) * INFO * app TempA (${SET_ATIME}s): \"${TXT}\""
ICON=$( echo "8152 73 18346 56799" | cut -d\  -f$(( 1 + $RANDOM % 4 )) )
[ "$TXT" != "" ] && $CURL --config "$scriptPN".cfg "http://$DEV_IP/api/custom?name=TempA" \
     -d "{\"text\":\"${TXT}\",\"color\":[0,128,255],\"duration\":$SET_ATIME,\"lifetime\":3660,\"icon\":$ICON}"
in der curl-cfg steht außer den Zugangsdaten (-u) und timeout-Parameter im Wesentlichen:
-H "Content-Type: application/json"

mademyday
Beiträge: 272
Registriert: 03.10.2014, 12:46
System: CCU
Wohnort: Enzkreis
Hat sich bedankt: 3 Mal
Danksagung erhalten: 43 Mal

Re: Ulanzi TC001 Smart Pixel Uhr

Beitrag von mademyday » 01.12.2023, 16:58

ein Beispiel-Prog in der WebUI könnte zB wie folgt aussehen (wenn man keine Lust auf sh-Skripte hat):

Das Programm läuft alle 20min und füttert zwei sogenannte Apps TempI und TempA mit den Werten der entsprechenden Systemvariablen. Diese Apps landen dann in der normalen Rotation der LED-Matrix. (Parameter für Anzeigedauer, Icon etc hier zur Vereinfachung weggelassen.)

pAwtrix-Ulanzi_TC001.jpg

das HM-Skript dazu:

Code: Alles auswählen

! --- Prog: pAwtrix-Ulanzi_TC001

string DEV_IP = "172.20.1.105";
string DEV_USER = "admin";
string DEV_PASS = "...";

system.Exec( "sh -c '
  curl -u \"" # DEV_USER # ":" # DEV_PASS # "\" -H \"Content-Type: application/json\" -s -S --max-time 10 \\
    \"http://" # DEV_IP # "/api/custom?name=TempI\" \\
    -d \"{\\\"text\\\":\\\"" #  dom.GetObject(ID_SYSTEM_VARIABLES).Get("WZ_Temp").Value().ToString(1)
                             # "\\u00b0C\\\", \\\"color\\\":[255,0,0], \\\"lifetime\\\":3660}\";

  curl -u \"" # DEV_USER # ":" # DEV_PASS # "\" -H \"Content-Type: application/json\" -s -S --max-time 10 \\
    \"http://" # DEV_IP # "/api/custom?name=TempA\" \\
    -d \"{\\\"text\\\":\\\"" #  dom.GetObject(ID_SYSTEM_VARIABLES).Get("Aussen_Temp").Value().ToString(1)
                             # "\\u00b0C\\\", \\\"color\\\":[0,128,255], \\\"lifetime\\\":3660}\";
' >/dev/null 2>&1 &" );

WriteLine( "--- Ende ---" );

Kleiner Tipp: die (Default-)Apps kann man loswerden mit 1x leerem Content senden:

Code: Alles auswählen

  curl ... -d "{}" "http://$DEV_IP/api/custom?name=Temperature" \
                   "http://$DEV_IP/api/custom?name=Humidity" \
                   "http://$DEV_IP/api/custom?name=Battery"

looks like
screen.jpg
Zuletzt geändert von mademyday am 07.12.2023, 15:31, insgesamt 1-mal geändert.


Benutzeravatar
Black
Beiträge: 5483
Registriert: 12.09.2015, 22:31
System: Alternative CCU (auf Basis OCCU)
Wohnort: Wegberg
Hat sich bedankt: 424 Mal
Danksagung erhalten: 1074 Mal
Kontaktdaten:

Re: Ulanzi TC001 Smart Pixel Uhr

Beitrag von Black » 02.12.2023, 15:40

Das schaut interessant aus
Bastelprojekt für verregneten Winter Abende

Black
Wenn das Fernsehprogramm immer mehr durch nervende Werbung unterbrochen wird und der Radiomoderator nur noch Müll erzählt, ist es besser, die Zeit für sinnvolle Dinge zu nutzen -
mal aufs Klo zu gehen, ein Bier zu holen oder einfach mal den roten AUS-Knopf zu drücken. Klick - und weg

Script Time Scheduler V1.3
AstroSteuerung über Zeitmodul flexibel mit Offset / spätestens, frühestens
SDV 5.03.01 Das umfassende Entwicklungs und Diagnosetool für Homematik
Selektive Backups - Nützliche Dinge, die die WebUI nicht kann

Intel NUC6 Celeron 16GB mit 512GB SSD unter Proxxmox mit insgesamt 5 VM: 2 x bloatwarebefreiter Raspberrymatik, 2 x IOBroker als Middleware und einer MariaDB zur Archivierung. Verbrauch: 6W

technical contribution against annoying advertising

Benutzeravatar
Black
Beiträge: 5483
Registriert: 12.09.2015, 22:31
System: Alternative CCU (auf Basis OCCU)
Wohnort: Wegberg
Hat sich bedankt: 424 Mal
Danksagung erhalten: 1074 Mal
Kontaktdaten:

Re: Ulanzi TC001 Smart Pixel Uhr

Beitrag von Black » 03.01.2024, 22:21

Ich hab mir die Ulanzi nun auch gegönnt zum spielen.
Erstmal mit der awtrix light software überflashed, es gitb einen dazu passenden adapter mit mqtt funktionalität im IO.Broker.

da ich immo einiges am Umbauen bin (die grosse SOlaranlage muss sich vorbereiten, da muss ich noch bisschen installieren und Messequipment und busankopplungen verbauen)

Aber das Teil gefällt mir, hat sogar den Segen meiner Frau ^^ . und das heisst was.

Black
Wenn das Fernsehprogramm immer mehr durch nervende Werbung unterbrochen wird und der Radiomoderator nur noch Müll erzählt, ist es besser, die Zeit für sinnvolle Dinge zu nutzen -
mal aufs Klo zu gehen, ein Bier zu holen oder einfach mal den roten AUS-Knopf zu drücken. Klick - und weg

Script Time Scheduler V1.3
AstroSteuerung über Zeitmodul flexibel mit Offset / spätestens, frühestens
SDV 5.03.01 Das umfassende Entwicklungs und Diagnosetool für Homematik
Selektive Backups - Nützliche Dinge, die die WebUI nicht kann

Intel NUC6 Celeron 16GB mit 512GB SSD unter Proxxmox mit insgesamt 5 VM: 2 x bloatwarebefreiter Raspberrymatik, 2 x IOBroker als Middleware und einer MariaDB zur Archivierung. Verbrauch: 6W

technical contribution against annoying advertising

beginner007
Beiträge: 14
Registriert: 18.03.2023, 08:14
System: CCU
Hat sich bedankt: 1 Mal

Re: Ulanzi TC001 Smart Pixel Uhr

Beitrag von beginner007 » 04.03.2024, 20:55

Hi Zusammen,

finde die direkte Integration super. Leider schaffe ich es nicht das Icon einzubinden mit dem direkten Befehl; z.b icon für die Temperatur.
Es wurde ja erwähnt das die Parameter für Anzeigedauer, Icon etc hier zur Vereinfachung weggelassen wurden; wie würde so ein Beispiel Code hierfür jedoch aussehen?

Danke für eure Hilfe.

Grüße
b.

mademyday
Beiträge: 272
Registriert: 03.10.2014, 12:46
System: CCU
Wohnort: Enzkreis
Hat sich bedankt: 3 Mal
Danksagung erhalten: 43 Mal

Re: Ulanzi TC001 Smart Pixel Uhr

Beitrag von mademyday » 05.03.2024, 08:27

fehlende/gewünschte zusätzliche Parameter einfach - mit Komma getrennt - anhängen, zb ,"icon":nnn
(je nach Aufrufart halt mit mehr oder weniger verwirrenden Wiederholungen von \-chars :)

das obige Bsp um den icon-Parameter ergänzt:

Code: Alles auswählen

! --- Prog: pAwtrix-Ulanzi_TC001

string DEV_IP = "172.20.1.105";
string DEV_USER = "admin";
string DEV_PASS = "...";

system.Exec( "sh -c '
  curl -u \"" # DEV_USER # ":" # DEV_PASS # "\" -H \"Content-Type: application/json\" -s -S --max-time 10 \\
    \"http://" # DEV_IP # "/api/custom?name=TempI\" \\
    -d \"{\\\"text\\\":\\\"" #  dom.GetObject(ID_SYSTEM_VARIABLES).Get("WZ_Temp").Value().ToString(1)
                             # "\\u00b0C\\\", \\\"color\\\":[255,0,0], \\\"lifetime\\\":3660, \\\"icon\\\":2355 }\";
' >/dev/null 2>&1 &" );

WriteLine( "--- Ende ---" );
natürlich muss das verwendete Icon, hier Nummer 2355, zuerst per Awtrix-Webkonsole auf die Uhr geladen werden...
-->
screen2a.jpg
-->
screen2.jpg
screen2.jpg (16.53 KiB) 352 mal betrachtet

beginner007
Beiträge: 14
Registriert: 18.03.2023, 08:14
System: CCU
Hat sich bedankt: 1 Mal

Re: Ulanzi TC001 Smart Pixel Uhr

Beitrag von beginner007 » 05.03.2024, 23:25

Super vielen Dank für die schnelle Rückmeldung.
Funktioniert alles wie es soll…. jetzt sogar mit Icon.

Antworten

Zurück zu „OffTopic“