Page 1 sur 1

Domoticz + carte relais

Publié : 19 févr. 2015, 23:28
par Davv42
Bonsoir, je suis nouveau et découvre peu à peu Domoticz et Linux.

je suis en train de monter un projet à base de Rpi dernière version avec port GPIO de 40 broches + 2 cartes de 8 relais.
Afin de piloter tout ça avec domoticz j'ai créé un fichier qui exporte les GPIO dont j'ai besoin lors du boot, appelé par le domoticz.sh.
Dans ce fichier par exemple, je déclare un export pour un pin de GPIO puis, je le règle en "OUT" puis je passe son état à 0.

Le soucis est que au moment ou je déclare le GPIO en "OUT", son état passe automatiquement à 1, ce qui fait coller le relais. Comme j'ai un actionneur relié à ce relais, celui-ci se déclenche à chaque initialisation, ou reboot... Malgré le fait de le passer à 0 dans la ligne de code qui suit, cela suffit à déclencher l'actionneur relié au relais.

Y a-t-il moyen de déclarer un export de GPIO en OUT (pour piloter le relais, c'est bien çà?) et à l'état 0 ou lieu de 1???
D'avance merci.

Re: Domoticz + carte relais

Publié : 20 févr. 2015, 09:25
par patrice
Bonjour
Vu sur l'article du blog concernant les GPIO
Les gpio étant dans /sys/class/gpio/gpioXX on peut aussi configurer directement par un

# Pin GPIO14 (OUT)
echo “14″ > /sys/class/gpio/export
chmod 777 -R /sys/class/gpio/gpio14
echo “out” > /sys/class/gpio/gpio14/direction
echo "1" > /sys/class/gpio/gpio14/active_low


On accède ici aux propriétés direction, edge,active_low, et value (pratique en lecture)

La directive active_low permet de changer l’état du signal.

Si active_low est passée à 1 et value=1 on est à LOW alors que en l’atat “normal” on serait à HIGH.
Donc active_low doit correspondre à ton besoin

il y a eu ici dans le forum des discussions avec active_low, ici viewtopic.php?f=8&t=167&hilit=active_low

Re: Domoticz + carte relais

Publié : 20 févr. 2015, 14:12
par Davv42
Bonjour, merci pour la réponse.

Ton exemple est exactement ce que j'ai dans mon script, seulement le GPIO passe a 1 dès la 3ème ligne, a la définition de la direction en "out".

Peut être faut il déclarer active_low=1 avant de déclarer le GPIO en "Out"? (Inverser les ligne 4 et 3 de ton exemple?)

Je ferai les essais ce soir.