Interface utilisateur tactile et visuelle pour box domotique (5/6)
Toutes les solutions de box domotique DIY viennent avec une interface web. Cela est tout à fait viable quand on se promène systématiquement avec sa tablette chez soi. N’ayant plus de tablette, j’ai eu en tout cas besoin de créer un dispositif pour pouvoir consulter les données météo intérieures et extérieures recueillies par mes capteurs, contrôler l’alarme que j’ai créée via Domoticz, mesure le niveau du signal Wifi, etc…L’objectif est bien d’avoir une interface utilisateur qui fait le lien avec notre box domotique et les modules créés auparavant. C’est ce que je vous propose de réaliser: une interface domotique à base d’écran Nextion.
Maintenant que le besoin est là, comment faire ?
Tout d’abord, je voulais absolument avoir un écran tactile, c’est moderne et pratique. Mon choix s’est porté sur un écran Nextion de 2,8 » de la série basique. Je vous laisse regarder les différents modèles, les caractéristiques de celui que j’ai choisi suffiront bien pour ce projet.
L’interface domotique à base d’écran Nextion
Le principe de ces écrans est d’utiliser un éditeur pour créer l’interface graphique qui sera rendue accessible à l’utilisateur. Un guide a été édité, vous pourrez également y télécharger l’éditeur. Par contre ne cherchez pas l’application pour Mac, elle n’existe pas. Pour les inconditionnels d’Apple, comme moi, l’alternative est de créer une machine virtuelle avec Windows 10 par exemple. C’est exactement ce que j’ai dû faire avec VirtualBox et l’image .iso de Windows 10, de nombreux tutos en ligne sont disponibles sur ce sujet.
Le guide étant très bien fait, je ne vais pas m’étendre sur le sujet mais simplement pour expliquer le principe: le texte, l’image, l’appui sur un bouton ou la valeur d’une barre de pourcentage,… sont autant de variables que vous pouvez modifier avec une action sur l’écran ou par la transmission d’une donnée vers l’écran par le module qui lui est relié.
Pour la partie physique, les écrans Nextion sont assez simple d’utilisation, il suffit de les alimenter en 5V et la communication se fait par report série en utilisant TX/RX. Personnellement, j’ai choisi d’utiliser un module Esp8266 wemos D1 mini. CE module reste assez gourmand en énergie mais mon intention est de pouvoir soit le brancher en mural avec une adaptation du courant soit via un câble USB : à vous de choisir la solution la plus appropriée.
Au moment où j’ai initié ce projet, les écrans Nextion étaient tout juste utilisables avec la version Test Beta début 2020. La prise en charge s’est forcément améliorer depuis mais de toute façon, la version de mars donnait déjà entière satisfaction.
Ajout d’une fonctionnalité pour récupérer la température et l’humidité à l’intérieur
Plutôt que créer un énième module pour recueillir la température et l’humidité à l’intérieur de la maison, autant profiter du boîtier que nous sommes en train de créer. J’ai donc ajouté un BME280, branché en I2C. Voilà comment le paramétrer dans EspEasy méga pour un Wemos D1 mini.
Paramétrer l’écran Nextion
Il reste maintenant à paramétrer comme il se doit l’écran Nextion dans Espeasy Mega pour que les éléments utilisés par l’interface se mettent à jour avec les valeurs recueillies par Domoticz ou celles transmises via l’UDP entre les modules flashés sous EspEasy méga.
On voit très bien ici que plusieurs pages ont été crées: accueil, météo et alarme (pas encore utilisée pour la dernière). Les variables internes sont utilisées pour l’affichage de l’heure et de la date qui sont rafraîchies à chaque seconde. Les variables entre [ ]
sont celles disponibles via l’UDP entre les modules, rssibar
est une variable interne qui traduit le niveau du signal Wifi reçu. Enfin, puisqu’il ne sert à rien que l’écran soit allumé en permanence, dim=60
permet d’éteindre l’écran au bout de 60 secondes sans action sur celui-ci. C’est encore plus intéressant si vous souhaitez le faire fonctionner sur batterie.
Activer l’alarme et autres fonctionnalités associées de l’interface utilisateur
Dans les lignes précédentes, je vous ai montré comment utiliser les informations reçues ou disponibles dans EspEasy méga. Maintenant, il serait vraiment intéressant de pouvoir piloter notre alarme via l’interface tactile proposé par l’écran Nextion et que se répercute via des actions dans Domoticz.
Voilà pour la création d’une interface utilisateur tactile et visuelle pour notre box domotique. Une fois de plus, n’hésitez pas à faire des commentaires ou poser vos questions via le formulaire dédié. Le partage est la clé pour avancer dans ces projets DIY.
Interface utilisateur tactile et visuelle pour box domotique (5/6) par MadeInFck est sous Licence Creative Commons Internationale Attribution-Pas d'utilisation Commerciale-Partage à l'identique 4.0 .