RC-522 RFID Only works well with keychain tags. Not with card tags.

Hi guys,

I have a problem reading card tags using the RC-522 RFID reader connected to an Arduino.

It reads the blue keychain tag perfectly. However, none of the cards are recognised. Sometimes it helps to bend the card a little. It then manages to read the UID and maybe the first sector before losing connection again.

My Nexus 5 reads them both perfectly without any bending.

Every card works only after bending and every keychain tag works perfectly always.

I tried ordering a new batch of card tags (from a different seller). Same problem. So it looks like the problem lies with the RC522. But I also tried another unit (I have 5) and it has the same problem.

Any ideas? Thanks in advance!


Found the problem. For future searches:

I was powering the RC522 from the 3.3v coming from my FTDI adapter, just like the Arduino Pro Mini 3.3v.

I tried connecting the RC522 separately to a 4.2V lithium battery (livin’ on the edge, I know). Suddenly it would read the cards just as easly as the keychain tags. I guess it just wasn’t getting enough power from the FTDI chip Vcc to get a reaction from the card.

Could it be that because the antenna/coil on the card is bigger (in diameter) than the keychain tag, more induction is needed from the RC522 to power it up? And that’s why it worked fine with keychains but not with cards on “FTDI” power?

As the chip's PVDD takes 40mA and this is on the limit the 3V3 can supply you are always on the edge anyway, so any slight variation in load will tip you over the edge, so yes it is likely.