Démarrer un raspberry pi avec un bouton ON/OFF

Pour les questions spécifiques sur le Raspberry Pi

Modérateur : Francois

Avatar du membre
kalimeth
Messages : 11
Enregistré le : jeu. 4 juin 2015 23:04
Localisation : Cherbourg (50)

Démarrer un raspberry pi avec un bouton ON/OFF

Message par kalimeth » lun. 17 mai 2021 11:41

Bonjour à tous.
Je voudrais utiliser un raspberry pour un enregistreur de vidéos autonome. Cela servira pour enregistrer des armoires électriques dont le traitement est retranscrit par des leds. Et quand ce traitement fonctionne mal, on se sert d'un enregistreur pour suivre le déroulement du programme au ralenti.
Pour allumer ou éteindre le raspberry, j'ai câblé un bouton entre les bornes 5 (GPIO3) et 6. Ce bouton est fonctionnel (le raspberry s'allume ou s'éteint dès que j’appuie dessus).
Dès qu'il se met sous tension, un programme en python se lance et enregistre des vidéos d'une heure tant qu'il est sous tension (ces vidéos durent une heure pour faciliter un dépouillement du ralenti).
Un 2ème bouton est câblé sur les broches 1, 3 (GPIO2) et 9 pour pouvoir arrêter le programme et avoir accès au raspberry (suivant que la broche 3 reçoit un 1 ou un 0 logique).
Bien sûr, pour pouvoir relire facilement les vidéos, je les horodate.
Pour ce faire, vu que le raspberry n'est pas connecté à un réseau, je vais être obligé d'utiliser un module RTC. J'ai un DS3231.
Mon problème (J'y viens enfin 😁), c'est que le module RTC doit être câblé sur les broches I2C mais je les utilise déjà.
Je peux les changer, ça ne me pose pas de problème, mais je voulais savoir si la fonctionne "bouton ON/OFF" pouvait fonctionner sur d'autres broches, car tous les tutos que j'ai vu demande de faire un strap entre 5 et GND.
A votre avis, c'est possible de changer les broches ou l'interruption ne fonctionne que sur la broche 5 ?

dyox
Raspinaute
Messages : 969
Enregistré le : dim. 28 déc. 2014 15:28
Localisation : Le long de la côte, au dessus du pays des bigoudennes, aïe

Re: Démarrer un raspberry pi avec un bouton ON/OFF

Message par dyox » lun. 17 mai 2021 14:08

Bonjour,

Code : Tout sélectionner

A votre avis, c'est possible de changer les broches ou l'interruption ne fonctionne que sur la broche 5 ?
Je dirai que oui mais je ne sais pas faire. Voici le topic où je me posais cette question
viewtopic.php?f=44&t=4423
Modifié en dernier par dyox le lun. 17 mai 2021 21:40, modifié 1 fois.

Artemus24
Raspinaute
Messages : 1077
Enregistré le : ven. 15 sept. 2017 19:15

Re: Démarrer un raspberry pi avec un bouton ON/OFF

Message par Artemus24 » lun. 17 mai 2021 20:32

Salut à tous.

Quel est le type de raspberry que vous utilisez ? RPi 3B+ ? RPi 4B ?

Vous utilisez un bouton poussoir sur les broches 5 (GPIO3) et 6 (GROUND). C'est une bonne idée.
Mais voilà, vous risquez d'avoir un conflit avec I2C. D'autant plus que vous allez mettre un RTC DS3231 au même endroit.
kalimeth a écrit :Mon problème (J'y viens enfin ??), c'est que le module RTC doit être câblé sur les broches I2C mais je les utilise déjà.
Donc il y a foule sur les broches I2C.

Si vous désirez conserver la fonctionnalité du bouton poussoir, entre autre celle de mettre la raspberry à son minimum d'alimentation, il faudra exploiter les broches "RUN" et "PEN" ("POWER_ENABLE" ou "GLOBAL_EN").

@+
RPI4B/8GB + Argon FanHAt
Rpi3A+, Rpi3B+
RPi 2B + Joy-It I2C Serial 20x4 2004 LCD Module
RPi 2B + PIM273 Unicorn HAT HD 16x16 Leds RGB
RPi0v1.3, RPi0W + LibreElec/Kodi, Rpi0WH + Tuner TV HAT
NodeMCU ESP32

Avatar du membre
kalimeth
Messages : 11
Enregistré le : jeu. 4 juin 2015 23:04
Localisation : Cherbourg (50)

Re: Démarrer un raspberry pi avec un bouton ON/OFF

Message par kalimeth » ven. 21 mai 2021 11:26

Bonjour Artemus24,

Tout d'abord, désolé de répondre si tard, j'avais pas vu que mon sujet avait trouvé réponse (je pensais que la surveillance des sujets qu'on avait créé ou auxquels on avait répondu était automatique).

Le RPI utilisé est un RPI 3B+.
En effet, il y a foule sur le I2C :D d'autant plus qu'on voudrait en plus ajouter un écran tactile qui a le bon goût de manger beaucoup de Pins, dont les GPIO 2 et 3 :cry:

J'avais commencé à regarder les broches RUN et PEN (il me semble que le Pin GLOBAL_EN n'existe que sur le Pi4).
Seulement, j'ai compris (dites-moi si je me trompe) qu'en activant RUN, on faisait un reset "sauvage", donc plus moyen d'arrêter proprement le Pi (en lui demandant un shutdown lors de l'appui sur le BP) ?
De la même façon, le PEN sert à couper un maximum de consommateurs de courant sur la carte (pour ne garder qu'une led, me semble-t-il) de façon sauvage ?

J'ai vu (mais je ne suis pas sûr d'avoir tout compris), qu'on pouvait éventuellement décalé le I2C sur d'autres Pins (https://www.raspberrypi.org/documentati ... uration.md).
Si je ne peux pas changer le Pin de redémarrage, en tous cas, je prendrais le problème à l'envers :roll: ?
De la même façon, peut-on gérer plusieurs couples de ports I2C, un pour le RTC, l'autre pour l'écran (si l'écran a besoin de l'I2C, chose que je ne sais pas encore, d'ailleurs) ?

Quand à mettre 2 BP (un pour allumer, l'autre pour éteindre), cela me parait difficile. En effet, je travaille avec des personnes assez réfractaires au changement, du coup, le fait d'avoir seulement 2 boutons (un ON/OFF et un switch pour avoir accès au bureau et pouvoir récupérer les vidéos) va déjà tellement bousculer leur petit monde que j'ose pas leur infliger des ON/OFF séparés :D (il faut savoir prendre soin de nos anciens).

Artemus24
Raspinaute
Messages : 1077
Enregistré le : ven. 15 sept. 2017 19:15

Re: Démarrer un raspberry pi avec un bouton ON/OFF

Message par Artemus24 » ven. 21 mai 2021 12:58

Salut kalimeth.

Pour ce qui concerne le bouton poussoir, je n'ai pas de solutions simple.
Selon mon, le choix d'utiliser les broches 5 (GPIO3) & 6 (Ground) est la solution correcte.
Ne pas oublier de configurer le fichier cmdline.txt afin d'introduire les overlays suivants :

Code : Tout sélectionner

dtoverlay=gpio-shutdown,gpio_pin=17,active_low=1,debounce=1500
dtoverlay=gpio-poweroff,gpiopin=27,active_low=1,input=1
L"usage des broches "run" et "pen" nécessite de créer un circuit électronique venant gérer la pression du bouton poussoir.
Pour le "run", relié au "gnd", il suffit de presser et de relâcher le BP pour faire un reset.

Pour le "pen", il faut maintenir le circuit fermé entre le "pen" et le "gnd" afin de mettre la raspberry à son alimentation minimale.
Dès que le BP est relâché, cela provoque un reset.

Oui, on peut gérer plusieurs ports I2C. Dans ce cas, il faut utiliser un HAT, comme celui-ci :
--> https://www.gotronic.fr/art-shield-d-ex ... -21958.htm
ou encore, celui-là :
--> https://www.gotronic.fr/cat-kits-d-essa ... s-1563.htm

Oui, on peut changer les broches de l'I2C (i2c0 & i2c1), sauf que je ne l'ai jamais fait.

@+
RPI4B/8GB + Argon FanHAt
Rpi3A+, Rpi3B+
RPi 2B + Joy-It I2C Serial 20x4 2004 LCD Module
RPi 2B + PIM273 Unicorn HAT HD 16x16 Leds RGB
RPi0v1.3, RPi0W + LibreElec/Kodi, Rpi0WH + Tuner TV HAT
NodeMCU ESP32

Avatar du membre
kalimeth
Messages : 11
Enregistré le : jeu. 4 juin 2015 23:04
Localisation : Cherbourg (50)

Re: Démarrer un raspberry pi avec un bouton ON/OFF

Message par kalimeth » ven. 21 mai 2021 16:26

Au pire, dans l'idéal, il faudrait que j'arrive à trouver un écran à brancher avec la nappe "display", pour éviter d'utiliser trop de Pins.
Et réussir à décaler les ports I2C sur des pins inutilisées, pour gérer le module RTC et continuer à pouvoir utiliser le BP ON/OFF.
Dommage quand même qu'on ne puisse pas configurer le WAKE_ON_GPIO sur un autre GPIO, c'est vrai que ce serait bien pratique.

jelopo
Raspinaute
Messages : 307
Enregistré le : mer. 11 oct. 2017 10:23

Re: Démarrer un raspberry pi avec un bouton ON/OFF

Message par jelopo » sam. 22 mai 2021 08:35

Bonjour,

Sauf énormité de ma part, il me semble qu'il y a 2 ports I2C utilisable sur le PI3
https://fr.pinout.xyz/pinout/i2c#

Si les broches 3 et 5 sont déjà utilisées, il reste les broches 27 et 28.

A+

Avatar du membre
kalimeth
Messages : 11
Enregistré le : jeu. 4 juin 2015 23:04
Localisation : Cherbourg (50)

Re: Démarrer un raspberry pi avec un bouton ON/OFF

Message par kalimeth » sam. 22 mai 2021 11:39

Bonjour jelopo, merci pour cette info, je vais regarder ça de plus près.
Mais honnêtement, ça m'arrangerais bien 😁

Avatar du membre
kalimeth
Messages : 11
Enregistré le : jeu. 4 juin 2015 23:04
Localisation : Cherbourg (50)

Re: Démarrer un raspberry pi avec un bouton ON/OFF

Message par kalimeth » jeu. 27 mai 2021 13:36

Finalement, je ne suis pas si sûr q'on puisse utiliser les pins 27 et 28.
D'après cette page : https://www.framboise314.fr/scratch-ras ... ants/gpio/
Attention !
L’utilisation des broches 27 et 28 (ID_SD et ID_SC) est interdite. Elle sont réservées à l’accès aux mémoires EEPROM des cartes HAT connectées sur le Raspberry Pi.
Mais en réfléchissant un peu, je me pose une question toute bête.
Le I2C, c'est un protocole de communication pour les bus, on doit donc pouvoir discuter avec plusieurs périphériques (par définition !), donc si j'arrive à empiler les HAT, je devrai pouvoir discuter avec tout le monde, non ?

Artemus24
Raspinaute
Messages : 1077
Enregistré le : ven. 15 sept. 2017 19:15

Re: Démarrer un raspberry pi avec un bouton ON/OFF

Message par Artemus24 » jeu. 27 mai 2021 14:27

Salut kalimeth.
kalimeth a écrit :si j'arrive à empiler les HAT, je devrai pouvoir discuter avec tout le monde, non ?
En principe oui.

Mais il reste le problème du bouton poussoir qui utilise les mêmes GPIO.

@+
RPI4B/8GB + Argon FanHAt
Rpi3A+, Rpi3B+
RPi 2B + Joy-It I2C Serial 20x4 2004 LCD Module
RPi 2B + PIM273 Unicorn HAT HD 16x16 Leds RGB
RPi0v1.3, RPi0W + LibreElec/Kodi, Rpi0WH + Tuner TV HAT
NodeMCU ESP32

Répondre

Retourner vers « Raspberry Pi (tout modèles) »