TUTO Esp Easy + Nextion + Domoticz

Vos échanges, bricolages, idées et questions concernant l'ESP8266, les NodeMCU,Weemos, et consort
Répondre
Jeff
Messages : 711
Enregistré le : 17 nov. 2016, 20:54
Localisation : Rennes (35)

TUTO Esp Easy + Nextion + Domoticz

Message par Jeff » 12 mars 2017, 21:45

Bonjour,

Je vous propose ici d'utiliser un écran Nextion avec un wemos d1 mini sous Esp Easy.

Presentation

On trouve ces écrans de 2,4" à 7" et de 15€ à 60€. Ce tuto a été fait avec un model basique 3,2" (NX4024T032) et un wemos d1 mini. Pour en savoir plus , c'est ici : https://www.itead.cc/display/nextion.html

L'intérêt de disposer d'un écran tactile est qu'il peut afficher la valeur des capteurs branchés à l'ESP 8266, être utiliser comme interrupteur tactile et diffuser des informations venant de domoticz, d'un autre capteur sous espeasy de la maison ou venant d'une source externe via node red (météo, saint du jour...)
Nextion_weather.png
Nextion_weather.png (243.02 Kio) Vu 2404 fois
night.png
night.png (278.53 Kio) Vu 2404 fois
Installation

Nextion ayant évolué depuis ce tuto, vous trouvez tout sur le plugin et le branchement ici.
https://www.letscontrolit.com/wiki/index.php/Nextion et https://www.letscontrolit.com/wiki/index.php/Nextion


Branchement
Nextion_branchement_PNP.jpg
Nextion_branchement_PNP.jpg (100.6 Kio) Vu 2404 fois
Nextion-WeMos_TX_RX.jpg
Nextion-WeMos_TX_RX.jpg (60.69 Kio) Vu 2404 fois
Interface Nextion
L'interface est un logiciel qui consiste à assembler des images, des boites textes, des champs valeurs...
A télécharger ici : http://nextion.itead.cc/download.html

Le principe est de créer autant d'image de fond que d'état possible à partir des pictures avec un numéro. Attention à respecter la résolution de votre écran : exemple 3,2" c'est 400*240

Ex : pour une lampe vous devez faire une image de fond lampe éteinte et une autre lampe allumée. A ajouter via le Menu "picture"
picture.png
picture.png (20.75 Kio) Vu 2403 fois
Vous aurez besoin de faire des polices d'écriture via le menu "Tools" font generator, vous les retrouvez comme les images dans le menu fonts.
font.png
font.png (8.43 Kio) Vu 2404 fois
Prenez le menu toolbox :
Insérez une picture pour l'image de fond
Insérez une crop pour l'état de la lampe
Insérez un text pour la temp, la date, l'heure.
text.png
text.png (37.6 Kio) Vu 2404 fois
Pour les boutons :
Insérez un "hotspot" et cocher dans "Touch press event" ou l'autre la case "Send component id"
simulator.png
simulator.png (53.85 Kio) Vu 2404 fois
Simuler via "debug", cliquer sur le bouton virtuel (hotspot) et noter le 3ème chiffre : 0x65 0x00 0x08, il nous servira après dans les rules de esp easy pour faire les commandes.

Le paramétrage dans easy Esp
parametrage_device.png
parametrage_device.png (25.35 Kio) Vu 2403 fois
C'est assez simple, il suffit d'ajouter le device nextion. Tx et Rx, je vous ai montré un exemple d'affichage que je n'utilise plus car je fais tout par node red en http.
Pour n° idx, il y a un bug dans domoticz avec le message mqtt , pour éviter cela, je créer un capteur virtuel text n° idx
idx.png
idx.png (20.57 Kio) Vu 2404 fois
Les commandes

2 choix s'offrent à nous : Http et Mqtt

Http :
Régler la luminosité : 192.168.1.103/control?cmd=NEXTION,dim=10
Mettre à jour capteur texte : 192.168.1.103/control?cmd=NEXTION,time.txt="valeur"
Lampe, image crop : 192.168.1.103/control?cmd=NEXTION,alarm.picc=1
La couleur d'un texte : 192.168.1.104/control?cmd=NEXTION,ext.pco=63519
blocky.png
blocky.png (42.74 Kio) Vu 2404 fois
Mqtt :
Après avoir ajouter MQTT à domoticz, vous pouvez envoyer ce que vous voulez de domoticz
MQTT.png
MQTT.png (7.37 Kio) Vu 2403 fois
Value Name 1 : ExtTemp

