Go Down

Topic: RFID RC522 Communication Failure?? (Read 2924 times) previous topic - next topic

xaxa9ztb

Hi Guys.
I am student from Vietnam
I received a RFID Module from my friend. I have used RFID from link: https://github.com/miguelbalboa/rfid
I have complied and download a example from this libary. I tried with DumpInfo.
But It said that: Communication Failure?



I use Arduino Mega.

here is pinout:
RST------------5
SS-------------53
SCK------------52
MOSI----------51
MISO----------50






I changed SS and RST Configure follow this:
Code: [Select]
#define RST_PIN 5 //
#define SS_PIN 53 //

Here is my full code:
Code: [Select]
/*
 * ----------------------------------------------------------------------------
 * This is a MFRC522 library example; see https://github.com/miguelbalboa/rfid
 * for further details and other examples.
 *
 * NOTE: The library file MFRC522.h has a lot of useful info. Please read it.
 *
 * Released into the public domain.
 * ----------------------------------------------------------------------------
 * Example sketch/program showing how to read data from a PICC (that is: a RFID
 * Tag or Card) using a MFRC522 based RFID Reader on the Arduino SPI interface.
 *
 * When the Arduino and the MFRC522 module are connected (see the pin layout
 * below), load this sketch into Arduino IDE then verify/compile and upload it.
 * To see the output: use Tools, Serial Monitor of the IDE (hit Ctrl+Shft+M).
 * When you present a PICC (that is: a RFID Tag or Card) at reading distance
 * of the MFRC522 Reader/PCD, the serial output will show the ID/UID, type and
 * any data blocks it can read. Note: you may see "Timeout in communication"
 * messages when removing the PICC from reading distance too early.
 *
 * If your reader supports it, this sketch/program will read all the PICCs
 * presented (that is: multiple tag reading). So if you stack two or more
 * PICCs on top of each other and present them to the reader, it will first
 * output all details of the first and then the next PICC. Note that this
 * may take some time as all data blocks are dumped, so keep the PICCs at
 * reading distance until complete.
 *
 * Typical pin layout used:
 * -----------------------------------------------------------------------------------------
 *             MFRC522      Arduino       Arduino   Arduino    Arduino          Arduino
 *             Reader/PCD   Uno           Mega      Nano v3    Leonardo/Micro   Pro Micro
 * Signal      Pin          Pin           Pin       Pin        Pin              Pin
 * -----------------------------------------------------------------------------------------
 * RST/Reset   RST          9             5         D9         RESET/ICSP-5     RST
 * SPI SS      SDA(SS)      10            53        D10        10               10
 * SPI MOSI    MOSI         11 / ICSP-4   51        D11        ICSP-4           16
 * SPI MISO    MISO         12 / ICSP-1   50        D12        ICSP-1           14
 * SPI SCK     SCK          13 / ICSP-3   52        D13        ICSP-3           15
 */

#include <SPI.h>
#include <MFRC522.h>

#define RST_PIN 5 //
#define SS_PIN 53 //

MFRC522 mfrc522(SS_PIN, RST_PIN); // Create MFRC522 instance

void setup() {
Serial.begin(9600); // Initialize serial communications with the PC
while (!Serial);                // Do nothing if no serial port is opened (added for Arduinos based on ATMEGA32U4)
SPI.begin(); // Init SPI bus
mfrc522.PCD_Init(); // Init MFRC522
ShowReaderDetails(); // Show details of PCD - MFRC522 Card Reader details
Serial.println("Scan PICC to see UID, type, and data blocks...");
}

void loop() {
// Look for new cards
if ( ! mfrc522.PICC_IsNewCardPresent()) {
return;
}

// Select one of the cards
if ( ! mfrc522.PICC_ReadCardSerial()) {
return;
}

// Dump debug info about the card; PICC_HaltA() is automatically called
mfrc522.PICC_DumpToSerial(&(mfrc522.uid));
}

void ShowReaderDetails() {
// Get the MFRC522 software version
byte v = mfrc522.PCD_ReadRegister(mfrc522.VersionReg);
Serial.print("MFRC522 Software Version: 0x");
Serial.print(v, HEX);
if (v == 0x91)
Serial.print(" = v1.0");
else if (v == 0x92)
Serial.print(" = v2.0");
else
Serial.print(" (unknown)");
Serial.println("");
// When 0x00 or 0xFF is returned, communication probably failed
if ((v == 0x00) || (v == 0xFF)) {
Serial.println("WARNING: Communication failure, is the MFRC522 properly connected?");
}
}


what wrong? Please tell me!
Thanks for reading


xaxa9ztb


Carrera

Hello!

Please try this code:
note the pinMode(SS_PIN, OUTPUT);

void setup() {
        pinMode(SS_PIN, OUTPUT);
   Serial.begin(9600);      // Initialize serial communications with the PC
   while (!Serial);      // Do nothing if no serial port is opened (added for Arduinos based on ATMEGA32U4)
   SPI.begin();         // Init SPI bus
   mfrc522.PCD_Init();      // Init MFRC522
   ShowReaderDetails();   // Show details of PCD - MFRC522 Card Reader details
   Serial.println(F("Scan PICC to see UID, type, and data blocks..."));
}


Good luck!

Carrera

Maaz_Khurram

I am having the exact same problem :/

Maaz_Khurram

Hello!

Please try this code:
note the pinMode(SS_PIN, OUTPUT);

void setup() {
        pinMode(SS_PIN, OUTPUT);
   Serial.begin(9600);      // Initialize serial communications with the PC
   while (!Serial);      // Do nothing if no serial port is opened (added for Arduinos based on ATMEGA32U4)
   SPI.begin();         // Init SPI bus
   mfrc522.PCD_Init();      // Init MFRC522
   ShowReaderDetails();   // Show details of PCD - MFRC522 Card Reader details
   Serial.println(F("Scan PICC to see UID, type, and data blocks..."));
}


Good luck!

Carrera
I got this error after including the SPI.h and MFRC522 libraries and setting the SS pin to 10 (as I am using Arduino UNO):

Arduino: 1.6.5 (Mac OS X), Board: "Arduino Uno"

sketch_sep25b.ino: In function 'void setup()':
sketch_sep25b:10: error: 'mfrc522' was not declared in this scope
sketch_sep25b:11: error: 'ShowReaderDetails' was not declared in this scope
'mfrc522' was not declared in this scope

  This report would have more information with
  "Show verbose output during compilation"
  enabled in File > Preferences.

Could it be a library installation issue?




Michela_

Hi guys!

I have the same issue...and search a lot about a solution.

Then I finnaly decided to soldering the contacts in to reader...

So, after this, I got success!


thethanga1

do you have solve this problem @xaxa9ztb

jinanou

i have the same problem, i don't know how to solve it plz give me a help

omkar787898

I had a same issue, Is just a proper connection problem, Just solder the given bug strips to RC522 module and connect it. Enjoy with it  :)

Go Up
 


Please enter a valid email to subscribe

Confirm your email address

We need to confirm your email address.
To complete the subscription, please click the link in the email we just sent you.

Thank you for subscribing!

Arduino
via Egeo 16
Torino, 10131
Italy