ESP32 S3 - RFID/NFC
Apprenez à connecter un module lecteur RFID/NFC RC522 à un ESP32 S3 et à lire l'identifiant unique (UID) de tout tag RFID ou NFC compatible. Ce tutoriel vous guide à travers tout, du câblage du matériel au téléversement du sketch final, afin que vous puissiez identifier des cartes et des tags avec votre ESP32 S3 en quelques minutes seulement.
Ce que vous allez construire :
- Un circuit connectant le module RFID-RC522 à l'ESP32 S3 via SPI
- Un firmware qui détecte la présence d'un tag RFID ou NFC et lit son UID
- Une sortie du Serial Monitor qui affiche le type de tag et l'UID au format hexadécimal
- Une base que vous pouvez étendre en systèmes de contrôle d'accès, suivi d'inventaire et projets de serrures intelligentes

Matériel requis
Ou vous pouvez acheter les kits suivants:
| 1 | × | Kit de Démarrage DIYables ESP32 S3 (ESP32 S3 inclus) | |
| 1 | × | Kit de Capteurs DIYables (18 capteurs/écrans) |
À propos du module RFID-RC522
Le RFID-RC522 est un module lecteur RFID 13,56 MHz à faible coût basé sur la puce MFRC522 de NXP Semiconductors. Il communique avec l'ESP32 S3 via SPI et peut détecter et lire des cartes et tags compatibles ISO 14443A — y compris la populaire famille de cartes MIFARE — à des distances allant jusqu'à environ 5 cm. Le module fonctionne en logique 3,3 V, ce qui le rend directement compatible avec l'ESP32 S3 sans circuit d'adaptation de niveau.
Caractéristiques principales
- Fréquence de fonctionnement : 13,56 MHz
- Interface de communication : SPI (par défaut), I2C, UART
- Tension de fonctionnement : 3,3 V (ne connectez pas VCC à 5 V)
- Portée de lecture : jusqu'à ~5 cm (selon le tag et l'orientation de l'antenne)
- Types de tags pris en charge : MIFARE 1KB, MIFARE Ultralight, MIFARE Classic, et autres cartes ISO 14443A
- Dimensions : environ 40 mm × 60 mm
Brochage

Le module RFID-RC522 possède 8 broches, dont certaines sont partagées entre trois interfaces de communication : SPI, I2C et UART. Un seul mode de communication peut être actif à la fois. Les broches sont :
- GND : Connectez à GND (0 V)
- VCC : Connectez à 3,3 V — ne connectez jamais à 5 V
- RST : Contrôle de réinitialisation et de mise hors tension — lorsqu'elle est tirée à l'état bas, la mise hors tension matérielle est activée ; le module se réinitialise sur le front montant
- IRQ : Sortie d'interruption — alerte l'ESP32 S3 lorsqu'un tag RFID entre dans la portée de détection (non utilisée dans ce tutoriel)
- MISO / SCL / TX : Sert de MISO (SPI), SCL (I2C), ou TX (UART) selon l'interface active
- MOSI : Ligne de données MOSI lorsque le SPI est activé
- SCK : Horloge série lorsque le SPI est activé
- SS / SDA / RX : Sert de SS (SPI), SDA (I2C), ou RX (UART) selon l'interface active
※ Note:
- L'ordre des broches peut varier selon les fabricants. Utilisez toujours les étiquettes imprimées sur le module lui-même. L'image ci-dessus montre le brochage des modules du fabricant DIYables.
- Le module RFID-RC522 fonctionne en 3,3 V. Connecter la broche VCC à 5 V endommagera définitivement le module.
- Ce tutoriel utilise l'interface SPI pour la communication entre l'ESP32 S3 et le module RFID-RC522.
Schéma de câblage
Connecter le module RFID-RC522 à l'ESP32 S3 ne nécessite que quelques fils de câblage car le module utilise le bus SPI matériel. Gardez tous les fils courts pour réduire le bruit sur les lignes SPI et vérifiez bien chaque connexion avant de mettre la carte sous tension.

