Publié le 5 mars 2013 - par

Ma framboise314 fait risette : Ajouter un bouton de reset au Rasperry Pi (version B)

reset_titreSur la version B du Raspberry Pi est apparu un connecteur P6, en fait deux pastilles destinées à recevoir des broches de connexion, pour équiper le Raspberry Pi d’un bouton RESET. Comment implanter ce bouton RESET en images…

Le reset sur le Raspberry Pi

[stextbox id=’warning’ caption=’Attention’]A partir de la version Raspberry Pi 3 B+, le branchement est différent ! référez vous à ce lien SVP.
merci Nicolas pour cette info :)[/stextbox]

Dans l’article décrivant les modifications apportées par la version B de la framboise314, la présence d’un circuit de reset est mentionnée :

Reset

A reset circuit has been implemented, although in the standard build the required header is not fitted. Users wishing to use this circuit should fit an appropriate header to P6. Shorting P6 pin 1 to P6 pin 2 will cause the BCM2835 to reset.

[Un circuit de reset a été mis en oeuvre, bien que dans la version normale, le connecteur ne soit pas implanté. Les utilisateurs souhaitant utiliser ce circuit devront souder le connecteur approprié en P6. Un court-circuit entre les broches 1 et 2 de P6 provoque le reset du BCM2835.]

Schéma du circuit de reset

reset_schema

Schéma de la modification du Raspberry Pi version B

Comment ajouter un bouton de reset au Raspberry Pi

Pour ajouter un bouton de RESET à votre framboise314 il vous faut :

  • Un Raspberry Pi en état de marche
  • Un connecteur à deux broches
  • Un bouton RESET récupéré sur un vieux PC

Installation du connecteur :

reset_09Commencez par repérer l’emplacement du connecteur P6. Il est matérialisé par un rectangle entourant deux pastilles à souder, sur le bord de la carte du Raspberry Pi.

reset_08Préparez votre matériel : on voit ici le connecteur à 2 broches prêt à être soudé sur la carte, ainsi que le connecteur femelle qui va vers le bouton poussoir RESET, récupéré sur un PC.

reset_07Mettez le connecteur en place dans les trous de P6. Il va falloir retourner la carte pour procéder à la soudure. Je vous conseille de bloquer le connecteur avec un bloc de mousse, sinon il va tomber.

reset_06Le connecteur est en place, on voit à gauche les bulles de la mousse (récupérée d’un emballage d’écran) qui maintient le connecteur en place. Paré pur la soudure !

Soudure du connecteur :

reset_05

Si vous n’avez jamais soudé, lisez cet article avant de commencer.

Soudure de la première borne du condensateur : Utilisez un fer bien chaud, propre (frottez la panne sur une éponge humide ou dans la paille de fer), chauffez ET la patte ET la pastille simultanément, déposez la soudure sur la patte du composant, PAS SUR LA PANNE DU FER A SOUDER… La soudure doit « mouiller » la patte et la pastille rapidement, et quand vous enlevez le fer elle ne doit pas « filer », sinon, c’est que votre fer n’est pas assez chaud ou que vous n’avez pas préchauffé suffisamment avant de souder. (Ne chauffez pas non plus trop longtemps, ça risque de décoller la pastille ! oui je sais c’est pas si simple :mrgreen: )

reset_04Soudez ensuite la deuxième patte, de la même façon. [Merci à Jean-Pierre qui a réalisé les photos pendant les opérations de soudure.]

reset_03Après quelques secondes de refroidissement, retournez la carte, votre Raspberry Pi est muni d’un connecteur RESET flambant neuf !

reset_02

Vous pouvez maintenant brancher le connecteur de votre bouton poussoir. Grand luxe : le connecteur (de récupération d’un PC) est marqué RESET SW (switch)… ça fait pro, non?

reset_01Et voilà ! une vue générale de la framboise314 équipée de son bouton poussoir de RESET.

Si vous n’avez pas de bouton poussoir de récupération, vous pouvez simplement court-circuiter les deux broches du connecteur avec un tournevis. Un conseil : N’utilisez surtout pas de tournevis métallique (style tournevis horloger) ! En cas de chute sur le Raspberry Pi des dégats irréversibles peuvent se produire (voyez cet article).

A quoi ça sert ?

Euhhhhhh….

