Rfid mfrc522


Closed Thread
Results 1 to 20 of 20

Thread: Rfid mfrc522

Hybrid View

  1. #1
    Join Date
    May 2013
    Location
    australia
    Posts
    2,653


    Did you find this post helpful? Yes | No

    Default Re: Rfid mfrc522

    Here's a start. it reads and writes to the mfrc522.registers using the ssp module
    I have made a demo for a 16f690 that loads up the regs [settings like in the Arduino demos ]
    and reads them back. that bit is easy
    I have not discovered how to read a card yet, the Arduino and python libs I have tried to
    digest have code that's so obscure it leave me cold .

    Arduino seems to poll CommIrqReg looking for a value of 0x45 [I think] but I have same regs set
    but the card seems to be ignored , I'm just guessing how it works the reg never changes for me

    reg printout for regs 1 to 3f
    01,20 02,80 03,00 04,15 05,00 06,00 07,21 08,00
    09,00 0A,00 0B,08 0C,10 0D,00 0E,A0 0F,00
    10,00 11,3D 12,00 13,00 14,83 15,40 16,10
    17,84 18,84 19,4D 1A,00 1B,00 1C,62 1D,00
    1E,00 1F,EB 20,00 21,FF 22,FF 23,88 24,26
    25,87 26,48 27,88 28,20 29,20 2A,8D 2B,A9
    2C,00 2D,E8 2E,00 2F,00 30,00 31,00 32,00
    33,80 34,00 35,00 36,40 37,92 38,00 39,00
    3A,00 3B,88 3C,FF 3D,00 3E,03 3F,00
    Attached Files Attached Files
    Warning I'm not a teacher

  2. #2
    Join Date
    Oct 2005
    Location
    Sweden
    Posts
    3,612


    Did you find this post helpful? Yes | No

    Default Re: Rfid mfrc522

    Yeah, what we're dealing with here is not the interface to a "RFID-reader" but to the complete "RFID-radio". I have not looked at any example code for other platforms but I would expect it to be a fairly complicated setup procedure, configuring all the registers etc - and even more so KNOWING what to configure them with. And when Richard says HE cringes when looking at the code for it I don't think I'll even bother :-)

    There are readers available implementing both the "radio" and a microcontroller giving you an interface to "just" the card and not the complete "radio" tranceiver - much easier but a bit more expensive. One example is the OEM/MIFARE ICODE board from IBTechnology (datasheet) which I've personally used with success.

  3. #3
    Join Date
    Aug 2006
    Location
    SWITZERLAND (french speaking)
    Posts
    938


    Did you find this post helpful? Yes | No

    Default lets's make it a bit more simple...

    Quote Originally Posted by richard View Post
    Here's a start.
    Thanks a lot Richard. But as you say, this is only a part of the problem...

    Since I don't need nor want to go for rocket science, I'll take Henrik's advice and find a "plug'n play" reader
    Roger

  4. #4
    Join Date
    Aug 2006
    Location
    SWITZERLAND (french speaking)
    Posts
    938


    Did you find this post helpful? Yes | No

    Default Re: Rfid mfrc522

    Quote Originally Posted by HenrikOlsson View Post
    ...the OEM/MIFARE ICODE board from IBTechnology which I've personally used with success.
    Hi Henrik,

    I received my reader from IBTechnology a few days ago and I'm still stuck with even reading a tag. I must be overseeing something basic

    Would you have snippet of code or even just some serial commands as a start for me please?
    Roger

  5. #5
    Join Date
    Oct 2005
    Location
    Sweden
    Posts
    3,612


    Did you find this post helpful? Yes | No

    Default Re: Rfid mfrc522

    I got payed to do that project so I'm afraid I can't just give the code away here.

    What have you tried? Post some code, I or someone else might see what you're doing wrong.

    As with any project, start small, get the basics going and build on it but try to think ahead.
    If you think you're going to do this without reading the datasheet back to front a couple of times - think again.

    I used SEROUT2/SERIN2 to communicate with the reader and HSEROUT/HSERIN to communicate with the PC.

    You need to poll the CTS signal of the board to know when it's able to receive commands. So these are the very basics:
    1) Wait for the CTS signal to high (board busy looking for a card)
    2) Wait for the CTS signal to go low (board ready to receive serial data from the PIC)
    3) Send the "return card status command" ($53)
    4) Receive the card status byte from the reader.

    Each bit in the Status byte indicates different things. See the datasheet!
    If, for example, bit 2 is set then there's a card "on" the reader and you can then read the Unique Identifier

    5) Wait for the CTS signal to high (board busy looking for a card)
    6) Wait for the CTS signal to go low (board ready to receive serial data from the PIC)
    7) Send the "read UID command" ($55)
    8) Recieve 8 bytes depending on card type. First byte is status then comes the UID.

    That's the basics. I highly recommend you get the first part going first. Make sure you can poll the reader and output the Status byte to the PC so you can SEE what it's doing - then move on.

    /Henrik.

  6. #6
    Join Date
    Aug 2006
    Location
    SWITZERLAND (french speaking)
    Posts
    938


    Did you find this post helpful? Yes | No

    Default Read a Tag using a USB OEM-MICODE RFID module

    Thanks Henrik,

    You need to poll the CTS signal of the board to know when it's able to receive commands. So these are the very basics:
    1) Wait for the CTS signal to high (board busy looking for a card)
    2) Wait for the CTS signal to go low (board ready to receive serial data from the PIC)
    3) Send the "return card status command" ($53)
    4) Receive the card status byte from the reader.
    ...
    Up to now, I didn't made any code for a PIC. I'm trying to make it work via the Serial Communicator from MCS before I go THE step further on.

    Since I bought the USB version of the board, I was assuming I would be able to, at least, read a Tag without any other connexion to the board. I'll have a look again what I need to do to get the CTS status.
    Roger

  7. #7
    Join Date
    Oct 2005
    Location
    Sweden
    Posts
    3,612


    Did you find this post helpful? Yes | No

    Default Re: Rfid mfrc522

    OK. I'm not 100% sure how the "PC interface" works on either the RS232 board (which is the one I have) or the USB board. But I suspect the interface is the same as the UART interface and if that's the case using the serial terminal might not be the right tool since you want to send and receive "raw" data while a terminal program such as the serial terminal is designed to send/receive ASCII. You CAN send "raw" data with it but when whatever it receives it tries to interpret as ASCII which probably won't work.

    I know there auxillary data outputs which can be re-directed to various interfaces. Perhaps you need to reconfigure those in order to get it to output data to the "PC interface".

    /Henrik.

  8. #8
    Join Date
    Mar 2003
    Location
    Commerce Michigan USA
    Posts
    1,166


    Did you find this post helpful? Yes | No

    Default Re: Rfid mfrc522

    Try using something like "LOOK232" as it can send ASCII or HEX data to your device as a packet.
    Dave Purola,
    N8NTA
    EN82fn

Similar Threads

  1. RFID with PIC
    By aloon15 in forum General
    Replies: 0
    Last Post: - 23rd September 2014, 18:33
  2. RFID Issues.... HELP !!!!!
    By andybarrett1 in forum mel PIC BASIC Pro
    Replies: 19
    Last Post: - 11th September 2014, 10:00
  3. RFID example.
    By StevenLim in forum General
    Replies: 2
    Last Post: - 8th February 2011, 09:08
  4. Rfid?
    By toalan in forum Off Topic
    Replies: 0
    Last Post: - 11th February 2005, 23:37
  5. RFid reader
    By paul farrugia in forum mel PIC BASIC Pro
    Replies: 0
    Last Post: - 14th January 2005, 20:27

Members who have read this thread : 0

You do not have permission to view the list of names.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts