« Écran Adafruit 2.8 pouces TFT » : différence entre les versions
Aller à la navigation
Aller à la recherche
mAucun résumé des modifications |
mAucun résumé des modifications |
||
| Ligne 66 : | Ligne 66 : | ||
sudo i2cget -y 1 0x38 0x02 | sudo i2cget -y 1 0x38 0x02 | ||
</syntaxhighlight> | </syntaxhighlight> | ||
= Utilisation des 4 boutons physiques = | = Utilisation des 4 boutons physiques = | ||
| Ligne 91 : | Ligne 86 : | ||
* Crée un périphérique <code>/dev/input/eventX</code> géré par le noyau | * Crée un périphérique <code>/dev/input/eventX</code> géré par le noyau | ||
== Codes clavier utilisés == | == Codes clavier utilisés == | ||
{| class="wikitable" ! Touche simulée !! Code Linux !! GPIO utilisé |- | 1 || 2 (KEY_1) || GPIO 17 |- | 2 || 3 (KEY_2) || GPIO 22 |- | 3 || 4 (KEY_3) || GPIO 23 |- | 4 || 5 (KEY_4) || GPIO 27 |} | {| class="wikitable" | ||
! Touche simulée !! Code Linux !! GPIO utilisé | |||
|- | |||
| 1 || 2 (KEY_1) || GPIO 17 | |||
|- | |||
| 2 || 3 (KEY_2) || GPIO 22 | |||
|- | |||
| 3 || 4 (KEY_3) || GPIO 23 | |||
|- | |||
| 4 || 5 (KEY_4) || GPIO 27 | |||
|} | |||
== Test == Lancer : | |||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
sudo evtest | sudo evtest | ||
Version du 11 octobre 2025 à 00:01
Installation du PiTFT capacitif Adafruit sur Raspberry Pi
Présentation
Ce module PiTFT 2.8" d’Adafruit combine :
- Un écran TFT ILI9341 (320×240)
- Un contrôleur tactile capacitif FT5x06 ou FT6206
- Une interface GPIO directe pour Raspberry Pi B+, Pi 2, Pi 3
Préparation du système
- OS recommandé : Raspberry Pi OS Lite ou Desktop
- Mise à jour :
sudo apt update && sudo apt full-upgrade
Activation du tactile capacitif
Ajouter dans /boot/firmware/config.txt :
dtoverlay=pitft28-capacitive,rotate=90,speed=64000000,fps=30,drm
Si besoin de GPIO personnalisés :
dtoverlay=pitft28-capacitive,touch-reset=5,touch-int=17
Ruse HDMI pour éviter la perte de framebuffer
Sans écran HDMI, le Pi peut désactiver /dev/fb0. Pour forcer sa création :
hdmi_force_hotplug=1
hdmi_group=2
hdmi_mode=87
hdmi_cvt=320 240 60 1 0 0 0
Tests post-installation
- Vérifier le périphérique tactile :
cat /proc/bus/input/devices
dmesg | grep ft5
sudo evtest /dev/input/eventX
- Vérifier l’affichage :
sudo cat /dev/urandom > /dev/fb0
Reboot
sudo reboot
Dépannage
GPIO bloqués
Utiliser gpiod pour tester :
gpioset gpiochip0 5=1
gpioget gpiochip0 5
FT5x06 actif mais dalle muette
- Vérifier la nappe tactile
- Tester le registre 0x02 via I²C :
sudo i2cget -y 1 0x38 0x02
Utilisation des 4 boutons physiques
Objectif
Utiliser les 4 boutons physiques à gauche de l’écran Adafruit PiTFT comme des touches clavier virtuelles : `1`, `2`, `3`, `4`.
Matériel
- Raspberry Pi avec écran Adafruit PiTFT 2.8" capacitif
- Boutons connectés aux GPIO : 17, 22, 23, 27
Méthode
Ajouter les lignes suivantes dans /boot/firmware/config.txt :
dtoverlay=gpio-key,gpio=17,keycode=2,label="BTN1" # KEY_1
dtoverlay=gpio-key,gpio=22,keycode=3,label="BTN2" # KEY_2
dtoverlay=gpio-key,gpio=23,keycode=4,label="BTN3" # KEY_3
dtoverlay=gpio-key,gpio=27,keycode=5,label="BTN4" # KEY_4
Explication Chaque ligne:
- Configure le GPIO en entrée avec pull-up
- Associe un
keycodeLinux standard - Crée un périphérique
/dev/input/eventXgéré par le noyau
Codes clavier utilisés
| Touche simulée | Code Linux | GPIO utilisé |
|---|---|---|
| 1 | 2 (KEY_1) | GPIO 17 |
| 2 | 3 (KEY_2) | GPIO 22 |
| 3 | 4 (KEY_3) | GPIO 23 |
| 4 | 5 (KEY_4) | GPIO 27 |
== Test == Lancer :
sudo evtest
→ Appuyer sur les boutons : chaque pression génère un événement EV_KEY correspondant à la touche simulée.
Utilisation dans un script
Exemple en shell :
read -n1 key
case "$key" in
1) echo "Bouton 1 pressé" ;;
2) echo "Bouton 2 pressé" ;;
3) echo "Bouton 3 pressé" ;;
4) echo "Bouton 4 pressé" ;;
esac