This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TRF7970A: Working with multiple antennas/reader/mcus

Part Number: TRF7970A
Other Parts Discussed in Thread: MSP430F5529, , ENERGIA, TRF7962A

Hello,

I was looking for a pointer in the right direction please. I have been playing with an MSP430F5529 Launchpad and 7970 Boosterpack in order to establish if the RFID technology was the right path for my technology and it seems to be able to do what i want in principle.

My questions are in the scaling up of this for my application:

1. I potentially will have minimum 24 sensing areas (antenna). What's the best way to handle this many antenna? Multiplexing antenna? Multiple 7970 transceivers? Multiple MCUs? Robustness vs cost etc

2. Each antenna could potentially have up to 24 HF 13.56Mhz passive tags in range at one time (possible but not always likely). Could a collision protocol allow this in order to tell me exactly which tage are there at any time? or would I have to split the antenna areas up to more but smaller antenna?

I'm sure I have more questions but some help on these points could get me going in some kind of direction. (even if the direction is back to the drawing board!)

Jason

  • Hello Jason,

    We have a couple app notes on antenna multiplexing which you can look at:

    This is our newer one which uses the TRF7970A and MSP430F5529 as well: http://www.ti.com/lit/an/sloa231/sloa231.pdf

    • This one covers a 2 antenna use case but can be extrapolated out for more.

    This is an older version that was done with the TRF7960AEVM: http://www.ti.com/lit/an/sloa167/sloa167.pdf

    • This one covers a 16 antenna use case, so it might give you some good ideas on how to do your 24 antenna setup.

    I would read both and leverage their combined information.

    Regarding anticollision, it is possible for collision protocols to handle this. For example, ISO15693 tags have an excellent anticollision process which can identify many tags. However I will warn that 24 is still a lot of tags. How large do you think the antenna will be? Are you planning output a lot of power (more than the 200mW of the TRF7970A)? How large will the tags be?

    Also, do you just need to get tag UIDs or do you need to get block data as well? If yes to block data, how much?

  • Thanks for the reply, those documents are helpful.

    I haven't got too far into antenna design too far yet, ideally my antenna could be 6" long and 1" wide perhaps.

    I can't answer your question about power yet as i'm too early in the design process. However could I get around this by simply using a couple more Transceivers and reducing antenna numbers on each one? 3 Transceivers each with 8 antenna for example? What is the best MCU for me to use? I'm using the MSP430 launchpad and dlp7970 purely because of library and example and ease of use for playing with the idea i have. Real world including potential production would be an entirely different ball game.

    If i had to I guess i could simply read the UIDs, however this would require me to apply attributes to those somewhere in code in order to differentiate what type of object is giving me that UID?

    I'm surprised to see that nobody has created a library for the TRF7970 for Energia? or have I just not found it. In order for me to use the NFClink library in CCS I would have to use the TI compiler which i currently don't have and think i'd run out of skill if i tried to port that to the GCC or Energia myself?

    Aside from all this, is multiplexing antenna the right way to go? instead of multiplying the number of transceivers? thinking about potential PCB location and routing in my application.

    Is the TRF7970 the best ic to use? my use of the RFID would be simple. I would only ever read passive tags, and if as you said 15693 gives me the best collision detection then the other protocols on 7970 are no use to me are they?
  • Hello Jason,

    "I can't answer your question about power yet as i'm too early in the design process. However could I get around this by simply using a couple more Transceivers and reducing antenna numbers on each one? 3 Transceivers each with 8 antenna for example?"

    • Perhaps I misunderstood you earlier so lets make sure we are on the same page about what caused me to bring up the power aspect:
      • You mentioned in the original post that up to 24 tags may be presented at one time. Is this figure for a SINGLE antenna, or spread across the network for antennas? If the latter, what would be the most tags you'd expect presented to a single antenna?

    "What is the best MCU for me to use? "

    • The MSP430F5529 probably is a bit overkill for this application to be honest, but depending on many muxes you need, you will need an MCU with sufficient GPIO to handle that, so be mindful of that.

    "If i had to I guess i could simply read the UIDs, however this would require me to apply attributes to those somewhere in code in order to differentiate what type of object is giving me that UID?"

    • If you need to differentiate objects, unless you have a full Look Up Table for specific UIDs, you'd need to store some data in the tag. ISO15693 has a block data format, so it wouldn't be hard to store a few blocks of data (each block is typically 4 bytes of data) to help identify the tag.
    • The UID in this application would be used so you can send addressed commands to a specific tag and get a reply from it, so you can go around and in a controlled  order read data from every tag in your RF field

    "I'm surprised to see that nobody has created a library for the TRF7970 for Energia? or have I just not found it. In order for me to use the NFClink library in CCS I would have to use the TI compiler which i currently don't have and think i'd run out of skill if i tried to port that to the GCC or Energia myself?"

    • Yeah we don't have an Energia example at this time, it's a bit tricky to do the NFC stuff in Energia because it was never designed with Energia in mind, and so we haven't got around to that.
    • For your use case actually, you will want anticollision, and that is not featured in the code which runs on the MSP430F5529. However, we have a low resource RFID reader/writer example that includes full anticollision support for ISO15693 which I think is more suited to what you are trying to do and should be easier to work with as well:

    "Aside from all this, is multiplexing antenna the right way to go? instead of multiplying the number of transceivers?"

    • Multiplexing will be cheaper, the only way I'd see needing more transceivers is if from a speed standpoint you need to read tags faster than you can while toggling through the 24 antennas.

    "Is the TRF7970 the best ic to use? my use of the RFID would be simple. I would only ever read passive tags, and if as you said 15693 gives me the best collision detection then the other protocols on 7970 are no use to me are they?"

    • The TRF7970A is what you should START with for evaluation, as that is where we have our hardware and collateral available. However, for ISO15693 only applications, you can use the TRF7962A which only support ISO15693.
      • The TRF7962A would require some small change from a firmware level, as it has a smaller FIFO, a few different registers, and there is a little errata deal with the SPI polarity that needs to be address (just toggling the polarity between read and write operations)
      • If you think you'll want to use the 62A, I can provide some software (based on the sloc297 example above) for you to work with that would let you toggle between 70A and the 6xA devices with a single change. Let me know.

  • So the truth is somewhere in between, it's actually a maximum of 15 tags per antenna with an antenna size of 6" long, 1" wide. (guesstimate size for now).

    I will read into the multiplexing applications more for inspiration thanks.

    I will order the G2 launchpad as I don't have one of those at the minute.

    By low resource example are you suggesting that it could build using the code limited size of the TI compiler?

    If you could give me some software that would be easier to work with between different rfid devices that would be brilliant thanks a lot.

    Thanks,

    Jason
  • Hi Jason,

    Okay, and how big would the tags be that are on that antenna? Understanding how many tags may overlap with each other and at what distances that may be would help to see if you may run into any issues there, though really it will end up being something you need to trial and error in the end - just want to try and give some initial advice.

    Yes the low resource example can be loaded and built using the free CCS!

    I'll send you an E2E friend request for the software, as it isn't ready for public release yet.