Configuration des GPIO

Forum dédié aux questions concernant la configuration de votre serveur sous Linux
DomoJarrie
Messages : 6
Inscription : 12 janv. 2023, 10:22

Configuration des GPIO

Message par DomoJarrie »

Bonjour,

Dans l'article: https://easydomoticz.com/les-gpio-dans-domoticz/
Il est indiqué: "les GPIO 20, 21, et 25 fonctionnent en entrée uniquement avec une résistance de pull-up d’après le schéma suivant."
Cette résistance existe-elle en natif dans le Raspberry pour les broches mentionnées ou faut-il la réaliser de façon matérielle ou logicielle ?

Je crois qu’il n’est pas possible de configurer des résistances pull up ou pull down dans le fichier init.d/domoticz.sh mais peut-on créer un script python qui s’exécute au démarrage du Raspberry pour configurer les résistances pull up ou pull down et utiliser les entrées ainsi configurées ultérieurement dans Domoticz ?

Les GPIO0, GPIO1, GPIO5 et GPIO6 en entrées sont « Open » dans Domoticz. Je n’ai pas réussi à inverser leur polarité dans init.d/domoticz.sh. Est-t-il possible de le faire et Comment ?
echo 0 > /sys/class/gpio/gpio0/value
echo 0 > /sys/class/gpio/gpio5/value
echo 0 > /sys/class/gpio/gpio6/value
echo 0 > /sys/class/gpio/gpio1/value
Ne fonctionnent pas.

Les GPIO 7 et 8 apparaissent en mode « OUT », Valeur 1 dans « gpio readall », lorsque je l’ai exporte dans init.d/domoticz.sh, elles n’apparaissent pas dans les dispositifs de Domoticz. Est-ce que c’est par ce que leur Valeur est 1 qu’elles ne sont pas exportables ou y a-t-il une solution ?

Merci pour vos réponses.

Patrick Bayle,

Ci-joint gpio readall.jpg et image des lignes ajoutées au fichier domoticz.sh pour la configuration des GPIO.
gpio readall.jpg
gpio readall.jpg (109.63 Kio) Consulté 1011 fois
Domoticz.sh_Ajout.jpg
Domoticz.sh_Ajout.jpg (368.11 Kio) Consulté 1011 fois
Keros
Messages : 6638
Inscription : 23 juil. 2019, 20:57

Modération

Message par Keros »

Bonjour DomoJarrie et bienvenu sur le forum :)

Je viens de déplacer ton sujet dans la section dédiée aux Raspberrys.
Comment bien utiliser le forum : Poser une question, Mettre un script, un fichier, une image ou des logs
Mes petits guides : Débuter en programmation, Le débogage, Le choix de matériel, Les sauvegardes
Ma présentation - Mes Tutos
Neutrino
Messages : 2662
Inscription : 10 juil. 2015, 15:42
Localisation : Les Herbiers(85)

Re: Configuration des GPIO

Message par Neutrino »

Bonjour,
Les résistances de pull-up sont à ajouter matériellement.
Attention, tu te bases sur un tuto de 2014 plus vraiment à jour. Wiring Pi n'est plus maintenu.
Jette un œil du côté du wiki officiel : https://www.domoticz.com/wiki/GPIO
Ma maison à plein d'IP ! :mrgreen:
SAV Bonjour. Vous avez vidé le cache ?
DomoJarrie
Messages : 6
Inscription : 12 janv. 2023, 10:22

Re: Configuration des GPIO

Message par DomoJarrie »

Bonjour,
Tout d'abord merci pour votre réponse Netrino.
Pour tout vous expliquer, j'utilise avec succès avec des Raspberrys 3B des cartes PiFace 2 ou leur clone (Geekworm DIDO Module, puisque les cartes PiFace ne sont plus commercialisées).
Cependant dans certaines conditions avec des Raspberrys 4B se produit une réinitialisation des sorties de façon inopinée, ce qui entraîne des coupures de circuit, arrêt des moteurs…
Dans les mêmes conditions un Raspberrys 3B, avec le même programme fonctionne parfaitement.
Ce qui me fait dire que la carte Piface 2 qui ne reçoit plus de mise à jour n’est pas tout à fait adaptée au Raspberry 4B.
En mesurant les polarités des GPIO d’une part et des Entrées ou Sorties des bornes PiFace, j’ai noté une contradiction dans Domoticz, lorsqu’une Sortie du Piface est sur On, sa polarisé est basse, associées à une Valeur 0, alors que lorsqu’une Sortie GPIO est sur On sa polarité est haute, associée à une Valeur 1. A l’état Off, les Valeurs sont bien sûr également inversées
Il en est de même pour les Entrée à 0 l’état Open pour le PiFace, à 1 à l’état Open pour les GPIO. A l’état Closed, les Valeurs sont bien sûr également inversées.
La raison de cette particularité se trouve certainement dans les configurations respective des 2 systèmes mais ceci paraît malgré tout bien étrange.

