Ça fait quelques temps que j’avais commandé deux écran 1.54″ chez Waveshare. Ils sont arrivés et ont traîné quelques temps sur mon bureau avant que je m’y mette.
L’objectif est donc de faire fonctionner l’écran en WiFi de manière autonome (sur batterie, ou pas, selon l’environnement). Son microcode a comme unique fonction de consulter un WebService et d’afficher le résultat.
L’idée de consommer une file MQTT m’a aussi effleurée.
Matériel
Un écran e-Paper trichrome : | Un micro-contrôleur avec Wi-Fi sur une carte… un ESP8266 monté en NodeMcu : |
Une alimentation USB avec chargeur de batterie LiIon / LiPo : | Une batterie montée sur un support : |
Logiciel
Afin d’améliorer le fonctionnement du système, je vais utiliser, voir étendre un peu les fonctions portées par le WebService, en particulier en utilisant les paramètres des entêtes http standards ou étendus, comme :
- etag : pour ne mettre l’écran à jour que si la source a changée ;
- x-color-font, x-color-size : pour définir le style de l’affichage du texte.
Enfin lors de la requête, l’écran passe un UID (sa mac address) afin que le service l’identifie et lui fasse un retour spécifique.
Le code est sur GitHub :
https://github.com/Marcussacapuces91/WiFi-Display
Réalisation d’un prototype