Hilfe bei der Erstellung eines autonomen Gladys-Bildschirms

Hallo,

ich erlaube mir, Ihre Hilfe bei der Gestaltung eines Gladys-Bildschirms zu erbitten.

Die gewählte Technologie basiert auf einem 7,5-Zoll-ePaper-Bildschirm und einem batteriebetriebenen ESP32. Das Gerät muss sich also für eine kurze Zeit einschalten, um in einen Deep-Sleep von mindestens 15 Minuten zu gehen.

Das Ziel dieses Bildschirms ist es, die Daten bestimmter Sensoren anzuzeigen, die alle in Gladys unter MQTT- und Zigbee2mqtt-Geräten gespeichert sind.

Ich frage mich, wie ich die Daten in Gladys lesen kann. Ich sehe zwei Lösungen:

  • Über HTTP-API-Aufrufe (Gladys Plus). Diese Lösung gefällt mir nur mäßig, da ich lieber lokale Aufrufe bleiben würde
  • Über die Erstellung eines MQTT-Geräts, das alle Features enthält, die ich anzeigen möchte. Auch hier ist es nicht einfach, da es in einer Szene nicht einfach ist, diese Features von anderen Geräten zu speisen. Das ist die Lösung, die ich momentan behalte.

Sehen Sie eine andere Lösung, die es ermöglichen würde, die Daten von Gladys zu lesen?

Ich bin kein Entwickler, ich taste mich vor… Entschuldigen Sie also, wenn es eine offensichtliche Lösung gibt.

Vielen Dank für Ihre Hilfe.

Philippe

Es gibt eine nicht dokumentierte interne API, die du lokal nutzen kannst. Ich kann dir heute Abend mehr Informationen geben.

In diesem gesamten Beitrag ist 192.168.1.11 die IP-Adresse meiner Gladys-Instanz. Dies muss in deinem Netzwerk angepasst werden.

Um dich zu authentifizieren und ein access_token abzurufen

curl --location --request POST 'http://192.168.1.11/api/v1/login' \
--header 'Content-Type: application/json;charset=UTF-8' \
--data-raw '{"email":"<email>","password":"<password>"}'

Sobald du ein access_token hast (das alle 24 Stunden erneuert werden muss), kannst du diese API aufrufen, um den Status eines Geräts abzurufen

curl --location --request GET 'http://192.168.1.11/api/v1/device/<prise-chambre>' \
--header 'Accept: application/json, text/plain, */*' \
--header 'authorization: Bearer <access_token>'

Du solltest als Antwort ein JSON mit einem Array von features erhalten und für jedes feature ist der last_value der letzte bekannte Wert von Gladys.

Super, danke vielmals! Ich werde es testen :slight_smile:

Darüber wird nicht aktiv kommuniziert, aber sie ist gut dokumentiert :smiley:

Ich liebe das Projekt! Daran hatte ich schon oft gedacht, aber ein fertiges Produkt dieser Art war immer super teuer.

Kannst du uns das Projekt später vorstellen, wenn es funktionsfähig ist?

Wow :heart_eyes: das wusste ich (nicht mehr). Danke

Hallo,

Hier ist das Ergebnis. Ich hatte keine Zeit, um mehr zu machen, daher ist der Bildschirm nicht autonom (am Strom angeschlossen) und die Oberfläche gefällt mir nur mittelmäßig.

Die Hardware:

Alles zusammen gibt es bei Amazon für etwa 90€.

Die angezeigten Informationen stammen fast alle von Gladys, außer denjenigen zur Windgeschwindigkeit und -richtung und dem Wetter-Symbol unten links.

Nochmals vielen Dank für eure Hilfe beim Entwickeln :wink:

Falls ihr Vorschläge habt, wie die angezeigten Informationen besser dargestellt werden können, nehme ich sie gerne an!

Wow… nett und energiesparend…
Das gibt einem Ideen…

Das ist ja mega sauber :heart_eyes: Darf ich das auf den sozialen Medien teilen, Gladys?

Hallo @PhilippeMA
Wow!! Super Arbeit!!! :+1: :clap:
Gibt es eine Anleitung von A bis Z, wie man das umsetzen kann? :stuck_out_tongue_winking_eye:
Bei den APIs, ja, sie sind dokumentiert, aber vielleicht fehlen ein paar Beispiele für die Umsetzung! :thinking: Das ist wie beim Schieben eines kaputten Autos, der erste Anstoß ist immer schwer und abschreckend, aber sobald es einmal in Gang ist… :blush:

Ja, natürlich!

Ahah, ich muss meinen Code aufräumen. Ich schau mal, was ich in angemessener Zeit machen kann :wink:

Ja, kein Problem, ich kann warten… bis heute Abend! :rofl: :rofl: :rofl:
Nein, aber im Ernst, es wäre schon toll, das mit der Community zu teilen und vor allem einen reproduzierbaren Tuto vorzuschlagen!!! In der Zwischenzeit bleiben wir also im :tent: :wink:

Ich liebe das Ergebnis, es sieht super sauber und elegant aus!

:+1: :+1:
Das sieht super aus!
Bravo

Ach ja, danke @cicoub13 für die zusätzliche Erklärung zur HTTP-API von Gladys :slight_smile:

Ich habe mich von deinem Beitrag inspirieren lassen, um die Dokumentation auf der Website zu verbessern!

Hier nachzulesen:

Ich habe auch die Gelegenheit genutzt, um das „apidoc“-Paket zu aktualisieren, um die neueste UI zu erhalten, und ich habe den Build-Prozess in der API-Dokumentation wiederhergestellt, der offensichtlich kaputt war. Ab jetzt wird bei jeder Gladys-Version automatisch ein neuer Build auf Cloudflare Pages erstellt.

Ich hoffe, das inspiriert andere, ähnliche kleine Projekte in Gladys zu machen :raising_hands:

Jedenfalls @PhilippeMA, dein Projekt hat in den sozialen Medien eingeschlagen, es ist einer der besten Beiträge dieses Jahres mit einer Rekord-Engagement-Rate von 11% (das habe ich selten gesehen)

55 Klicks auf den Link, das ist viel im Vergleich zu anderen Beiträgen :grin: