Appuis long poussoir GPIO
Appuis long poussoir GPIO
Salut,
Je cherche à détecter un appuis long sur un bouton possoir paramétré en contact dans domoticz afin d'y joindre une action simple, du genre allumer une Led. Mon bouton est branché sur une broche GPIO toujours à Off. Si je fais un appuis bref, ma broche va passer à On furtivement avant de revenir à Off et rien ne se passera. Si je laisse appuié suffisament longtemps (disons 3 secondes), mon Gpio passe donc à On pendant le temps d'appuis (3sec) puis revient à off.
Dans ce cas je cherche à créer un script qui perçoive ce changement d'état de 3 secondes ou plus. Je n'arrive pas via bloky. je pense que ça doit être faisable avec lua mais je ne connais pas la syntaxe... Je pencherai vers quelquechose du genre:
commandArray = {}
if (devicechanged['bouton poussoir] == 'On') during 3 secondes then
commandArray['Led']='On'
end
return commandArray
Un petit coup de pouce?
Je cherche à détecter un appuis long sur un bouton possoir paramétré en contact dans domoticz afin d'y joindre une action simple, du genre allumer une Led. Mon bouton est branché sur une broche GPIO toujours à Off. Si je fais un appuis bref, ma broche va passer à On furtivement avant de revenir à Off et rien ne se passera. Si je laisse appuié suffisament longtemps (disons 3 secondes), mon Gpio passe donc à On pendant le temps d'appuis (3sec) puis revient à off.
Dans ce cas je cherche à créer un script qui perçoive ce changement d'état de 3 secondes ou plus. Je n'arrive pas via bloky. je pense que ça doit être faisable avec lua mais je ne connais pas la syntaxe... Je pencherai vers quelquechose du genre:
commandArray = {}
if (devicechanged['bouton poussoir] == 'On') during 3 secondes then
commandArray['Led']='On'
end
return commandArray
Un petit coup de pouce?
V 2.3530
Re: Appuis long poussoir GPIO
Quelqu'un aurait une piste de reflexion? Jai essayé avec script_time, des lastupdate... mais rien ne marche!
Mon objectif est de m'affranchir des rebonds via une parade logicielle...
Mon objectif est de m'affranchir des rebonds via une parade logicielle...
V 2.3530
-
vil1driver
- Messages : 5661
- Inscription : 30 janv. 2015, 11:07
- Localisation : Rennes (35)
Re: Appuis long poussoir GPIO
salut,
les rebonds du bouton poussoir ?
pas joué avec les gpio mais un tout petit peux avec arduino et on utilise une fonction debouncer pour cela..
je ne sais pas pour WiringPi.. je serais assez surpris que ça ne soit pas implicite..
les rebonds du bouton poussoir ?
pas joué avec les gpio mais un tout petit peux avec arduino et on utilise une fonction debouncer pour cela..
je ne sais pas pour WiringPi.. je serais assez surpris que ça ne soit pas implicite..
MAJ = VIDER LE CACHE(<-Clicable)
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua
Un ex domoticzien
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua
Un ex domoticzien
Re: Appuis long poussoir GPIO
Salut,
Merci pour la réponse. Mais via Lua, y a til un terme qui permtrait de traduire mon "pendant au moins 3 secondes"?
J'aimerais réussir à traduire ça dans un script_device de manière à ce qu'il soit réactif (dès le chnagement d'état...)
commandArray = {}
if (devicechanged['bouton poussoir] == 'On') pendant au moins 3 secondes then
commandArray['Led']='On'
end
return commandArray
Merci pour la réponse. Mais via Lua, y a til un terme qui permtrait de traduire mon "pendant au moins 3 secondes"?
J'aimerais réussir à traduire ça dans un script_device de manière à ce qu'il soit réactif (dès le chnagement d'état...)
commandArray = {}
if (devicechanged['bouton poussoir] == 'On') pendant au moins 3 secondes then
commandArray['Led']='On'
end
return commandArray
V 2.3530
Re: Appuis long poussoir GPIO
"pendant au moins 3 secondes" je comprends ton besoin mais au niveau du hardware, les gpio de domoticz ne détectent jamais que des "edge", soit front montant et du coup On, soit front descendant => Off.
Détecter de façon logicielle "On pendant au moins 3s" ? Je sais pas, il faudrait imaginer un timer armé sur le On, par exemple définir une variable, puis détecter soit la fin de ce timer (comment ?), soit dans le Off désarmer le timer. Je ne sais pas du tout si domoticz et un lastUpdate aurait une précision a quelques secondes, dz n'est pas vraiment fait pour ça.
Après, et le debounce aurait pu avoir du sens (mais ce serait a modifier au niveau du hardware gpio domoticz), pas impossible qu'un appui long tel qu'on le voit nous entraîne en fait plusieurs coupures sur la détection des On et des Off.
Détecter de façon logicielle "On pendant au moins 3s" ? Je sais pas, il faudrait imaginer un timer armé sur le On, par exemple définir une variable, puis détecter soit la fin de ce timer (comment ?), soit dans le Off désarmer le timer. Je ne sais pas du tout si domoticz et un lastUpdate aurait une précision a quelques secondes, dz n'est pas vraiment fait pour ça.
Après, et le debounce aurait pu avoir du sens (mais ce serait a modifier au niveau du hardware gpio domoticz), pas impossible qu'un appui long tel qu'on le voit nous entraîne en fait plusieurs coupures sur la détection des On et des Off.
Raspberry Pi 2 + carte RF pi "maison" + Domoticz
Sonde Oregon + Aliexpress - Prises Chacon (3500W) - 1wire DS18B20
Sonde Oregon + Aliexpress - Prises Chacon (3500W) - 1wire DS18B20
-
vil1driver
- Messages : 5661
- Inscription : 30 janv. 2015, 11:07
- Localisation : Rennes (35)
Re: Appuis long poussoir GPIO
Question con.. T'as essayé d'autres gpio ? Ils n'ont pas. Tous la même fonction, peut-être que celui que tu utilises n'aime pas la façon dont tu l'utilises
ou est simplement malade..
MAJ = VIDER LE CACHE(<-Clicable)
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua
Un ex domoticzien
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua
Un ex domoticzien
Re: Appuis long poussoir GPIO
Salut,
Non je n'ai pas essayé d'autres gpio. A voir... Je cherche toujours comment traduire mon "on depuis au moins 3 secondes"... L'idée serait d'avoir 2 sorties avec un même BP (appuis long et appuis court.
Concernant les rebonds, au pire je les traiterai avec une solution hardware, enfin j'essayerai..
Non je n'ai pas essayé d'autres gpio. A voir... Je cherche toujours comment traduire mon "on depuis au moins 3 secondes"... L'idée serait d'avoir 2 sorties avec un même BP (appuis long et appuis court.
Concernant les rebonds, au pire je les traiterai avec une solution hardware, enfin j'essayerai..
V 2.3530
Re: Appuis long poussoir GPIO
Hello, j'ai moi aussi regardé pour un bouton poussoir, une personne a réglé ça par une While. En gros le script tourne en boucle, quand il détecte une impulsion On il sort de cette boucle infini
Re: Appuis long poussoir GPIO
Bonjour à tous,
Je me permet de réactiver ce post car j'ai un soucis similaire.
J'ai un relais 433 sans temporisation que je souhaite piloter avec un RFXcom et Domoticz et je voudrai qu'il reste collé 3 secondes.
Sur le dernier message de ce post, MelloXVI parle d'une personne qui a réglé ça avec une "while"... Ne sachant pas ce que c'est, quelqu'un serait-il en mesure de me renvoyer vers un lien, un script peut-être, ou m'expliquer plus en détail s'il vous plaît ?
Merci d'avance.
Je me permet de réactiver ce post car j'ai un soucis similaire.
J'ai un relais 433 sans temporisation que je souhaite piloter avec un RFXcom et Domoticz et je voudrai qu'il reste collé 3 secondes.
Sur le dernier message de ce post, MelloXVI parle d'une personne qui a réglé ça avec une "while"... Ne sachant pas ce que c'est, quelqu'un serait-il en mesure de me renvoyer vers un lien, un script peut-être, ou m'expliquer plus en détail s'il vous plaît ?
Merci d'avance.
Re: Appuis long poussoir GPIO
Salut, ton problème n'a rien avoir avec le reste du port!Psypok a écrit : 23 oct. 2018, 15:29 Bonjour à tous,
Je me permet de réactiver ce post car j'ai un soucis similaire.
J'ai un relais 433 sans temporisation que je souhaite piloter avec un RFXcom et Domoticz et je voudrai qu'il reste collé 3 secondes.
Sur le dernier message de ce post, MelloXVI parle d'une personne qui a réglé ça avec une "while"... Ne sachant pas ce que c'est, quelqu'un serait-il en mesure de me renvoyer vers un lien, un script peut-être, ou m'expliquer plus en détail s'il vous plaît ?
Merci d'avance.
Tu veux enclencher un relais durant 3 seconde? As-tu essayé de paramétrer le délais d'extinction à 3s sur le switch de ton relais dans domoticz?
Domoticz V4.10717 sur raspberry pi 3 B+
RFLink Gateway Nodo 433Mhz
Contrôleur Aeon Labs Z-Wave Plus Z-Stick GEN5
RFLink Gateway Nodo 433Mhz
Contrôleur Aeon Labs Z-Wave Plus Z-Stick GEN5