Référence des GPIO et broches
Quelles broches GPIO (BCM) utilisent le MuPiHAT, le bouton marche/arrêt, le ventilateur, les LED, les boutons et l'encodeur, lesquelles sont libres et leurs interactions.
De nombreuses fonctions de MuPiBox dépendent du connecteur GPIO à 40 broches du Raspberry Pi. Cette page récapitule les broches occupées et les précautions à prendre pour brancher vos propres boutons.
Numéro BCM ou numéro de broche ?
L'administration attend toujours des numéros BCM (le numéro GPIO de la puce, p. ex. « GPIO 17 »), pas le numéro physique de la broche sur le connecteur. Le GPIO 17, par exemple, se trouve sur la broche physique 11. Le tableau donne les deux.
Broches occupées
| BCM | Broche | Occupée par | Remarque |
|---|---|---|---|
| 2 (SDA) | 3 | I²C – puce de charge du MuPiHAT | bus 1, adresse 0x6B, 50 kHz |
| 3 (SCL) | 5 | I²C – puce de charge du MuPiHAT | ne pas utiliser pour des boutons quand le MuPiHAT est actif |
| 4 | 7 | coupure d'alimentation du MuPiHAT (gpio-poweroff) | coupe le courant après l'arrêt |
| 17 | 11 | bouton marche/arrêt du MuPiHAT (gpio-shutdown) | touche noyau KEY_POWER, voir veille |
| 12 | 32 | Ventilateur (par défaut) | PWM matériel possible (PWM0) |
| 13 | 33 | LED de fonctionnement (MuPiHAT+ J15, par défaut) | PWM matériel possible (PWM1) |
| 16 | 36 | amplificateur MAX98357A du MuPiHAT SD_MODE | uniquement avec l'audio MuPiHAT |
| 18 | 12 | I²S BCLK (audio MuPiHAT) | uniquement avec l'audio MuPiHAT |
| 19 | 35 | I²S LRCLK (audio MuPiHAT) | uniquement avec l'audio MuPiHAT |
| 21 | 40 | I²S DATA (audio MuPiHAT) | uniquement avec l'audio MuPiHAT |
Sans MuPiHAT, seules les broches que vous indiquez vous-même pour le ventilateur, la LED, les boutons ou l'encodeur sont occupées.
Broches libres conseillées
Pour les boutons et l'encodeur avec un MuPiHAT, BCM 5, 6, 22, 23, 24, 25, 26 et 27 conviennent bien (broches physiques 29, 31, 15, 16, 18, 22, 37, 13). Évitez BCM 7–11 si vous utilisez des périphériques SPI et BCM 14/15 si la console série est active.
Écrans, RFID et Bluetooth
- Les écrans DSI (écran tactile officiel, Waveshare DSI) n'utilisent aucune broche GPIO ; image et tactile passent par la nappe DSI.
- Les écrans HDMI avec tactile USB n'utilisent pas non plus de GPIO. Les écrans enfichés sur le connecteur GPIO (écrans SPI) ne sont pas pris en charge.
- Les lecteurs RFID se branchent en USB (USB HID ou PN532 via USB-UART), voir RFID.
- Le Bluetooth et le Wi-Fi sont intégrés ou en USB.
config.txt et overlays
Le matériel comme le MuPiHAT, le bouton marche/arrêt ou l'écran est activé au démarrage par des entrées dans /boot/firmware/config.txt (anciens systèmes : /boot/config.txt). MuPiBox n'écrit que dans son propre bloc marqué et ne modifie jamais les lignes en dehors. L'installateur du MuPiHAT, par exemple, place ses lignes sous #--------MuPiHAT-------- ; elles restent intactes.
La configuration de base du MuPiHAT est :
dtparam=i2c_arm=on
dtparam=i2c1=on
dtparam=i2c_arm_baudrate=50000
dtparam=gpio=on
dtoverlay=gpio-poweroff,gpiopin=4,active_low=1
dtoverlay=gpio-shutdown,gpio_pin=17,active_low=1,gpio_pull=up
L'audio du MuPiHAT ajoute dtoverlay=max98357a,sdmode-pin=16 et dtoverlay=i2s-mmap. L'administration détecte les entrées contradictoires et les signale comme conflit au lieu de les écraser (MuPiHAT).
Bouton marche/arrêt sans MuPiHAT
La veille nécessite un bouton que le noyau signale comme KEY_POWER. Sans MuPiHAT, vous le configurez vous-même dans config.txt, par exemple sur BCM 3 :
dtoverlay=gpio-shutdown,gpio_pin=3,active_low=1,gpio_pull=up
BCM 3 a un avantage : un appui réveille aussi le Pi de l'état arrêté (tant qu'il est alimenté). Mais BCM 3 est aussi la ligne d'horloge I²C. Avec un MuPiHAT, n'utilisez jamais BCM 3 pour le bouton : le MuPiHAT apporte déjà son bouton sur BCM 17.
La page Écran et énergie indique sous « Diagnostic du bouton marche/arrêt » quel bouton le noyau en cours a réellement chargé.
Interactions en un coup d'œil
| Si … | alors … |
|---|---|
| le MuPiHAT est actif | BCM 2, 3, 4, 17 (et avec l'audio 16, 18, 19, 21) sont occupées. |
| la veille est activée | MuPiBox lit lui-même le bouton marche/arrêt ; le noyau n'éteint plus sur un appui. |
une coupure d'alimentation (gpio-poweroff) est chargée | le matériel éteint sur un appui long ; la fonction 3 secondes de MuPiBox n'est pas proposée. |
| ventilateur et LED doivent utiliser le PWM matériel | il faut dtoverlay=pwm-2chan,pin=12,func=4,pin2=13,func2=4 ; sinon MuPiBox les commute par logiciel. |
| des boutons sont sur des broches du MuPiHAT | ni les boutons ni le MuPiHAT ne fonctionnent de façon fiable. |