Si je me trompe pas, il faudra au moins 180k pour être sûr de couvrir toute la plage des 5V (même si c’est très peu probable que la thermistance atteigne sa plage max, mais au moins c’est plus sûr).
Voici le code que j’utilise sur une pompe avec deux timers (un qui tourne en boucle vite, et le second pour arrêter) :
////
// Mise à jour rapide de p_filtre sur arrêt/démarrage de la pompe
////
on pompe#pompe_en_marche do // Sur mise à jour état pompe
// Si la pompe a changé d'état on met à jour la pression filtre toutes les 2s pendant 1 min
if [pompe#pompe_en_marche]!=[piscine#pompe_etat_memorise]
TaskRun,5 // Mise à jour de p_filtre
timerSet,5,2
timerSet,6,60
TaskValueSet 3,4,[pompe#pompe_en_marche] // mise à jour de piscine#pompe_etat_memorise
else
endif
endon
on Rules#Timer=5 do
TaskRun,5 // Mise à jour de p_filtre
timerSet,5,2 // Relance dans 2s
endon
on Rules#Timer=6 do
timerSet,5,0 // Arrêt répétition timer 5
endon
Cela donnerait quelque chose de ce genre :
on Chaude#TotalChaude do
if [VAR#1]=0
timerSet,5,2
timerSet,6,60
Let,1,1 // passe la variable 1 à 1
TaskValueSet 4,1,[Chaude#TotalChaude] // remontée d'information par dummy device
endif
endon
on Rules#Timer=5 do
TaskValueSet 4,1,[Chaude#TotalChaude] // remontée d'information par dummy device
timerSet,5,2 // Relance dans 2s
endon
on Rules#Timer=6 do
timerSet,5,0 // Arrêt répétition timer 5
Let,1,0 // passe la variable 1 à 0
endon
Quelques remarques
-
Pour la rémontée d’info j’utilise un « dummy device » qui du coup sera la valeur remontée à jeedom. Normalement on pourrait faire sans avec un Taskrun,1 qui force l’envoi, mais j’ai peur que déclenche l’évènement Chaude#TotalChaude et tourne en boucle.
-
On pourrait remplacer le « dummy device » en forçant la mise à jour avec SendToHTTP. Dans ce cas il faut pointer vers l’ip de Jeedom et reprendre ce qui est dans « Controller Publish » dans l’onglet Controllers (si on utilise le plugin ESP Easy).
-
J’ai ajouté une condition avec la variable 1. En fait, j’ai peur que s’il y a trop de pulses ça réinitialise à chaque fois le timer 5 et/ou sature la rémontée d’info.
Une autre manière peut-être plus simple de faire, ça pourrait être d’utiliser Chaude#CountChaude>=10 comme déclencheur ce qui remonterait l’info dès qu’on a 10 pulses. A voir.