Interfacing RC522 RFID Module and Arduino UNO

RFID technology is used everywhere today — from office access cards and contactless payments to inventory management and smart automation systems. If you want to explore RFID with Arduino, the RC522 RFID reader module is one of the best beginner-friendly options available.

In this project, we will interface the RC522 RFID module with an Arduino UNO and display RFID card information on a 16Ă—2 I2C LCD. This simple setup is a great introduction to SPI communication and wireless identification systems.

What is RC522 RFID Module?

The RC522 is a low-cost RFID reader/writer module based on the MFRC522 IC from NXP. It works at 13.56 MHz and supports communication with RFID cards and key fobs compatible with the ISO/IEC 14443 Type A standard.

The module supports multiple communication interfaces including:

  • SPI
  • I2C
  • UART

However, SPI is the most commonly used interface with Arduino because it offers stable and fast communication.

RC522 RFID Module Hardware Overview

The module includes the MFRC522 RFID controller IC and an onboard PCB antenna used for transmitting and receiving radio frequency signals.

Additional onboard circuitry improves communication reliability and signal stability. The reader usually works within a short distance of around 3–5 cm, depending on the RFID tag quality.

One important thing to remember is that the RC522 operates at 3.3V. Connecting it directly to 5V may damage the module.

RC522 RFID Module Pinout

The RC522 provides several pins for different communication modes. In this project, we use SPI communication with Arduino UNO.

  • VCC → Power input (3.3V)
  • GND → Ground
  • RST → Reset pin
  • SCK → SPI clock pin
  • MOSI → Data from Arduino to RC522
  • MISO → Data from RC522 to Arduino
  • SS/SDA → Slave Select pin
  • IRQ → Interrupt output (optional)

Understanding these pins is useful when troubleshooting communication issues or designing custom PCBs later.

Project Working

When an RFID card is placed near the RC522 module, the reader detects the tag and reads its UID (Unique Identifier).

The Arduino UNO communicates with the RC522 using SPI protocol and processes the received RFID data. The UID is then displayed on the I2C LCD screen.

This basic RFID setup demonstrates how wireless identification systems work in practical embedded applications.

Components Required

  • Arduino UNO
  • RC522 RFID Reader Module
  • RFID Card or Keychain Tag
  • 16Ă—2 I2C LCD Display
  • Jumper Wires
  • USB Cable

Interfacing RC522 RFID Module with Arduino

RC522 to Arduino Connections

Connect the module using SPI pins:

  • SS → D10
  • SCK → D13
  • MOSI → D11
  • MISO → D12
  • RST → D9
  • VCC → 3.3V
  • GND → GND

The IRQ pin is not required for this project.

Connecting the I2C LCD

The I2C LCD requires only four wires:

  • VCC → 5V
  • GND → GND
  • SDA → A4
  • SCL → A5

Most I2C LCD modules use the default address 0x27.

Required Arduino Libraries

Install the following libraries from the Arduino IDE Library Manager:

  • MFRC522 Library
  • LiquidCrystal_I2C Library

These libraries simplify RFID communication and LCD control.

Testing the Project

After uploading the Arduino code:

  1. Power the Arduino UNO
  2. Bring the RFID card near the RC522 reader
  3. Wait for the UID to appear on the LCD display

If everything is connected correctly, the module will instantly detect the RFID tag.

Final Thoughts

The RC522 RFID module is an excellent starting point for learning RFID technology and embedded system communication. It is affordable, simple to use, and suitable for both educational and real-world automation projects.

For the complete code, detailed explanations, and additional project insights, visit the original tutorial from Play with Circuit.

License
All Rights
Reserved
licensBg
0