Cette image a été créée avec Fritzing. Cliquez pour agrandir l'image.
Notes de sécurité
Le module RFID-RC522 fonctionne en logique 3,3 V — connecter sa broche VCC au rail 5 V détruira immédiatement le module, donc vérifiez toujours votre connexion d'alimentation avant de mettre sous tension. La broche IRQ est laissée non connectée dans ce tutoriel, ce qui est normal ; laissez-la simplement flottante si votre faisceau de câblage n'a pas de fil qui lui est assigné. Comme le bus SPI de l'ESP32 S3 fonctionne en 3,3 V, aucune résistance d'adaptation de niveau n'est nécessaire entre le module et la carte.
| Module RFID/NFC RC522 | Broche ESP32 S3 |
|---|---|
| Broche SS | GPIO10 (SS/CS) |
| Broche SCK | GPIO12 (SCK) |
| Broche MOSI | GPIO11 (MOSI) |
| Broche MISO | GPIO13 (MISO) |
| Broche IRQ (non connectée) | |
| Broche GND | GND |
| Broche RST | GPIO39 |
| Broche VCC | 3.3V |
Code ESP32 S3 RFID/NFC
Le code suivant initialise le bus SPI et la bibliothèque MFRC522, puis interroge en continu la présence d'un nouveau tag. Lorsqu'un tag est détecté, il lit le type de tag et l'UID, affiche les deux sur le Serial Monitor au format hexadécimal, puis met la carte en pause afin que le prochain contact soit traité comme une nouvelle lecture.
Étapes rapides
- Nouveau sur ESP32 S3 ? Terminez d'abord notre guide ESP32 S3 - Premiers pas.
- Câblez le circuit : Connectez le module RFID-RC522 à l'ESP32 S3 selon le schéma de câblage ci-dessus.
- Connectez à l'ordinateur : Branchez l'ESP32 S3 à votre ordinateur à l'aide d'un câble USB Type-C.
- Ouvrez l'Arduino IDE : Lancez l'Arduino IDE sur votre ordinateur.
- Sélectionnez votre carte : Choisissez ESP32 S3 dans le sélecteur de carte et sélectionnez le bon port COM.
- Installez la bibliothèque MFRC522 : Cliquez sur l'icône Libraries dans la barre latérale gauche de l'Arduino IDE.
- Recherchez la bibliothèque : Tapez "MFRC522" dans la zone de recherche, puis recherchez la bibliothèque de GithubCommunity.
- Installez : Cliquez sur le bouton Install pour installer la bibliothèque MFRC522.
- Search for MFRC522 created by GithubCommunity and click the Install button.
- Téléversez le code : Copiez le code ci-dessus, collez-le dans l'Arduino IDE, et cliquez sur le bouton Upload.
- Ouvrez le Serial Monitor : Ouvrez le Serial Monitor dans l'Arduino IDE après le téléversement.

- Testez le lecteur : Approchez plusieurs tags RFID ou NFC du module RC522.
- Consultez la sortie : Observez le type de tag et l'UID apparaître dans le Serial Monitor.
- Astuce pro : Tenez chaque tag à plat et parallèle à la bobine d'antenne du RC522 à une distance de 1 à 3 cm pour des lectures les plus fiables possibles.
Sortie du moniteur série
Ouvrez le Serial Monitor à 9600 bauds après avoir téléversé le code, puis approchez des tags RFID ou NFC du module RC522 pour voir leur type et leur UID affichés à chaque scan.
Applications et idées de projets
L'ESP32 S3 associé à un module RFID RC522 ouvre la voie à une large gamme d'applications d'identification et de contrôle d'accès qui peuvent être déployées avec un minimum de matériel supplémentaire. Voici des façons pratiques de mettre ce circuit au travail :
- Système de contrôle d'accès : Accordez ou refusez l'entrée en comparant un UID scanné à une liste stockée de cartes autorisées.
- Suivi de présence : Enregistrez chaque scan RFID avec un horodatage via Wi-Fi vers une feuille de calcul ou une base de données cloud pour des registres de présence automatisés.
- Casier intelligent : Associez à une serrure à solénoïde ou un servo pour créer un casier sans clé qui ne s'ouvre que pour les tags enregistrés.
- Gestion d'inventaire : Étiquetez des articles avec des autocollants RFID et scannez-les avec l'ESP32 S3 pour automatiser le comptage des stocks.
- Suivi de livres de bibliothèque : Fixez des tags RFID aux livres et suivez les emprunts et retours sans scan de code-barres manuel.
- Identification d'animaux ou de biens : Lisez les puces RFID passives intégrées dans les animaux ou les équipements pour une identification automatique à un point de contrôle.
- Contrôleur de jeu ou de casse-tête : Utilisez des jetons RFID comme entrées physiques dans des escape rooms, des chasses au trésor, ou des installations interactives.
Tutoriel vidéo
Regardez le tutoriel vidéo étape par étape pour ce projet ESP32 S3 ci-dessous.
Défiez-vous
Maintenant que votre ESP32 S3 lit avec succès les UID des tags RFID et NFC, poussez le projet plus loin avec ces défis progressivement plus difficiles :
- Débutant : Stockez un UID connu dans le sketch et affichez « Access Granted » ou « Access Denied » selon que le tag scanné correspond ou non.
- Débutant : Ajoutez un indicateur LED qui devient vert pour un tag autorisé et rouge pour un tag non autorisé.
- Intermédiaire : Connectez un buzzer et jouez une courte tonalité à chaque scan réussi, avec une tonalité différente pour les tags non autorisés.
- Intermédiaire : Enregistrez chaque UID scanné avec un horodatage sur une carte Micro SD pour un historique persistant.
- Avancé : Construisez un panneau d'administration web utilisant le Wi-Fi de l'ESP32 S3 pour ajouter et supprimer des UID autorisés en temps réel sans reflasher le firmware.
- Avancé : Combinez le lecteur RC522 avec une serrure à solénoïde et un clavier afin que la porte ne s'ouvre que lorsque la bonne carte RFID et un code PIN sont présentés ensemble.