MFRC522 RFID Reader

A 13.56 MHz contactless RFID reader/writer module built on NXP's MFRC522 IC, reading and writing ISO/IEC 14443A MIFARE cards over a 3.3V SPI bus.

MFRC522 RFID Reader: 13.56MHz RFID · SPI

What is the MFRC522 RFID Reader?

The RC522 mounts NXP's MFRC522 contactless reader IC on a small breakout with an etched PCB antenna. It operates at 13.56 MHz and both reads and writes ISO/IEC 14443A transponders, including MIFARE Classic 1K and 4K, MIFARE Ultralight, and NTAG cards and key fobs. A microcontroller drives it over SPI at clock rates up to 10 Mbit/s.

In reader mode the module generates the 13.56 MHz RF field through its onboard antenna, powers the passive card inductively, and exchanges data at rates up to 848 kbit/s. Typical read and write range is up to about 50 mm and varies with antenna tuning and card type. For MIFARE Classic cards, the MFRC522 handles the CRYPTO1 authentication needed to unlock protected sectors before reading or writing block data.

The MFRC522 chip itself also supports I2C and UART, but this module breaks out only the SPI pins plus a reset (RST) line and an interrupt (IRQ) line. It runs from a 3.3V supply and expects 3.3V logic, so pair it with a 3.3V board directly or add level shifting when connecting to a 5V microcontroller.

MFRC522 RFID Reader pinout

PinFunctionType
SDA SDA / SSSPI CSDigital input
SCK SCKSPI SCKDigital input
MOSI MOSISPI MOSIDigital input
MISO MISOSPI MISODigital output
IRQ IRQDigital interruptDigital output
GND GNDPowerPower in
RST RSTDigital resetDigital input
3V3 3.3VPowerPower in

Specifications

Operating voltage
3.3 V (max 3.6 V)
Interface
SPI
Dimensions
39.7 × 59.9 × 3.8 mm

Verified from the Tinkered component library · SunFounder.

Circuit requirements

  • Power the module from 3.3V only. The MFRC522 is rated to 3.6V maximum, so never connect the supply pin to a 5V rail.
  • The pin silkscreened SDA is the SPI chip select (SS), not an I2C data line. Wire SDA, SCK, MOSI, and MISO to your microcontroller's SPI bus and RST to any free GPIO.
  • Module inputs (SCK, MOSI, SDA/SS, RST) are 3.3V logic; driving them from a 5V board exceeds the IC's ratings, so use a level shifter for reliable, in-spec operation. The MISO output is 3.3V and can be read directly by a 5V input.
  • The IRQ pin is an optional active-low interrupt output; most Arduino libraries poll for cards and leave it unconnected.
  • The 13.56 MHz field comes from the etched PCB antenna. Mounting the board flat against metal or stacking multiple cards detunes the antenna and shortens range.

Board compatibility

The MFRC522 RFID Reader connects to any of the microcontrollers supported in Tinkered. Mind the 3.3 V logic level on 3.3 V boards.

Simulate the MFRC522 RFID Reader in your browser

The MFRC522 RFID Reader is fully simulated in Tinkered. Wire it into a circuit, write your firmware, and read real values back with no physical hardware. Test your logic before you touch a breadboard.

Open it in the simulator

Common MFRC522 RFID Reader mistakes

Powering it from 5V

The board and the MFRC522 IC run on 3.3V, with a 3.6V absolute maximum. Connecting the supply pin to a 5V rail can permanently damage the module.

Driving 3.3V pins with 5V logic

SCK, MOSI, SDA/SS, and RST are 3.3V inputs. Wiring them straight to a 5V Arduino pushes the pins past their rated voltage. Add a level shifter on those lines for dependable, in-spec operation.

Mistaking SDA for an I2C pin

The pin labeled SDA is the SPI slave-select line, not I2C data. It must connect to the SS pin declared in your sketch, and the SS number in code has to match the wiring.

Leaving RST unwired

Most RC522 libraries require a reset pin in the constructor. Skipping it, or leaving RST floating, prevents the chip from initializing and no cards are detected.

Placing the antenna against metal

Metal surfaces and closely stacked cards detune the 13.56 MHz antenna and can cut range to near zero. Keep the PCB antenna clear of metal and present one card at a time.

MFRC522 RFID Reader datasheet

Official MFRC522 RFID Reader datasheetSunFounder

Popular MFRC522 RFID Reader projects

RFID door lock

Tap-to-enter access control that releases a solenoid or drives a servo when an authorized card or key fob is scanned.

Attendance logger

Record each person's card UID with a timestamp to an SD card or the serial monitor for classroom or workshop sign-in.

Cashless vending prototype

Deduct a stored balance from a MIFARE card to dispense an item, demonstrating the basics of contactless payment.

Asset and inventory tracking

Scan tagged tools or parts in and out to keep a running record of what has left the shelf.

RFID learning kit

Read card UIDs to trigger LEDs, sounds, or LCD messages, a common first project for understanding NFC-style tags.

Build with the MFRC522 RFID Reader.

Drop the MFRC522 RFID Reader into a circuit, write firmware, and simulate it in your browser, then deploy to real hardware. All in one editable Tinkered project.