Même si un Linux plante rarement (si, si, ça arrive quand même !), il peut être intéressant de disposer d’un bouton poussoir pour reseter la carte. Avant d’arriver à cette extrémité, pensez à tester si CTRL ALT F1 fonctionne (passage sur une console texte), ce qui peut vous permettre d’arrêter « proprement » votre framboise314 :

Plus intéressant : si vous avez arrêté votre Raspberry Pi avec la commande ci-dessus, un appui sur le bouton poussoir de RESET réinitialise le processeur et fait redémarrer la carte…

En clair : votre Raspberry Pi fonctionne, achève ce qu’il a à faire puis passe en « sommeil » en exécutant la commande ci-dessus. Il attend alors d’être « réveillé » par un contact qui se ferme, une boucle sèche, un temporisateur, une action mécanique sur un poussoir…

Ça vous donne des idées ?

À propos François MOCQ

Électronicien d'origine, devenu informaticien, et passionné de nouvelles technologies, formateur en maintenance informatique puis en Réseau et Télécommunications. Dès son arrivée sur le marché, le potentiel offert par Raspberry Pi m’a enthousiasmé j'ai rapidement créé un blog dédié à ce nano-ordinateur (www.framboise314.fr) pour partager cette passion. Auteur de plusieurs livres sur le Raspberry Pi publiés aux Editions ENI.

