Arduino and NFC

  • Does anyone have any advice as to compatible arduino NFC shields?

  • I don't know if this is any help, but I couldn't open the PDF from your link so went looking for the software elsewhere.

    The files in this listing compile ok for me, still don't have one to check though...

  • I'd be interested if anyone has tested nfc modules (not a shield). I have a PN532 module from iteadstudio, haven't been able to test with my ring yet.

  • Community Helper

    G'day there. I've got a few modules on order from various chinese re-sellers, so I'll be able to weigh in on this once they actually arrive and I've been able to have a bit of a play.
    In the meantime, if anyone else has used a good module with their rings then let us know!

    When ordering, make sure you don't get an old style rfid unit at the wrong frequency. The one you want is 13.56MHz.

  • @Lokki

    G'day there. I've got a few modules on order from various chinese re-sellers, so I'll be able to weigh in on this once they actually arrive and I've been able to have a bit of a play.

    Good info, the itead module is the correct frequency. Looking forward to your results. Hopefully I will get my itead up and running again soon.

  • What so we think of this one?

    Seems to tick a few boxes but would it be compatible with the rings?

  • @HoodedClaw

    What so we think of this one?

    I actually considered buying one of those before I ended up on the itead. I ended up getting mine for less with free 2day through amazon prime, 25 usd each.
    I've only used spi with my itead, not i2c, but i suppose you could break it out to spi if necessary.
    I think the only limiting factor would be the antenna design, basically someone will need to test it to find out.

    It wouldn't surprise me to find out this is one of the modules lokki bought.

  • Community Helper

    lol, yep. That's one of the modules I bought - I'm going to see how well it fits into a 2-way microphone, assuming it works.

  • Ok I think I'll get one of those at the end of the month. I know we're all pretty much guessing as to ring compatibility but hopefully it is.

  • Community Helper

    Yeah until we get a good number of people playing around with various different types of module and shield we'll be running pretty much blind. But we'll get there!

  • Unfortunate news on my front. No luck getting the itead pn532 to read my ring :(

    /e my only two thoughts:

    Support issue?
    What kind of chip is in these rings?

    Antenna issue?
    Anyone know where I can get an nfc antenna with one of those mini coaxial connections?
    I suppose I could attempt to surface mount a cellphone nfc antenna, I see quite a few of those around.

    found a couple antenna's, nothing coaxial yet:
    3 options here: [url:1gpi40ad][/url:1gpi40ad]
    Thanks to one of Lokki's posts: [url:1gpi40ad][/url:1gpi40ad]

    Any thoughts on designing a pcb antenna specifically for the rings? I don't know much about.... nfc antenna theory?

  • yes, I think you hit it on the nose, it is looking for mifare. Now my question is, would that be a firmware issue, or something I could solve in it's arduino lib?

    Works with my other tags that I have lying around, I believe they are all mifare.

  • Community Helper

    G'day mate, that's interesting news - are you able to verify it working with a standard tag? Did they send you any in the kit?
    The rings are an NTAG203 chip from NXP. They do conform to the appropriate standards, so once you're set up to read NFC they should work.
    A lot of the ebay listings send out mifare style tags that don't actually conform to the standard.

    So I'm less inclined to think it's an antenna issue and am leaning more towards it being an issue with how it is reading the tags and how it's dealing with the information in them - it may be that it's set up for the mifare style cards and isn't getting what it expects from the NTAG203.

  • Community Helper

    Are you able to see a raw output of what is being read through the serial monitor? That would be useful in helping figure out exactly which point you're getting to before it borks itself.

    Adafruit has a reasonable tutorial which while being for different gear should be fairly re-usable as communication is via SPI:

    There's an NTAG203 info dumper here for PN532 boards:

  • Community Helper

    lol, cool. What code are you using to read the tags with?
    Also that's a pain - if they're NTAG203 as well, try finding a sweet spot with the ring. You might need to orient it a certain way and possibly slowly move it through the field in order to trigger the read. It may also not be directly on the board, it might be a couple mm above it in a certain area. I encountered this with the iCarte when I pulled it apart (it uses the same kind of pcb antenna) - reading worked best slightly above the board.

  • actually, just scanned my other tags with my phone, they are ntag203, same as ring :/ so it would appear it's not a problem with scanning ntag.

    that is the tutorial i used when i was getting it setup the first time months ago :P

  • Community Helper

    Ah yep, saw that. What are you actually using to read the code after the reader unit though?

  • the lib itead supplied

    looks like a generic lib from adafruit

    // PN532 library by adafruit/ladyada
    // MIT license
    /* authenticateBlock, readMemoryBlock, writeMemoryBlock contributed  */
    /* by Seeed Technology Inc (										 */
    /* Modified history:                                                 */
    /* Nov 5,2012 modified by Frankie.Chu at Seeed.                      */
    /*   Add some program comments of some key functions;                */
    /*	 Modified the basic interface functions spiwrite() and spiread() */
    /*     to be write() and read(),and they will call the functions of  */
    /*     class SPIClass but not to simulate timing of SPI;             */
    /*	 Rename all of the functions to be like the abAbAb;              */
    /*   Modified the constructor of PN532 class;                        */

  • @Lokki

    Ah yep, saw that. What are you actually using to read the code after the reader unit though?
    what do you mean?

    just tried the spi lib straight from adafruit's github, same thing. works fine with my other tags but nothing on the ring.
    I've put the ring in just about every conceivable position. If there was a sweetspot i feel i would have found it by now.

    turned on debugging in the lib, its not picking up anything from the ring, doesn't seem to be an issue with the lib as far as i can tell

  • Community Helper

    Ok, maybe I'm looking at the wrong reader unit here - the one I'm seeing is an all-in-one reader which outputs to another device via SPI. That device is an Arduino? I'm wondering what code you're running on that.