======ESP Easy======
[[https://espeasy.readthedocs.io/en/latest/]]
Permet de flasher des ESP pour gérer toutes sortes de capteurs.
=====Liens=====
* [[https://github.com/Grovkillen/ESP_Easy_Flasher/releases|Lien de téléchargement d'EspFlasher]]
* [[https://nils.laumaille.fr/posts/informatique/esp8266-flasher/|Flasher ESPeasy]] sur laumaille.fr
* [[https://nils.laumaille.fr/posts/informatique/esp8266-parametrer/|Configurer ESPeasy]]
* [[https://nils.laumaille.fr/posts/informatique/esp8266-jeedom/|Inclure dand Jeedom]]
* [[https://opendomotech.com/creer-des-objets-connectes-esp-easy/|Tuto de présentation]] sur OpenDomotech (OLD ?)
* [[https://opendomotech.com/sonnette-connectee-jeedom-esp-easy/|Bouton sonnette]]
* [[https://opendomotech.com/capteur-distance-esp-easy-jeedom/|Mesure de distance]]
* [[https://opendomotech.com/chauffe-eau-jeedom-esp-easy/|Gestion chauffe eau]]
=====Flashage et intégration de l'ESP=====
J'ai suivi les 2 tutos de laumaille.fr (les plus récents) et utilisé la dernière version disponible (ESPEasy_mega_20241222_ESP82xx_binaries.zip) pour mettre en place le firmware (ESP_Easy_mega_20241222_normal_ESP8266_4M1M.bin).
===Access Point===
* SSID : nom du firmware utilisé (ou du nom attribué)
* CLE : configesp
* IP : 192.168.4.1
===Intégration dans le réseau===
* Mise en place du wifi
* Changement de nom (ESP Chip ID -> Main - More infos - ESP board)
Pour retourner en AP, il est nécessaire d'effacer les paramètres réseau saisies.
===Utilisation de l'heure locale===
* Mise en place du NTP (0.pool.ntp.org)
* Mise en place des locales (UTC+60mn, 44.099178,3.065800)
===Définir la mise en veille (si besoin)===
* Time awake from : Délai avant mise en sommeil
* Sleep time : Durée du sommeil
=====Contrôleurs=====
Le contrôleur est le serveur vers lequel remonte l'info (Jeedom, perso ...). \\
====Généric HTTP====
Mode GET, **un seul device remonte à la fois.**
* Adresse IP (ou host) et port
* Controller Publish : URL et paramètres (Tools - System variables)
===Pour Jeedom===
* Port : 8121
* Controller Publish : device=%sysname%&taskid=%id%&cmd=%valname%&value=%value%
===Pour perso (test.php)===
* Port : 80
* Controller Publish : rest/test.php?id=%mac_int%&ip=%ip%&time=%lcltime%&vcc=%vcc%&device=%tskname%&%vname1%=%val1% (4 valeurs possibles)
=====Device====
Il s'agit d'un capteur (%tskname%). Il est nécessaire de :
* Définir sa configuration et le valider
* Valider le contrôleur qui recevra l'information
* Définir le délai de mise à jour
====Generic Dummy device====
Capteur virtuel pour retour d'info. Mis à jour dans une rules avec la commande :
TaskValueSet,#Task#,#Value#,%Val%
=====Rules=====
Il faut autoriser les [[https://espeasy.readthedocs.io/en/latest/Rules/Rules.html|Rules]] dans "Tools - Advanced".
on SCD30#CO2raw do // déclenché si SCD30#CO2raw change de valeur avec SCD30 = device et CO2raw = valeur
GPIO,12,1 // Action sur GPIO
GPIO,13,1
GPIO,14,1
if [SCD30#CO2raw]<%v1% // Condition si valeur < variable système
GPIO,14,0
endif
if [SCD30#CO2raw]>=%v1% and [SCD30#CO2raw]<%v2%
GPIO,12,0
endif
if [SCD30#CO2raw]>=%v2%
GPIO,13,0
endif
TaskValueSet,3,1,%v1% // Retour consigne
TaskValueSet,3,2,%v2%
endon
=====Commandes=====
Les [[https://espeasy.readthedocs.io/en/latest/Reference/Command.html|commandes]] peuvent être exécutées dans les Rules mais aussi par des requêtes HTTP.
Pour demander au capteur (IP) de modifier la valeur de la variable 1 (%v1% dans une Rules) \\
http://192.168.1.202/control?cmd=Let,1,1200