100% found this document useful (1 vote)
65 views7 pages

Keyes - Rfid Development Kit

The Keyes RFID RC522 Development Kit allows for the development of RFID applications using NXP's MFRC522 chip. The kit works with ISO/IEC 14443A cards and operates at 13.56MHz. It has a range of up to 5cm and supports Mifare 1 cards. The kit can be connected to an Arduino via SPI and used with the RFID library to read card information and display it in the serial monitor.

Uploaded by

LucaDelbarba
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (1 vote)
65 views7 pages

Keyes - Rfid Development Kit

The Keyes RFID RC522 Development Kit allows for the development of RFID applications using NXP's MFRC522 chip. The kit works with ISO/IEC 14443A cards and operates at 13.56MHz. It has a range of up to 5cm and supports Mifare 1 cards. The kit can be connected to an Arduino via SPI and used with the RFID library to read card information and display it in the serial monitor.

Uploaded by

LucaDelbarba
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 7

Keyes RFID RC522 Development Kit (Rev 1)

General Description

Keyes RFID RC522 Development Kit is a low cost and easy to use module suitable for equipment
and advanced applications development that needs RFID application. RFID stands for Radio-Frequency
Identification. The acronym refers to small electronic devices that consist of a small chip and an
antenna. The chip typically is capable of carrying 2,000 bytes of data or less.

The module uses NXP’s MFRC522 which is a highly integrated reader/writer IC for contactless
communication at 13.56MHz. The MFRC522 reader supports ISO/IEC 14443 A/MIFARE mode. The
MFRC522’s internal transmitter is able to drive a reader/writer antenna designed to communicate with
ISO/IEC 14443 A/MIFARE cards and transponders without additional active circuitry. The receiver
module provides a robust and efficient implementation for demodulating and decoding signals from
ISO/IEC 14443 A/MIFARE compatible cards and transponders. The digital module manages the complete
ISO/IEC 14443 A-framing and error detection (parity and CRC) functionality.

Page 1 of 7 pages
Specifications

 Module Name: MFRC522


 Working current: 13—26mA/ DC 3.3V
 Standby current: 10-13mA/ DC 3.3V
 Working frequency: 13.56MHz
 Card reading distance: 0-50mm(RFID card), 0-30mm (RFID Key)
 Protocol: SPI
 Data communication Speed: Maximum 10Mbit/s
 Card types supported: Mifare1 S20, Mifare1 S50, Mifare1 S70
 Dimension: 40mm×60mm
 Working temperature: -25—80 degree
 Max SPI speed: 10Mbit/s

Schematic

Page 2 of 7 pages
Using the module
You need:
Arduino
Keyes RFID-RC522 Module
Wire Connectors
Breadboard
1. Connect the Keyes RFID-RC522 Module to your arduino by following the pin connections
shown below.

2. Enter this sketch to your Arduino IDE then click upload. You can also find this at RFID library
examples. This program will read and display the RFID of the RFID enabled device into your
Serial Monitor.
#include <SPI.h>
#include <RFID.h>

#define SS_PIN 10
#define RST_PIN 9

RFID rfid(SS_PIN, RST_PIN);

// Setup variables:
int serNum0;
int serNum1;
int serNum2;
int serNum3;
int serNum4;

Page 3 of 7 pages
void setup()
{
Serial.begin(9600);
SPI.begin();
rfid.init();

void loop()
{

if (rfid.isCard()) {
if (rfid.readCardSerial()) {
if (rfid.serNum[0] != serNum0
&& rfid.serNum[1] != serNum1
&& rfid.serNum[2] != serNum2
&& rfid.serNum[3] != serNum3
&& rfid.serNum[4] != serNum4
) {
/* With a new cardnumber, show it. */
Serial.println(" ");
Serial.println("Card found");
serNum0 = rfid.serNum[0];
serNum1 = rfid.serNum[1];
serNum2 = rfid.serNum[2];
serNum3 = rfid.serNum[3];
serNum4 = rfid.serNum[4];

//Serial.println(" ");
Serial.println("Cardnumber:");
Serial.print("Dec: ");
Serial.print(rfid.serNum[0],DEC);
Serial.print(", ");
Serial.print(rfid.serNum[1],DEC);
Serial.print(", ");
Serial.print(rfid.serNum[2],DEC);
Serial.print(", ");
Serial.print(rfid.serNum[3],DEC);
Serial.print(", ");
Serial.print(rfid.serNum[4],DEC);
Serial.println(" ");

Serial.print("Hex: ");
Serial.print(rfid.serNum[0],HEX);
Serial.print(", ");
Serial.print(rfid.serNum[1],HEX);
Serial.print(", ");
Serial.print(rfid.serNum[2],HEX);
Serial.print(", ");
Serial.print(rfid.serNum[3],HEX);
Serial.print(", ");
Serial.print(rfid.serNum[4],HEX);
Serial.println(" ");
} else {
/* If we have the same ID, just write a dot. */

Page 4 of 7 pages
Serial.print(".");
}
}
}

rfid.halt();
}

3. Now place the RFID card or RFID key near the module.
Results

Actual Setup

Page 5 of 7 pages
Sample Program
You already know the RFID tag of your card and key. So let’s put a message on it. This might
be easy but when you think of its application it’s quite broad.

#include <SPI.h>
#include <RFID.h>

#define SS_PIN 10
#define RST_PIN 9

RFID rfid(SS_PIN, RST_PIN);

// Setup variables:
int serNum0;
int serNum1;
int serNum2;
int serNum3;
int serNum4;
String yourName;

void setup()
{
Serial.begin(9600);
SPI.begin();
rfid.init();

void loop(){
if (rfid.isCard()) {
if (rfid.readCardSerial()) {
if (rfid.serNum[0] != serNum0
&& rfid.serNum[1] != serNum1
&& rfid.serNum[2] != serNum2
&& rfid.serNum[3] != serNum3
&& rfid.serNum[4] != serNum4
) {
/* With a new cardnumber, show it. */
Serial.println(" ");
Serial.println("Card found");
serNum0 = rfid.serNum[0];
serNum1 = rfid.serNum[1];
serNum2 = rfid.serNum[2];
serNum3 = rfid.serNum[3];
serNum4 = rfid.serNum[4];

yourName = String(serNum0)+String(serNum1)+String
(serNum2)+String(serNum3)+String(serNum4);
if (yourName == "68233591482"){
Serial.println("Hi Phillip!!!");
}
if (yourName == "183524753243"){
Serial.println("Good Day Boss!");

Page 6 of 7 pages
}
if (yourName == "282162018588"){
Serial.println("You can now make your own
project! have fun");
}

Serial.println("Cardnumber:");
Serial.print("Dec: ");
Serial.print(rfid.serNum[0],DEC);
Serial.print(", ");
Serial.print(rfid.serNum[1],DEC);
Serial.print(", ");
Serial.print(rfid.serNum[2],DEC);
Serial.print(", ");
Serial.print(rfid.serNum[3],DEC);
Serial.print(", ");
Serial.print(rfid.serNum[4],DEC);
Serial.println(" ");
}
else {
/* If we have the same ID, just write a dot. */
Serial.print(".");
}
}
}
rfid.halt();
}

Result

Page 7 of 7 pages

You might also like