Plugin Nextion :
Line 1 page0.ext.txt="[MQTT#ExtTemp] C"

Rules :
Pour lancer une commande via un bouton virtuel, dans les rules ajouter ceci :

Code : Tout sélectionner

on NEXTION#code=8.00 do
sendtohttp 192.168.1.12,8080,/json.htm?param=switchlight&type=command&idx=42&switchcmd=On
endon
Mise en veille de l'écran comme ceci, merci à jackslayter

Code : Tout sélectionner

 On System#Boot do    //When the ESP boots, do
   timerSet,1,5      //Set Timer 1 for the next event in 5 seconds
 endon

On Rules#Timer=1 do  //When Timer1 expires, do
   NEXTION,thup=1   //activation de extinction auto de l'ecran 0 ou 1
   NEXTION,thsp=10   //extinction de l'ecran dans x secondes
 endon
Pour compléter ce tuto, il y a aussi l'excellent travail de @jackslayter ici :
http://easydomoticz.com/forum/viewtopic ... =70#p43334

Dans un prochain tuto si certains sont intéressés, j'expliquerais les commandes via Node Red : changement de fond à la demande (heure, événement), intégration météo wunderground, le saint du jour...
Node_Red.png
Node_Red.png (40.62 Kio) Vu 2404 fois
Modifié en dernier par Jeff le 21 avr. 2019, 14:40, modifié 4 fois.
Version: 4.9700; RFXCOM Rfxtrx433e ext/1007 ; Zwave (Z-stick GEN5, Fibaro...), Zigbee2MQTT.

Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


deennoo
Messages : 4008
Enregistré le : 25 janv. 2015, 02:00

Re: TUTO Esp Easy + Nextion + Domoticz

Message par deennoo » 12 mars 2017, 22:29

Super !
De quoi se faire Plaisir et essayer d'aider...
http://www.domo-attitude.fr

ericd
Messages : 157
Enregistré le : 24 janv. 2017, 11:04
Localisation : Toulouse

Re: TUTO Esp Easy + Nextion + Domoticz

Message par ericd » 13 mars 2017, 21:33

Merci pour tes infos

@+

Ericd

dokho
Messages : 494
Enregistré le : 28 déc. 2014, 19:32

Re: TUTO Esp Easy + Nextion + Domoticz

Message par dokho » 09 juil. 2017, 18:16

Salut,

Est-ce que tu aurais un tuto un peu plus complet ?

J'avoue que c'est un peu flou pour moi sur pas mal de point ...
- faut il mettre les images sur un sd-card ?
- est-ce que c'est toute l'image de fond que je dois changer quand j'allume une lampe ?
- je n'ai pas trop compris la partie mqtt avec le dummy ...


En tout cas ça m’intéresse beaucoup donc je continue de creuser :)

Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


dokho
Messages : 494
Enregistré le : 28 déc. 2014, 19:32

Re: TUTO Esp Easy + Nextion + Domoticz

Message par dokho » 09 juil. 2017, 20:37

Je suis aussi preneur de tes "functions" nodered :)

Jeff
Messages : 711
Enregistré le : 17 nov. 2016, 20:54
Localisation : Rennes (35)

Re: TUTO Esp Easy + Nextion + Domoticz

Message par Jeff » 09 juil. 2017, 20:38

Le tuto est pas mal complet, c'est vrai que c'est assez compliqué mais voici quelques indications pour tes questions :

Si on reprend la construction de l'interface Nextion. Pour cela j'utilise le logiciel "paint.net" , je créé un projet "exemple.pdn" et je créé des calques avec les différents états désirés : comme lampe allumée, lampe éteinte.
Je coche ou décoche les calques et j'enregistre chaque image de mon état en format *.jpg (fichier enregistrer sous : *.jpg)


