[RESOLU] Signal commun sur GPIO de deux RPI2
Modérateur : Francois
[RESOLU] Signal commun sur GPIO de deux RPI2
Bonjour,
J'ai deux RPI2. Sur le premier, j'utilise les ports GPIO 19 et 23 en les connectant de manière classique au 3,3V (port 1) via une résistance 10kohms et un interrupteur qui bascule chacun sur la masse (port 25) lorsque le signal extérieur intervient.
Je voudrais que le même interrupteur bascule les ports GPIO 19 et 23 du second RPI. Ce qui revient à utiliser le 3,3V et la masse du premier RPI pour piloter les ports du second RPI.
Est-ce que cela peut poser un problèmes ? Est-il prudent de relier les masses des deux (ports 25) entre elles ?
Merci d'avance.
L. Prot
J'ai deux RPI2. Sur le premier, j'utilise les ports GPIO 19 et 23 en les connectant de manière classique au 3,3V (port 1) via une résistance 10kohms et un interrupteur qui bascule chacun sur la masse (port 25) lorsque le signal extérieur intervient.
Je voudrais que le même interrupteur bascule les ports GPIO 19 et 23 du second RPI. Ce qui revient à utiliser le 3,3V et la masse du premier RPI pour piloter les ports du second RPI.
Est-ce que cela peut poser un problèmes ? Est-il prudent de relier les masses des deux (ports 25) entre elles ?
Merci d'avance.
L. Prot
Modifié en dernier par L Prot le jeu. 27 juil. 2017 21:38, modifié 1 fois.
-
- Raspinaute
- Messages : 629
- Enregistré le : mar. 6 janv. 2015 19:44
- Localisation : finistere
Re: Signal commun sur GPIO de deux RPI2
bonjour, pour ce genre d’interconnexions , je vous conseil d'utiliser des optocoupleurs :
https://shop.pimoroni.com/products/spar ... r-breakout
@+
https://shop.pimoroni.com/products/spar ... r-breakout
@+
rpi b+ ,osmc, motioneyes
rpi 2 raspbian , server minecraft 24h/24 , utilisation gpio
orange pi pc debian ,utilisation gpio, motion cam
rpi 2 raspbian , server minecraft 24h/24 , utilisation gpio
orange pi pc debian ,utilisation gpio, motion cam
-
- Raspinaute
- Messages : 735
- Enregistré le : lun. 22 déc. 2014 16:50
- Localisation : 67380 LINGOLSHEIM
Re: Signal commun sur GPIO de deux RPI2
Bonjour,
1) Oui, il faut que les 2 systèmes disposent d'une référence de potentiel commune; il faut donc relier les masses.
Sans être obligatoire, il serait bien que les 2 Raspis soient alimentés par la même alim 5V (donc une costaud, selon les extensions et les périphériques).
2) En théorie, il n'y a pas de risque puisque les ports GPIO supportent 3.3 V en entrée.
Seulement, le diable se niche dans les détails:
-) Au boot (et rien ne prouve que les 2 Raspberries soient synchronisés), l'état des GPIO n'est pas défini.
Le port 19 du Raspi A, peut être à O V (niveau logique bas) alors que le même port (donc reliés ensemble) du Raspi B peut être à 3.3 V (niveau logique haut).
Une autre possibilité tout aussi malheureuse est un port au niveau haut (donc 3.3 V) et, en même temps, un appui sur le Bouton Poussoir.
Dans les 2 cas, le port au niveau haut est mis directement à la masse et il n'aimera pas (le courant que peut délivrer sans risque un port GPIO est limité).
Au mieux, il y a risque de fatigue voire de destruction du port GPIO en court-circuit.
Au pire, c'est tout le GPIO, donc le Raspi, qui saute.
Même si cette situation vous semble peu probable, loi de Murphy aidant, ELLE SE PRODUIRA.
Pour vous protéger (et le GPIO), vous pouvez mettre en série dans chacun des 4 GPIOs concernés, une résistance (environ 1 k Ohm) ou une diode petits signaux.
Sylvain
1) Oui, il faut que les 2 systèmes disposent d'une référence de potentiel commune; il faut donc relier les masses.
Sans être obligatoire, il serait bien que les 2 Raspis soient alimentés par la même alim 5V (donc une costaud, selon les extensions et les périphériques).
2) En théorie, il n'y a pas de risque puisque les ports GPIO supportent 3.3 V en entrée.
Seulement, le diable se niche dans les détails:
-) Au boot (et rien ne prouve que les 2 Raspberries soient synchronisés), l'état des GPIO n'est pas défini.
Le port 19 du Raspi A, peut être à O V (niveau logique bas) alors que le même port (donc reliés ensemble) du Raspi B peut être à 3.3 V (niveau logique haut).
Une autre possibilité tout aussi malheureuse est un port au niveau haut (donc 3.3 V) et, en même temps, un appui sur le Bouton Poussoir.
Dans les 2 cas, le port au niveau haut est mis directement à la masse et il n'aimera pas (le courant que peut délivrer sans risque un port GPIO est limité).
Au mieux, il y a risque de fatigue voire de destruction du port GPIO en court-circuit.
Au pire, c'est tout le GPIO, donc le Raspi, qui saute.
Même si cette situation vous semble peu probable, loi de Murphy aidant, ELLE SE PRODUIRA.
Pour vous protéger (et le GPIO), vous pouvez mettre en série dans chacun des 4 GPIOs concernés, une résistance (environ 1 k Ohm) ou une diode petits signaux.
Sylvain
-
- Raspinaute
- Messages : 1587
- Enregistré le : dim. 10 mai 2015 18:44
- Localisation : Dans la campagne à côté d'Annecy
- Contact :
Re: Signal commun sur GPIO de deux RPI2
Salut,
Je rajouterais à ce qui a été dit que la résistance de 10k est inutile car les GPIOs peuvent être configuré pour avoir une résistance de pullup.
A+
Je rajouterais à ce qui a été dit que la résistance de 10k est inutile car les GPIOs peuvent être configuré pour avoir une résistance de pullup.
A+
- BananaPI : Gentoo, disque SATA de 2 To
- Domotique : 1-wire, TéléInfo, Tablette passée sous Gentoo, ESP8266
- Multimedia par DNLA
- Et pleins d'idées ... et bien sûr, pas assez de temps.
-
- Raspinaute
- Messages : 735
- Enregistré le : lun. 22 déc. 2014 16:50
- Localisation : 67380 LINGOLSHEIM
Re: Signal commun sur GPIO de deux RPI2
Certes sauf qu'au boot, avant l'initialisation du matériel, tout est possibledestroyedlolo a écrit :Salut,
Je rajouterais à ce qui a été dit que la résistance de 10k est inutile car les GPIOs peuvent être configuré pour avoir une résistance de pullup.
A+
Sylvain
Re: Signal commun sur GPIO de deux RPI2
Merci pour vos réponses.
Il est donc possible et souhaitable de relier les masses des deux RPi entre elles.
[quote="spourre"]
-) Au boot (et rien ne prouve que les 2 Raspberries soient synchronisés), l'état des GPIO n'est pas défini.
Le port 19 du Raspi A, peut être à O V (niveau logique bas) alors que le même port (donc reliés ensemble) du Raspi B peut être à 3.3 V (niveau logique haut).
Une autre possibilité tout aussi malheureuse est un port au niveau haut (donc 3.3 V) et, en même temps, un appui sur le Bouton Poussoir.
Dans les 2 cas, le port au niveau haut est mis directement à la masse et il n'aimera pas (le courant que peut délivrer sans risque un port GPIO est limité).
Au mieux, il y a risque de fatigue voire de destruction du port GPIO en court-circuit.
Au pire, c'est tout le GPIO, donc le Raspi, qui saute.
Même si cette situation vous semble peu probable, loi de Murphy aidant, ELLE SE PRODUIRA.
Pour vous protéger (et le GPIO), vous pouvez mettre en série dans chacun des 4 GPIOs concernés, une résistance (environ 1 k Ohm) ou une diode petits signaux.
[/quote]
Là je suis un peu surpris car je croyais que le montage (relié au +3,3V ou à la masse) forçait le niveau logique du port et ceci dès le boot, puisque le montage est alimenté en même temps que le RPi. Sinon, comme je l'ai déjà dit au début, il y a déjà une résistance de 10k (comme prescrit sur les schémas de ce site) entre le 3,3V délivré par le port 1 et les autres ports. Seuls les ports 19 et 23 se trouvent reliés à la masse quand le poussoir est enfoncé. Par contre, si je comprends bien, c'est entre ces ports et la masse que Sylvain propose une résistance de 1K ? Ceci dit le problème devrait se produire aussi avec un seul RPi alors ...
Il est donc possible et souhaitable de relier les masses des deux RPi entre elles.
[quote="spourre"]
-) Au boot (et rien ne prouve que les 2 Raspberries soient synchronisés), l'état des GPIO n'est pas défini.
Le port 19 du Raspi A, peut être à O V (niveau logique bas) alors que le même port (donc reliés ensemble) du Raspi B peut être à 3.3 V (niveau logique haut).
Une autre possibilité tout aussi malheureuse est un port au niveau haut (donc 3.3 V) et, en même temps, un appui sur le Bouton Poussoir.
Dans les 2 cas, le port au niveau haut est mis directement à la masse et il n'aimera pas (le courant que peut délivrer sans risque un port GPIO est limité).
Au mieux, il y a risque de fatigue voire de destruction du port GPIO en court-circuit.
Au pire, c'est tout le GPIO, donc le Raspi, qui saute.
Même si cette situation vous semble peu probable, loi de Murphy aidant, ELLE SE PRODUIRA.
Pour vous protéger (et le GPIO), vous pouvez mettre en série dans chacun des 4 GPIOs concernés, une résistance (environ 1 k Ohm) ou une diode petits signaux.
[/quote]
Là je suis un peu surpris car je croyais que le montage (relié au +3,3V ou à la masse) forçait le niveau logique du port et ceci dès le boot, puisque le montage est alimenté en même temps que le RPi. Sinon, comme je l'ai déjà dit au début, il y a déjà une résistance de 10k (comme prescrit sur les schémas de ce site) entre le 3,3V délivré par le port 1 et les autres ports. Seuls les ports 19 et 23 se trouvent reliés à la masse quand le poussoir est enfoncé. Par contre, si je comprends bien, c'est entre ces ports et la masse que Sylvain propose une résistance de 1K ? Ceci dit le problème devrait se produire aussi avec un seul RPi alors ...
-
- Raspinaute
- Messages : 1587
- Enregistré le : dim. 10 mai 2015 18:44
- Localisation : Dans la campagne à côté d'Annecy
- Contact :
Re: Signal commun sur GPIO de deux RPI2
Ben, en théorie nonspourre a écrit :Certes sauf qu'au boot, avant l'initialisation du matériel, tout est possible
Je ne sais pas pour la framboise (n'en ayant pas), mais sur mes bananes, le démarrage est comme suit :
- au démarrage du proc, les GPIOs sont forcés en haute impédance. Il me semble que c'est le cas sur tous les CPU avec lesquels j'ai été amené à jouer justement pour éviter de tout faire fumer comme dans les cas que tu décris
- ensuite il initialise les ports en fonction de son fichier FEX (kernel < 4) ou depuis le device tree (DTB) depuis le 4
- enfin, il boote sur le kernel qui peut lui-aussi changer les GPIOs en fonction des périphs découvert et/ou des config ...
Ceci dit, je plussois pour la résistance : mieux vaut prévenir que guérir
- BananaPI : Gentoo, disque SATA de 2 To
- Domotique : 1-wire, TéléInfo, Tablette passée sous Gentoo, ESP8266
- Multimedia par DNLA
- Et pleins d'idées ... et bien sûr, pas assez de temps.
-
- Raspinaute
- Messages : 735
- Enregistré le : lun. 22 déc. 2014 16:50
- Localisation : 67380 LINGOLSHEIM
Re: Signal commun sur GPIO de deux RPI2
1) Oui pour les masses car il faut bien que les circuits partagent une référence commune pour définir les niveaux logiques.L Prot a écrit : ....
Il est donc possible et souhaitable de relier les masses des deux RPi entre elles.
...
Par contre, si je comprends bien, c'est entre ces ports et la masse que Sylvain propose une résistance de 1K ? Ceci dit le problème devrait se produire aussi avec un seul RPi alors ...
La seule exception, si on souhaite une isolation galvanique totale (pour des raisons de sécurité physique des personnes par exemple), est d'utiliser un optocoupleur (comme le précise Guillaume) mis c'est un peu disproportionné dans votre cas.
2) Sans rentrer dans des querelles d'experts, et pour faire simple, on va admettre qu'il peut se présenter (rarement), une situation dangereuse pour le port GPIO. On le protège en mettantn comme indiqué dans mon post précédent, une résistance (ou une diode) en série, c'est à dire insérée entre la pin du GPIO et le contact du Bouton poussoir. Actuellement, il doit y avoir un fil, c'est ce fil qu'il faut couper pour mettre la résuistance. Gardez votre résistance de 10 kOhm pour le tirge au + Vcc.
Nota: Même si des broches +5, +3.3 et masse sont présentes dans le connecteur d'interface du Raspberry, c'est un abus de langage que de parler de port GPIO pour ces broches. Leur état ne peut pas être changé par le processeur (SOC).
Sylvain
Re: Signal commun sur GPIO de deux RPI2
C'est clair.
Merci à tous.
LP
Merci à tous.
LP
-
- Raspinaute
- Messages : 735
- Enregistré le : lun. 22 déc. 2014 16:50
- Localisation : 67380 LINGOLSHEIM
Re: Signal commun sur GPIO de deux RPI2
Tant mieux; Sinon, n'hésitez pas à revenir.L Prot a écrit :C'est clair.
Merci à tous.
LP
Si la réponse vous convient, vous pouvez éditer votre premier message et mettre le post à "résolu".
Cela peut faire gagner du temps à certains lecteurs.
Merci et à bientôt.
Sylvain