/* Voltaat learn (http://learn.voltaat.com) Link for full tutorial: RFID reader library: Tutorial: Getting card ID using RFID reader It's important to be aware that the RFID reader module runs on 3.3V, not 5V. Therefore, it should be connected to the 3.3V pin. Connections from the RFID reader to the Arduino: • RFID 3.3V pin → Arduino VCC (3.3V) pin • RFID RST pin → Arduino pin 9 • RFID GND pin → Arduino GND pin • RFID IRQ pin → unconnected • RFID MISO pin → Arduino pin 12 • RFID MOSI pin → Arduino pin 11 • RFID SCK pin → Arduino pin 13 • RFID SDA pin → Arduino pin 10 */ #include "MFRC522.h" // Include the MFRC522 RFID library #define SS_PIN 10 // Define the SS pin for the RFID reader #define RST_PIN 9 // Define the RST pin for the RFID reader MFRC522 rfid(SS_PIN, RST_PIN); // Create an MFRC522 instance void setup() { Serial.begin(9600); // Initialize serial communication SPI.begin(); // Initialize SPI rfid.PCD_Init(); // Initialize RFID reader Serial.println("RFID Reader Initialized"); Serial.println("Please approximate your card to the RFID reader..."); } void loop() { // Check for new RFID cards if (rfid.PICC_IsNewCardPresent() && rfid.PICC_ReadCardSerial()) { // Get the card UID String cardUID = ""; for (byte i = 0; i < rfid.uid.size; i++) { cardUID += String(rfid.uid.uidByte[i], HEX); if (i < rfid.uid.size - 1) { // Add space between bytes except for the last byte cardUID += " "; } } Serial.print("Card ID: "); Serial.println(cardUID); rfid.PICC_HaltA(); // Halt the card rfid.PCD_StopCrypto1(); // Stop encryption on the card } }