Après j'importe ces images sous le logiciel Nextion (dans le tuto : 0,1,2)
- faut il mettre les images sur un sd-card ?
Suivre le tuto pour les boutons, case text..., une fois fini, bouton "compile", puis fichier "open buid folder" et tu as un fichier *.tft que tu dois effectivement mettre sur une sd card sans aucun autre fichier.
Tu l'insères dans ton Nextion, tu alimentes, çà copie, tu débranches ton nextion, retire ta carte et réalimente. Voila ton nextion chargé.
Pour débuter, voici un projet paint.net et un fichier de construction Nextion.
image_fond.png
image_fond.png (72.85 Kio) Vu 2402 fois
est-ce que c'est toute l'image de fond que je dois changer quand j'allume une lampe ?
En fait quand tu veux changer l'état d'une lampe, on va changer la valeur de "picc" de la boite crop avec la valeur de la nouvelle image (ici la 1)
http://ipESP/control?cmd=NEXTION,light.picc=1
image_fond.png
image_fond.png (72.85 Kio) Vu 2402 fois
Pour tester cette première partie :
Tu paramètres sur espeasy , domoticz en "http" ou "mqtt" et tu envois ces commandes :
http://ipESP/control?cmd=NEXTION,alarm.picc=1
http://ipESP/control?cmd=NEXTION,temp.txt="18,5C"
etc...

Fait tout cela, comprends le fonctionnement et après je pourrais t'aider à faire un peu complexe avec node-red...
N’hésites pas à te reporter au tuto, il explique tout :D
Fichiers joints
calque2.png
calque2.png (15.23 Kio) Vu 2402 fois
Fichiers_nextion.zip
(216.37 Kio) Téléchargé 99 fois
Modifié en dernier par Jeff le 21 avr. 2019, 14:42, modifié 1 fois.
Version: 4.9700; RFXCOM Rfxtrx433e ext/1007 ; Zwave (Z-stick GEN5, Fibaro...), Zigbee2MQTT.

dokho
Messages : 494
Enregistré le : 28 déc. 2014, 19:32

Re: TUTO Esp Easy + Nextion + Domoticz

Message par dokho » 09 juil. 2017, 20:47

Donc dans ton exemple il faut:

une image avec lampe éteinte et alarme éteinte
une image avec lampe allumée et alarme éteinte
une image avec lampe allumée et alarme allumée
une image avec lampe éteinte et alarme allumée

C'est bien ça ?

Ou il n'est possible de changer que l'image du crop en fonction de l'état de l'un ou de l'autre ?

Jeff
Messages : 711
Enregistré le : 17 nov. 2016, 20:54
Localisation : Rennes (35)

Re: TUTO Esp Easy + Nextion + Domoticz

Message par Jeff » 09 juil. 2017, 20:59

Ou il n'est possible de changer que l'image du crop en fonction de l'état de l'un ou de l'autre ?
Oui, donc seulement 2 images : une tout éteint et une tout allumé. :)
Ce n'est pas l'image entière qui change mais seulement ce qui est dans le crop.
Version: 4.9700; RFXCOM Rfxtrx433e ext/1007 ; Zwave (Z-stick GEN5, Fibaro...), Zigbee2MQTT.

dokho
Messages : 494
Enregistré le : 28 déc. 2014, 19:32

Re: TUTO Esp Easy + Nextion + Domoticz

Message par dokho » 09 juil. 2017, 22:34

Ok, je pense voir le principe.

Par contre j'ai du mal à envoyer du texte via curl dans un script

Si je fais, dans un terminal,

Code : Tout sélectionner

curl 'http://192.168.X.XXX/control?cmd=NEXTION,tempatelier.txt="HELLO WORLD"'
ça fonctionne nickel, par contre si je met dans un script

Code : Tout sélectionner

os.execute('curl 'http://192.168.X.XXX/control?cmd=NEXTION,tempatelier.txt="HELLO WORLD"'')
ça ne fonctionne pas

Jeff
Messages : 711
Enregistré le : 17 nov. 2016, 20:54
Localisation : Rennes (35)

Re: TUTO Esp Easy + Nextion + Domoticz

Message par Jeff » 09 juil. 2017, 22:43

C'est là qu'intervient pour moi node-red et mqtt.
Je récupère le topic domoticz et je cherche le msg.payload.name qui m'intéresse et je republie le topic que j'ai décidé pour le récupérer avec mqtt import. ;)

Voir tuto au dessus. De même je publie heure, date, meteo...

Je ne maîtrise pas assez curl, mais j'ai également beaucoup galérer avec du texte dans node-red pour autre chose.

Tu cherches à faire quoi ?
Version: 4.9700; RFXCOM Rfxtrx433e ext/1007 ; Zwave (Z-stick GEN5, Fibaro...), Zigbee2MQTT.

Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Répondre