Du fait que l’on ne trouve plus actuellement de Raspberrys 3B, je me suis intéressé à la gestion des GPIO en direct avec les Raspberry 4B.
J’ai déjà effectué des tests sans problème dans Domoticz avec les sorties. Je m’intéresse maintenant aux entrées mais je tiens à m’entourer de précautions pour ne pas griller les GPIO.
Le wiki officiel : https://www.domoticz.com/wiki/GPIO que vous m’avez conseillé de consulter indique concernant les Entrées, comme l’article : https://easydomoticz.com/les-gpio-dans-domoticz/: « certains GPIO ont un pull-up interne permanent. »
Savez-vous quelles GPIO sont concernées ?

Plutôt que d’ajouter matériellement des résistances pull up ou pull down ne peut-on pas créer un script python dans /etc/init.d , script qui s’exécute au démarrage du Raspberry avec par exemple pour les GPIO23 et GPIO20 ?

Code : Tout sélectionner

import RPi.GPIO as GPIO    # utilisation GPIO 
GPIO.setmode(GPIO.BCM)     # numérotation BCM
GPIO.setup(23, GPIO.IN, pull_up_down=GPIO.PUD_DOWN)  # GPIO23 en entrée avec résistance pull down 
GPIO.setup(20, GPIO.IN, pull_up_down=GPIO.PUD_UP)    # GPIO20 en entrée avec résistance pull up
Merci pour toutes les réponses.
Dernière modification par Keros le 15 janv. 2023, 16:30, modifié 1 fois.
Raison : Ajot des balises code
Neutrino
Messages : 2662
Inscription : 10 juil. 2015, 15:42
Localisation : Les Herbiers(85)

Re: Configuration des GPIO

Message par Neutrino »

Apparement, il faut une carte en version 1.3 pour fonctionner avec le Pi 4.
https://wiki.geekworm.com/Raspberry_Pi_DIDO_Board
Et il y a toute une doc pour le configurer :
https://wiki.geekworm.com/images/9/95/H ... _4B-EN.pdf
Après, je n'utilise plus les GPIO du PI depuis des années, justement à cause de ce genre de problème.
Tu mets en place un truc qui fonctionne, et une MAJ plus tard, il faut tout refaire car un module ou une librairie ne sont plus supportés.
Quand je veux vraiment quelques chose de précis à la milliseconde, je passe par un arduino ou un ESP8266.
Ma maison à plein d'IP ! :mrgreen:
SAV Bonjour. Vous avez vidé le cache ?
DomoJarrie
Messages : 6
Inscription : 12 janv. 2023, 10:22

Re: Configuration des GPIO

Message par DomoJarrie »

Merci Neutrino pour cette réponse
DomoJarrie
Messages : 6
Inscription : 12 janv. 2023, 10:22

Re: Configuration des GPIO

Message par DomoJarrie »

C'est vrai que j'utilise des cartes Geekworm DIDO Module avec des Raspberry 4B et que je n'ai pas de problème.
Quant à l'Ardino, je l'utilise avec un double pont en H pour actionner les 2 moteurs d'un portillon à double battant qui s'ouvre automatiquement à l'arrivée d'un monte-charge transformé en ascenseur mais l'utilisation de l'Ardino qui reste un automate, est moins pratique que celle d'un Raspberry qui est un véritable ordinateur.
J'ai essayé de piloter un Ardino avec un Raspberry reliés en série par leur port USB en utilisant un script Python mais la communication est lente et les commandes s'effectuent avec un temps de latence qui atteint plus d'une seconde.
Comme je me suis intéressé aux GPIO et que je suis curieux je voudrais compléter mes connaissances.
J'ai installé des résistances pull up sur des Entées GPIO 0 qui passent à 1 et des résistances pull down sur des Entrées 1 qui passent à O et le tout fonctionne très bien avec des BP.
J'aimerai maintenant savoir :
- si il est possible de configurer ces résistances au démarrage du Raspberry avec le script Python tel que décrit dans: https://raspberrypi.pagesperso-orange.f ... /17-00.htm pour pouvoir les utiliser dans Domoticz sans les installer matériellement ces résistances.
- s'il existe une syntaxe pour configurer les Entrées dans le script domoticz.sh pour que ces Entrées apparaissent en tant que compteurs dans Domoticz.
Je vous remercie pour toutes vos réponses.
Répondre