Multi tag read with SparkFun Simultaneous RFID Reader - M6E

In our application we want to read all tags present at a certain point in time. The tags will be stationary, not moving. At the appropriate time we’ll do a read and we wish to detect all the tags present. Is this possible?

I am experimenting with this with an Arduino. I am basically using the Example1_Constant_Read. I have 5 tags in range and they are stationary just sitting there. When I put the nano into nano.startReading(), it only detects a single tag. If I move the tags then it reads more of them. I find that if I slowly move the tags around the field it eventually picks up all of them.

Is it possible to detect all tags present if they are stationary? Am I missing something? I thought I read somewhere something about how the nano operates in this mode, that it has memory of tags detected - but I cannot find anything about this. Any ideas appreciated.

Thanks

Mike

Upon further experimentation I find that if I use higher power i.e. nano.setReadPower(n) then the nano reads more of the tags. When I set the power up to near max nano.setReadPower(2500) it reads 4 of 5 tags present while the tags are stationary, just sitting there in the RF field. But still it seems that in order to reliably read all the tags they have to be moving within the RF field. When they are sitting in a fixed position the reader doesn’t see all of them, reliably.

As I read about RFID applications it seems that most involve the tags being moved through the RF field and the readers pick them up that way, while they’re moving through the field. Are there applications where the antenna and tags are basically fixed, static just sitting there? This is what we’re trying to do. We need to reliably read all the tags present at one point in time, then a few minutes later we read again and read all the tags present. We need to detect if/when tags have been added or removed, reliably over a few minutes. Is this possible? Thanks.

The orientation of the tags to the reader can cause some tags to not read.

You might need to have multiple readers with antennas in different orientations to catch everything in view.

The Sparkfun library is not supporting all the features of Nano reader. It would not fit in memory. The (much) larger MercuryAPI from Jadak(Thingmagic) which is available in C, C## and Java does. However you need to connect to a PC given the size. In the MercuryAPI you can enable Gen2 feature to tell a tag NOT to respond again for some small time during the current session. That will enable other tags to be detected as well. It can also set freqeuncy hopping which might help.