RFID Toys Homepage
Holy crap, check out the Dangerous Things store!
Forum Home Forum Home > Projects and such > Reader Projects
  New Posts New Posts RSS Feed - LabView project
  FAQ FAQ  Forum Search   Events   Register Register  Login Login

LabView project

 Post Reply Post Reply
Author
Message
phate82 View Drop Down
Newbie
Newbie


Joined: 10 December 2011
Status: Offline
Points: 4
Post Options Post Options   Thanks (0) Thanks(0)   Quote phate82 Quote  Post ReplyReply Direct Link To This Post Topic: LabView project
    Posted: 10 December 2011 at 10:27am
Good morning to all.

I'm creating an application in labview for controlling an RFID reader. The RFID reader that I'm using is the Impinj Speedway R420, while the tags are simple near field tags. The objective of this application is the calculation of the position of various RFID tags based on the RSSI. First of all I'd like the reader to send to the algorithm that calculates the position only one reading for each tag and for each antenna per second. I try to explain the results obtained so far.

My application has an outer infinite while loop (that I can stop with the exit button), in which there is an event structure that intercepts the click of the various buttons of the application. The two main buttons are: the start button that enables the TCP connection with the reader and that adds the rospec, and the inventory button that enables the rospec. After pressing the start button the application can, of course, receive the responses to the "delete rospec" and to the "add rospec" messages, and is able to request and receive the configuration of the reader. By the press of the inventory button, the reader is able to receive packets related to the "reader event notifications" and to the readings of detected tags.
As mentioned earlier, my goal is to have, for each second, a single reading of each tag for each antenna. For example:

- id_tag 3 id_antenna 5 time 10sec
- id_tag 3 id_antenna 3 time 10sec
- id_tag 2 id_antenna 4 time 10sec
- id_tag 6 id_antenna 2 time 11sec
- id_tag 7 id_antenna 2 time 11sec
etc. ..

To achieve this result with only two tags, I tried to set the rospec properly. I set the parameter "AISpecStopTriggerType" to "observation Tags", while the parameter "TriggerType" to "Upon seeing N tags observations, or timeout." I set N to 2 and the timeout to 1000msec. Finally, I set the parameter "ROReportTrigger" to "Upon N TagReportData Parameters or End of ROSpec" and N = 2. With this configuration, if an antenna reads two tags, it correctly displays a single reading for each tag, per second. But if I bring near the antenna only one tag, the application displays two readings of the same tag, per second. How do I properly set rospec?
Thank you and sorry for the length of the post (and for my english).

P.S. I saw that my reader implements LLRP Protocol version 1.0.1. In version 1.1, I saw some triggers that seem to be most appropriate to my goal. Could I do a firmware upgrade to take advantage of the new protocol version?
Back to Top
amal View Drop Down
Admin Group
Admin Group
Avatar

Joined: 22 November 2005
Location: United States
Status: Offline
Points: 2060
Post Options Post Options   Thanks (0) Thanks(0)   Quote amal Quote  Post ReplyReply Direct Link To This Post Posted: 10 December 2011 at 10:34am
Welcome to the forum!

Unfortunately I'm not very familiar with Impinj readers, even though I do have a Speedway sitting in my garage. My first thought would be to reduce N to 1 and get readings for all tags and do event filtering on the application side. If you have concerns over bandwidth or processing limitations on the application side, you might contact Impinj support. I also see a firmware download section on their site, so I imagine you could update the firmware of your reader. Access to the support portal and forums is secured so you will have to fill out a form and ask for an account.
Amal ;)
www.amal.net
Back to Top
phate82 View Drop Down
Newbie
Newbie


Joined: 10 December 2011
Status: Offline
Points: 4
Post Options Post Options   Thanks (0) Thanks(0)   Quote phate82 Quote  Post ReplyReply Direct Link To This Post Posted: 10 December 2011 at 11:35am
Thanks for the quick response and for the welcome!

I also thought of setting N to 1, leaving the timeout to 1000ms. Unfortunately, in this way,
the reader makes only a single reading of one tag every second. If I bring two tags near antenna, the application displays, every second, only one of the two tags (not always the same, probably the one who won the contention). If I don't choose any stop trigger by setting the parameter "AISpecStopTriggerType" and the timeout to "null", the application displays the reading with too high frequency, making difficult an application side filtering. In version 1.1 of the LLRP protocol it is possible to set the "TriggerType" parameter to "Upon seeing N UNIQUE tags observations, or timeout.". I think this would be a solution. In your opinion, by updating the firmware of the reader can I automatically get the new version of LLRP Protocol?

Thanks again for
your help.
Back to Top
amal View Drop Down
Admin Group
Admin Group
Avatar

Joined: 22 November 2005
Location: United States
Status: Offline
Points: 2060
Post Options Post Options   Thanks (0) Thanks(0)   Quote amal Quote  Post ReplyReply Direct Link To This Post Posted: 10 December 2011 at 11:41am
Ahh I see, so N is a way of limiting the number of tags IDs to return, but not necessarily unique tag IDs (some could be duplicates)... so if you specified N = 5 and had two tags in the field, you might get;

TAG1
TAG1
TAG2
TAG2
TAG1

Given that situation, it sounds like you may need to set N to a higher number and do de-duplication inside your app.

I believe if you find a firmware release for your reader that includes a newer version of LLRP, then I would definitely update your reader device. It sounds like the new TriggerType is just what you're looking for. I would contact Impinj to find out for sure if you can upgrade the firmware in your device and get a new version of the LLRP that supports the TriggerType you're looking for. I've found their support people to be very helpful, and I've even visited their Seattle office once. They also gave me a great tour of the R&D lab.



Edited by amal - 10 December 2011 at 11:42am
Amal ;)
www.amal.net
Back to Top
phate82 View Drop Down
Newbie
Newbie


Joined: 10 December 2011
Status: Offline
Points: 4
Post Options Post Options   Thanks (0) Thanks(0)   Quote phate82 Quote  Post ReplyReply Direct Link To This Post Posted: 12 December 2011 at 6:59am
Great! You have fully understood the problem!

I contacted the Impinj to ask if I get the new version of the LLRP protocol
by updating the firmware. I also asked for an account, but I have not received any response yet. I found an updated version of the firmware on a Chinese website, but I'd rather wait for a response from Impinj to be sure I can install a really official firmware.
Back to Top
phate82 View Drop Down
Newbie
Newbie


Joined: 10 December 2011
Status: Offline
Points: 4
Post Options Post Options   Thanks (0) Thanks(0)   Quote phate82 Quote  Post ReplyReply Direct Link To This Post Posted: 13 December 2011 at 3:24pm
Everything is fine.
Impinj contacted me. You were right, they are very helpful and they are supporting the resolution of my problem.
Thank you so much for your help!! Wink
Back to Top
amal View Drop Down
Admin Group
Admin Group
Avatar

Joined: 22 November 2005
Location: United States
Status: Offline
Points: 2060
Post Options Post Options   Thanks (0) Thanks(0)   Quote amal Quote  Post ReplyReply Direct Link To This Post Posted: 13 December 2011 at 6:25pm
Great! Glad to help :)
Amal ;)
www.amal.net
Back to Top
 Post Reply Post Reply
  Share Topic   

Forum Jump Forum Permissions View Drop Down



This page was generated in 0.125 seconds.