Raspberry Pi: Configurazione Lettore RFID RC522
L’integrazione di un lettore RFID-RC522 con un Raspberry Pi è un progetto classico per realizzare sistemi di controllo accessi o rilevazione presenze. Sebbene l’installazione sembri semplice sulla carta, la configurazione del bus SPI e delle librerie Python può riservare qualche insidia.
In questa guida vedremo come cablare correttamente il modulo e configurare il software necessario per leggere i primi tag.
1. Materiale Necessario
Per questo progetto avrai bisogno di:
- Modulo RFID-RC522 (preferibilmente con pin già saldati).
- Raspberry Pi (testato su Pi 3 con Raspbian).
- Cavetti Jumper (F-F) per i collegamenti.
2. Collegamento Hardware (Pinout)
Il modulo comunica tramite bus SPI. Collega i pin seguendo attentamente questo schema:
| RFID-RC522 Pin | Raspberry Pi Pin | Funzione |
|---|---|---|
| SDA (NSS) | Pin 24 (GPIO8) | SPI CE0 |
| SCK | Pin 23 (GPIO11) | SPI SCLK |
| MOSI | Pin 19 (GPIO10) | SPI MOSI |
| MISO | Pin 21 (GPIO9) | SPI MISO |
| IRQ | Non collegato | - |
| GND | Pin 20 (GND) | Massa |
| RST | Pin 22 (GPIO25) | Reset |
| 3.3V (VCC) | Pin 17 (3.3V) | Alimentazione |

3. Configurazione Software
Dobbiamo abilitare l’interfaccia SPI nel sistema operativo Raspbian.
Abilitazione SPI
- Esegui
sudo raspi-config. - Vai su Advanced Options -> SPI e seleziona Yes per abilitarlo.
- Riavvia il Raspberry.
Ottimizzazione del file config.txt
Per garantire il corretto caricamento dei driver, modifica il file di boot:
sudo nano /boot/config.txt
Assicurati che siano presenti queste righe:
dtparam=spi=on
dtoverlay=spi-bcm2708
4. Installazione Librerie e Test
Ora installiamo le dipendenze Python per comunicare con il modulo.
# Aggiornamento e installazione dipendenze
sudo apt-get update
sudo apt-get install python-dev git
# Installazione libreria SPI-Py
cd ~
git clone https://github.com/lthiery/SPI-Py.git
cd SPI-Py
sudo python setup.py install
# Download dello script di test
cd ~
git clone https://github.com/mxgxw/MFRC522-python.git
Esecuzione del Test
Avvia lo script di lettura e avvicina una tessera RFID al lettore:
cd MFRC522-python/
sudo python Read.py
Se la configurazione è corretta, vedrai l’ID (UID) della carta apparire a video.