Le Raspberry Pi ne comporte pas de bouton « reset » – ni d’ailleurs aucun autre bouton – et la plupart du temps on le redémarre soit logiciellement (en utilisant la commande reboot
par exemple) soit électriquement en le débranchant puis le rebranchant.
Il est pourtant pratique de disposer d’un bouton de réinitialisation hard lors de développement de modules kernel susceptibles de geler le système en cas d’erreur ou si des tâches temps réel se mettent à boucler frénétiquement.
Pour cela, il est facile d’ajouter un petit bouton poussoir en le soudant. Le contact doit être ouvert au repos et fermé lorsqu’on presse le bouton. Les deux bornes du bouton doivent être reliée aux deux connecteurs notés P6 à côté du connecteur HDMI.
Il peut également être utile de contrôler le reset depuis un autre système, par exemple pour chronométrer (et réduire) le temps de boot comme je le fais actuellement (article à venir…).
Pour réinitialiser le Raspberry Pi depuis un autre poste, il faut appliquer une tension nulle sur la broche de P6 la plus proche du bord de la carte (celle dont la pastille de soudure est rectangulaire), puis la remonter à +3.3V.
Attention, la réinitialisation par ce biais se fait comme si l’on coupait l’alimentation. Elle ne garantit pas l’écriture des données encore en cache ni le démontage des systèmes de fichiers. On ne l’utilisera donc qu’exceptionnellement si le système contient des partitions de la carte SD montées en lecture-écriture.
[ Ajout en août 2014 ] Sur le Raspberry Pi modèle B+, les connecteurs sont bien présents, mais leur position a été modifiée. Ils se trouvent désormais à côté du connecteur d’extension P1.
Quels risques y a t’il à souder des fils à cet endroit ?
Pas de problème, c’est prévu pour, mais il faut quand même s’appliquer et avoir une panne de fer assez fine.
On peut utiliser ce moyen pour créer un bouton « power off » du coup ?
Je suppose oui, mais attention, le processeur doit quand même consommer de l’énergie.
J’ai vraiment besoin de votre aide, voici le souci
dans le cadre de réalisation d’un projet purement pédagogique, il m’est demander de gérer l’aspect temps réel de différentes taches d’un système embarqué pour scooter électrique(capteur de vitesse, centrale inertielle et moteur pas a pas pour le guidon qui sont lié a un FPGA ce dernier lié a un Raspberry PI et c’est a l’aide de raspian que je dois gérer l’ordonnancement des taches sachant que le Rasp gere aussi directement,t un capteur GPS