Page 1 sur 2

Whatchdog espeasy

Publié : 15 nov. 2020, 07:53
par miralant
Bonjour à tous,

J'utilise espeasy sur un esp01 pour piloter ma chaudière via domoticz.
J'aimerai sécuriser un peu l'esp en y ajoutant un "chien de garde" qui si ma commande On est activé depuis + de 20 min, je la passe à Off.

Avez vous une idée de réalisation, à savoir que je souhaite que ça soit fait côté esp (pas domoticz).

Merci

Re: Whatchdog espeasy

Publié : 15 nov. 2020, 08:16
par Keros
En utilisant un timer dans les rules tu devrais pouvoir y arriver : Tutorial_Rules#Timer et juste en dessous : Tutorial_Rules#Starting&stopping_repeating_timers_with_events

Re: Whatchdog espeasy

Publié : 15 nov. 2020, 18:27
par miralant
Faut que je creuse ta piste. Effectivement, je lance le timer à la commande On de Domoticz et à la fun le timer, force le OFF si je n'ai pas eu de commande entre temps.
ça doit le faire :D

Re: Whatchdog espeasy

Publié : 15 nov. 2020, 20:24
par Keros
ll n'y a plus qu'à ;)

Re: Whatchdog espeasy

Publié : 21 déc. 2020, 16:07
par dimitry
Si ça peut aider, j'ai implémenté ça :

Code : Tout sélectionner

On System#Boot do
timerset,3,30 //Reboot detection wait for WiFi
Endon

On Rules#Timer=3 do //reboot ESP detected
// update Domoticz
SendToHTTP 192.168.1.53,8080,/json.htm?type=command&param=switchlight&idx=77&switchcmd=Off 
SendToHTTP 192.168.1.53,8080,/json.htm?type=command&param=switchlight&idx=78&switchcmd=Off
SendToHTTP 192.168.1.53,8080,/json.htm?type=command&param=switchlight&idx=79&switchcmd=Off
Endon

On chaudiere_L1#Output=1 do
timerset,1,7200 // at each on cycle, run a 2 hours timer
Endon

On Rules#Timer=1 do // if timer1 is achieve, switch off power and update domoticz
gpio,12,0
SendToHTTP 192.168.1.53,8080,/json.htm?type=command&param=switchlight&idx=77&switchcmd=Off
Endon
Le début du code permet de mettre à jour domoticz avec en cas de reboot de l'ESP, la seconde partie du code éteint la chaudière et met à jour domoticz si ça chauffe depuis plus de 2 heures consécutives. (par exemple la commande OFF n'a pas été reçue par l'ESP)

Re: Whatchdog espeasy

Publié : 21 déc. 2020, 19:11
par miralant
Ça me semble pas mal !

Code : Tout sélectionner

chaudiere_L1#Output=1


Ou as tu défini chaudiere_L1 dans espeasy ?

Re: Whatchdog espeasy

Publié : 22 déc. 2020, 09:54
par dimitry
c'es le name dans l'onglet devices:
Capture.JPG
Capture.JPG (34.69 Kio) Consulté 4373 fois

Re: Whatchdog espeasy

Publié : 22 déc. 2020, 13:00
par miralant
ah ok, moi je suis directement en json sur l'esp. http://192.168.1.23/control?cmd=gpio,0,1

Je passe pas en MQTT.

Re: Whatchdog espeasy

Publié : 23 déc. 2020, 20:45
par miralant
Je me suis largement inspiré de ton exemple pour mon besoin.
merci.

Code : Tout sélectionner

on System#Boot do
 Monitor GPIO,0
endon

on GPIO#0=1 do
  timerSet,1,5     // Set timer to 20 seconds
endon

On Rules#Timer=1 do
GPIO,0,0
SendToHTTP domoticz,8080,/json.htm?type=command&param=switchlight&idx=88&switchcmd=On
endon
le timer et retour à 0 du GPIO fonctionnent parfaitement. Par contre, le retour d'état ne fonctionne pas dans domoticz.

L'appel SendtoHttp ne semble pas correctement interprété : cf log esp-easy :

12584300: ACT : SendToHTTP domoticz,8080,/json.htm?type=command¶m=switchlight&idx=88&switchcmd=On
ça fonctionne chez toi ?

Re: Whatchdog espeasy

Publié : 26 déc. 2020, 12:16
par Neutrino
Essaye ça :

Code : Tout sélectionner

SendToHTTP 192.168.X.X,8080,/json.htm?param=switchlight&type=command&idx=88&switchcmd=On