43 réflexions au sujet de « Ma framboise314 fait risette : Ajouter un bouton de reset au Rasperry Pi (version B) »

  1. Ping : Raspberry Pi : ajoutez un « reset  | «le blog d'Olivyeahh

  2. Ray

    Bonjour, et merci pour ces articles.

    J’aimerais savoir ce qui se passe lorsqu’ on appuis sur ce BP reset ; alors que le rasp est en fonctionnement.

    Merci

    Répondre
    1. admin

      Bonjour
      Oula ! C’est à éviter dans la mesure du possible… Vous risquez au mieux de vous retrouver avec un système de fichiers abimé, qui pourra être réparé au prochain démarrage, au pire le RasPi ne démarrera plus. Ceci est dû au fait que le système a des fichiers ouverts, en cours d’écriture, stockés en totalité ou partiellement en mémoire, et un arrêt brutal (reset ou coupure d’alimentation) l’empêche de terminer l’écriture de ces fichiers.
      De toute façon, pensez à sauvegarder régulièrement vos cartes SD pour pouvoir les régénérr si cela arrive.
      Cordialement
      François

      Répondre
  3. Archimed

    Bonjour,

    Merci pour l’info, je cherchai justement un moyen « propre » de la démarrer au lieu de brancher/débrancher l’usb.

    PS : « shutdown -h now » fonctionne mieux. 😉

    Répondre
        1. François MOCQ Auteur de l’article

          Bonjour
          non non, comme sur un PC ! le RESET ne formate pas le disque dur 🙂
          Quel montage ? Le RESET ? si vous voulez mais il faut relier le bouton poussoir aux bornes RUN sur le Raspberry PI.
          Si vous appuyez sur le bouton le Pi redémarre sans avoir fini ce qu’il faisait… Risque de corruption de la carte SD
          Par contre si vous arrêtez proprement le système avec la commande HALT (sans débrancher l’alim ensuite) le Pi se remettra en route lors de l’appui sur RESET
          cordialement
          François

          Répondre
  4. Julien

    Bonjour à toi François,

    Crois-tu qu’il serait possible de remplacer le bouton « reset » par un bouton « on/off » en utilisant ce connecteur P6 ? Ce serait bien plus classe que devoir débrancher le RPi.

    Merci pour ton article.

    Répondre
    1. admin Auteur de l’article

      Bonjour Julien
      P6 permet juste de faire un reset. Le poussoir que j’ai utilisé établit un contact momentané suffisant pour redémarrer le Raspi lorsqu’on le relâche. Par contre un bouton on/off mettrait le Raspi en reset permanent sur sa position on puisqu’il court-circuiterait les 2 bornes de P6, et laisserait redémarrer la framboise314 au passage sur off…
      Mais le Raspberry Pi resterait alimenté tout le temps. Ça ne remplacera donc pas le fait de débrancher l’alim du Raspberry Pi. Un projet KickStarter propose une solution pour le on/off. Il est peut-être en vente sur un site marchand ?
      Bonne journée
      Cordialement
      François

      Répondre
      1. Julien

        Bonjour François,

        Merci beaucoup pour ta réponse. C’est bien ce que je craignais malheureusement. Par contre, le projet mentionné dans le lien que tu as donné me paraît très intéressant. Projet et disponibilité à suivre …

        Cordialement,

        Julien

        Répondre
    2. zigomato

      Salut, peut être il est tard pour te répondre mais pour un projet perso avec la petite framboise, je me suis fait une alimentation sur batterie avec recharge possible de la batterie même en fonctionnement
      tu as besoin d’une alimentation pour le raspberry 5v avec assez de courant, une batterie supérieur à 6-7 volt et une bonne capacité, un régulateur, quelques résistance et lzd et un interrupteur, puis quelques diodes pour protéger lors de la charge
      en gros ton alimentation branché entre le secteur et la batterie, puis entre la batterie vers le rasp, tu mets l’interrupteur (on/off) et un regulateur 5v. Entre le regulateur 5v et linterrupteur, tu place un diode pour ne pas cramer to regulateur (donc le rasp) en cas de petitres souis. Sur le plus entre la batterie et le secteur tu dimensionne la resistance pour allumer la led quand tu es en charge (batterie charger ou pas, tu peux fonctionner)
      Après comme tout bon système , même si c’est linux, il faut fermer l’os proprement.

      Répondre
  5. Ping : Ajouter un bouton Reset au Raspi (version B) | MudGeek

  6. Ping : DjarvisS Blog » Raspberry pratique : Ajouter un bouton reset

  7. Ping : Une carte d’extension multifonction pour le Raspberry Pi | Framboise 314, le Raspberry Pi à la sauce française….

    1. admin Auteur de l’article

      C’est vrai ! Habitude de vieux linuxien? Extrait du man de halt :
      If halt or reboot is called when the system is not in runlevel 0 or 6, in other words when it's running normally, shutdown will be invoked instead (with the -h or -r flag). For more info see the shutdown(8) manpage.
      Under older sysvinit releases , reboot and halt should never be called directly. From release 2.74 on halt and reboot invoke shutdown(8) if the system is not in runlevel 0 or 6. This means that if halt or reboot cannot find out the current runlevel (for example, when /var/run/utmp hasn't been initialized correctly) shutdown will be called, which might not be what you want. Use the -f flag if you want to do a hard halt or reboot.

      The -h flag puts all hard disks in standby mode just before halt or power-off. Right now this is only implemented for IDE drives. A side effect of putting the drive in stand-by mode is that the write cache on the disk is flushed. This is important for IDE drives, since the kernel doesn't flush the write cache itself before power-off.

      Répondre
    1. k-limes

      Je précise quand même que c’est pour ajouter un bouton physique sur un Raspberry PI B+, je suppose que c’est pareil étant donné que j’ai aussi ces mêmes contacteurs (1 rond et 1 carré) mais qu’il porte le nom de « RUN » au lieu de « P6 » !

      Répondre
  8. Olivier

    Bonsoir,
    Je souhaite faire cette modification, je posséde un bouton poussoir avec écrit power sw, puis je l’utiliser?
    Cordialement et merci pour votre site

    Ps:j’ai un Raspberry b+ que j’utilise avec Retropie pour de l’emulation

    Répondre
    1. François MOCQ Auteur de l’article

      Bonjour Olivier
      Si c’est un bouton poussoir (il ne reste pas enclenché) ça fait l’affaire. C’est le cas des boutons A/M des PC qui mettent en route le PC quand on appuie un bref instant dessus.
      Si c’est un bouton qui s’enclenche le Raspberry Pi ne risque rien, simplement il ne démarre pas puisque le reset reste activé en permanence… Donc : essayez !
      Cordialement
      François

      Répondre
  9. philippe

    Bonjour François,
    Permettez-moi de vous féliciter pour votre site ainsi que pour vos prises de position récentes.
    Je suis dans une approche très minimaliste autour du raspberry, mon idée était de régler le problème du switch on/off avec un minimum de matériel. Le résultat a donné un switch unique pour le démarrage et la mise en veille sécurisée du raspi, avec 1 transistor et 3 résistances.
    L’idée m’est venue en réalisant le « one-button-audiobook-player » de Michael Clemens, selon moi un magnifique projet éthique. Maintenant le bouton unique démarre et arrête proprement le raspberry.
    Je n’ai ni blog ni site et le temps n’est pas mon meilleur allier.
    N’hésitez pas à me contacter pour plus d’informations.
    Bien à vous,
    philippe

    Répondre
    1. leclercq

      Bonjour, je suis tout aussi intéressée pour ajouter un bouton on/off (projet industriel).
      Je ne code pas du tout et pour le coup les forums proposent en effet la solution reset pour allumer le pi3. Le soucis est pour l’eteindre sans passer par l’interface. pour le coup le branchement entre le
      3.3 et le GND et le GPIO4 sont proposés mais mon soucis est que les commandes sont en python.. Me concernant, il m’est imposé de coder en C#. Donc je cherche …mais aucun retour.
      je suis à votre écoute

      Répondre
        1. leclercq

          en effet , apres mausberry est une dernière possibilité mais cela est boite noire pour moi…D’ailleurs il n’utilise pas le P6…savez vous pourquoi ?
          Enfin le plus simple pour commander initialiser et configurer les gpio sacahnt que j’utilise que VS2015 et windows core iot ?
          est ce d’installer winring ? ou plutot d’utiliser Visual ?

          Merci des conseils techniques

          Répondre
  10. Olivier

    Bonsoir,
    Autre petite question, je souhaiterais mettre un bouton poussoir pour démarrer mon raspberry pi 2,mais je ne souhaite pas souder de connecteur 2 broches, puis-je faire la même chose avec les GPIO ?
    Cordialement
    Olivier

    Répondre
    1. François MOCQ Auteur de l’article

      Bonjour Olivier
      Malheureusement non… Quand le Raspberry est à l’arrêt le GPIO ne fonctionne pas donc…. pas moyen de le réveiller par ce moyen.
      Le bouton Reset (Run sur les dernières versions) est un reset hard connecté au SoC et lui peut « réveiller » le processeur.
      Cordialement
      François

      Répondre
      1. Olivier

        Merci pour ta réponse,je t’explique mon projet et donc mon probléme, j’ai récuperé une nintendo nes que j’ai vidé ,pour y mettre un Raspberry Pi 2 dedans avec un retropie modifié ( par cette personne http://www.mon-pi-et-moi.fr/), j’avais fait des test avec mon raspberry B+ pour souder des connecteur pour brancher un bouton reset,mais sur mon pi 2,pas moyen de le faire et j’ai peur de l’abimer car je ne suis pas un pro de la soudure,donc je cherche un moyen de le rallumer, car avec la distribution retropie on peux l’éteindre proprement,donc vu que je n’arrive pas à souder le connecteur ,je cherche un autre moyen de le rallumer, ( d’où ma question de hier soir) j’ai penser à ce genre de chose que j’adapterais à mon boitier nes: http://www.amazon.fr/Camac-Chargeur-t%C3%A9l%C3%A9phones-Raspberry-BlackBerry/dp/B00F9Q6TNW/ref=sr_1_1?ie=UTF8&qid=1424853500&sr=8-1&keywords=bouton+raspberry

        tu en penses quoi?

        Merci d’avance car je suis un peu bloqué là.
        Olivier

        Répondre
        1. François MOCQ Auteur de l’article

          bonjour Olivier
          Ah oui si le RasPi est arrêté proprement ce câble USB avec inter fera tout à fait l’affaire !
          Quand votre réalisation sera finalisée, ce serait sympa de m’envoyer quelques photos pour en faire part aux lecteurs de framboise314… ça vous dit ?
          Cordialement
          François

          Répondre
          1. Olivier

            Cool ba je vais faire ça alors,peut etre que je trouverais un bon soudeur à coté de chez moi un jour,car j’ai quand même essayé mais le contact se fesait mal ou pas du tout.Je vais essayer avec ce bouton.Et ou pas de soucis, j’attends encore de recevoir quelques cables pour finir mon projet, mais oui je vous enverrez des photos quand j’aurais fini.
            Encore merci pour votre réponse
            Olivier

            Répondre
  11. Chuck

    Bonjour,

    tout d’abord merci pour cet article, j’aurais 2 questions en rapport à celui-ci:

    Ayant fait l’acquisition d’un Pi 2 récemment pour utiliser en tant que media center avec OSMC, j’aurais souhaiter savoir si l’utilisation d’un bouton reset sur celui-ci dans le but unique de le démarrer lorsqu’il est éteint aurait une meilleur incidence sur la durée de vie de l’appareil plutôt que de débrancher rebrancher l’alim pour le mettre en marche ?

    Et autre petite question, y a-t-il une moyen de mettre en place ce bouton sans réaliser de soudure? La réalisation de celle-ci me semble assez délicate pour un novice sur le pi 2 du fait que d’autres points de soudures sont assez proche.

    Merci d’avance.
    Cordialement.

    Répondre
    1. CrazyCat

      Utiliser ce bouton pour un démarrage n’aura pas d’incidence sur la durée de vie du RPi, mais peut en avoir une sur celle de l’alimentation.
      En effet, soit on débranche/rebranche la prise 220v et l’alimentation se prend de petites surtensions à chaque fois, soit on débranche/rebranche côté USB et on fatigue la connectique.

      En ce qui concerne la soudure, il n’y a malheureusement pas moyen d’y couper, mais il suffit d’une bonne pane et de ne pas trembler pour ne pas faire de bêtise, même en étant débutant.

      Répondre
  12. Ping : Bootez votre Raspberry Pi 3 sur une clé USB | Framboise 314, le Raspberry Pi à la sauce française….

  13. ElDonas

    Bonjour
    Je ne trouve pas l info, mais peut être vous ou un membre à cette information.
    Le raspberry pi 3 est il équipé des ce connecteur?
    Peut-être RUN à côté des gpio?
    Merci

    Répondre
      1. ElDonas

        Je ne me attendais pas à une réponse si rapide.
        Merci
        Je clarifie, Mon »Je ne trouve pas l info, mais peut être vous ou un membre a cette information. »: C’était Est ce que le Rp3 à t il ces pastilles?
        Et merci pour ton super site.

        Répondre
  14. willy carlos

    brillant article, j’aimerais personnaliser l’action lorsqu’on presse sur le bouton, c’est a dire, au lieu d’exécuter la commande sudo shutdown now -h, j’aimerais exécute un script que j’ai écris,

    merci

    Répondre
    1. François MOCQ Auteur de l’article

      Bonjour
      le bouton présenté réalise un reset « HARD »
      il n’y a pas de script !
      si vous voulez faire ce genre de chose il faut utiliser un port GPIO et un programme qui tourne en tâche de fond et surveille le port GPIO : quand il détecte un appui sur le bouton il exécute le shutdown
      cordialement
      François

      Répondre
  15. Mickaeël

    Bonjour, ayant récemment découvert cette incroyable invention qu’est cette carte programmable, j’ai récemment passé commande pour me monter une machine retrogaming. Depuis je farfouille a droite à gauche sur le net pour trouver le max d’infos. Je souhaite du coup, intégrer un bouton de mise en marche sur le boitier (un switch qui traine d’une ancienne fabrication d’un stick arcade). Je ne souhaite pas me servir de ce bouton pour éteindre la machine (j’ai bien compris que cette action pouvait endommager la carte mini SD), j’utiliserai donc la fonction « éteindre » de Recalbox (logiciel que je compte installer sur le RPI) pour une extinction propre. Ma question est donc : ce bouton peut t-il simplement servir a allumer la console? Il ne s’agit pas d’un reset étant donné que la machine est éteinte (ou bien est elle en « sommeil » et dans ce cas là l’appui sur le bouton est a proscrire?)

    Dernière question, est t-il possible (en plus de ce bouton installé sur l’emplacement RUN), d’alimenter une LED via le GPIO (histoire d’avoir un indicateur de mise sous tension, quelque chose de simple, sans programmation)

    Je ne sais pas si je suis très clair lol

    Merci d’avance pour vos réponses

    Répondre
    1. François MOCQ Auteur de l’article

      Bonjour
      oui… c’est à peu près clair 🙂
      la fonction « éteindre » comme le « shutdown » arrêtent proprement le système mais la carte reste sous tension.
      plus d’infos ici https://github.com/recalbox/recalbox-os/wiki/Ajouter-un-bouton-on-off-a-votre-recalbox-(FR)
      je n’utilise pas recalbox mais si le bouton connecté au GPIO reste actif pour remettre en route recalbox, recalbox doit s’arrêter mais pas le système… sinon on ne pourrait pas redémarrer en appuyant sur un bouton connecté à un GPIO.
      un bouton connecté sur « RUN » permet de resetter le Raspberry ou de l’arrêter si celui ci a été mis en veille (processeur sur « halt » par un shutdown)
      Si vous connectez une LED à un GPIO il faudra un bout de programme pour l’allumer le GPIO est en entrée par défaut au démarrage…
      peut être qu’un utilisateur de recalbox pourra vous en dire plus…
      cordialement
      François

      Répondre

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Complétez ce captcha SVP *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.