Aide conception écran autonome Gladys

Bonjour,

Je me permets de solliciter votre aide dans la conception d’un écran Gladys.

La technologie choisie se base sur une écran de 7,5 pouces ePaper et un ESP32 alimenté sur batterie. Il faut donc que l’appareil s’allume sur une courte durée pour une pause profonde (deepsleep) d’au moins 15mn.

L’objectif de cet écran est d’afficher les données de certains capteurs qui sont tous enregistrés sur Gladys sous des devices MQTT et Zigbee2mqtt.

Je me questionne sur la manière d’aller lire les données dans Gladys. Je vois 2 solutions :

  • Via des appels API HTTP (Gladys plus). Cette solution me plaît moyennement car je préfèrerai rester en appels locaux
  • Via la création d’un device MQTT constitué de toutes les features que je souhaite afficher. La encore, ce n’est pas évident car dans une scène, il n’est pas possible facilement d’alimenter ces features depuis d’autres devices. C’est la solution que je retiens pour le moment.

Voyez-vous une autre solution qui permettrait de lire les données de Gladys ?

Je ne suis pas développeur, je tâtonne… Excusez donc s’il y a une solution évidente.

Merci pour votre aide.

Philippe

Il y a une API interne non documentée que tu peux utiliser en local. Je peux te donner plus d’informations dans la soirée.

1 Like

Dans tout le post, 192.168.1.11 est l’adresse IP de mon instance Gladys. A adapter dans ton réseau.

Pour t’authentifier et récupérer un access_token

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>"}'

Une fois que tu as un access_token (qu’il faudra renouveler toutes les 24h), tu peux appeler cette API pour récupérer l’état d’un device

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>'

Tu devrais avoir en réponse un JSON avec un tableau de features et pour chaque feature, le last_value est la dernière valeur connue de Gladys.

1 Like

Super, merci beaucoup ! Je vais tester :slight_smile:

On communique pas activement dessus mais elle est bien documentée :smiley:

2 Likes

J’adore le projet ! J’y avais pensé plusieurs fois mais un produit fini de ce type coutait super cher.

Tu pourras nous présenter ensuite le projet quand ça sera fonctionnel ?

1 Like

Wow :heart_eyes: je ne savais pas/plus. Merci

1 Like

Bonjour,

Voici le résultat. Je n’ai pas le temps de faire plus pour le moment donc l’écran n’est pas autonome (branché sur secteur) et l’interface me plaît moyennement.

Le matériel :

On trouve le tout sur Amazon pour environ 90€.

Les informations affichées proviennent quasiment toutes de Gladys sauf celles relatives à la vitesse et direction du vent et le picto pour la météo en bas à gauche.

Merci encore pour votre aide sur la partie DEV :wink:

Si vous avez des suggestions pour que les infos affichées soient mieux présentées, je prends !

10 Likes

Waou… sympa et économe en énergie…
Ca peut donner des idées…

1 Like

C’est très très propre :heart_eyes: je peux partager sur les réseaux sociaux Gladys ?

Bonjour @PhilippeMA
Waoouh !! Beau boulot !!! :+1: :clap:
Possible d’avoir un tuto de A à Z du comment mettre en œuvre ? :stuck_out_tongue_winking_eye:
Pour les API, oui elles sont documentées mais manques peut-être de quelques exemples de mises en oeuvre ! :thinking: C’est comme quand on pousse une voiture en panne, c’est toujours la première impulsion qui est dure et dissuasive mais une fois en branle … :blush:

Oui, bien sûr !

Ahah, il va falloir que je nettoie mon code. Je vois ce que je peux faire dans un délai raisonnable :wink:

1 Like

Ouais pas de problème je peux attendre…jusqu’à ce soir ! :rofl: :rofl: :rofl:
Non, plus sérieusement ce sera déjà bien de partager avec la communauté et surtout de proposer un tuto reproductible !!! En attendant, on reste donc dans la :tent: :wink:

J’adore le rendu, ça fait super propre et élégant !

2 Likes

:+1: :+1:
Ça rends super bien !
Bravo

2 Likes

Au fait, merci @cicoub13 pour le complément d’explication sur l’API HTTP de Gladys :slight_smile:

Je me suis inspiré de ton post pour améliorer la documentation sur le site !

A lire ici:

J’en ai profité aussi pour mettre à jour le package « apidoc » pour avoir la dernière UI, et j’ai remis en place le process de build dans la documentation d’API qui était visiblement cassé. Désormais, à chaque version de Gladys, un nouveau build sera fait sur Cloudflare Pages automatiquement.

J’espère que ça inspirera du monde à faire des petits projets de ce style dans Gladys :raised_hands:

En tout cas @PhilippeMA, ton projet a cartonné sur les réseaux sociaux, c’est un des meilleur post de cette année avait un engagement record de 11% (j’ai rarement vu ça)

55 clics sur le lien, c’est beaucoup par rapport aux autres posts :grin:

5 Likes