Team, Customer is going to use XR480 in standalone mode e.g. the application runs on the XR itself. This is a conveyor-like application where tags should be read immediately re-programmed with the different information. The software developer facing the following issues: 1. If they use on-demand read mode the read cycle ( RFID_ReadTagInventory call) lasts several seconds - they claim it's around 7 secs even with the minimum inner and outer loop values. As the tag inventory call locks the application while reading they have to wait until it finishes before starting to write and this interval is not acceptable for their app. 2. In autonomous mode the read speed is obviously fine but they have to switch to on-demand mode in order to write otherwise the app hangs when attempting to write - and this also takes ~4 secs which is unacceptable as well. They tried to use a separate thread for writing but the app return "engine busy" error when the write thread tries to set the write mask. 3. They tried to use on-demand with tag read event handler as desribed in the XR C API doc hoping that they would be able to process tags from thr resad queue before tag inventory cycle finishes - but claim that while they're able to catch the event still they're unable to figure out what tag has been actually read (TYPE_TAG or TYPE TAG_EX structures remain empty) Now questions part: 1. What is the minimum interval for RFID_ReadTagInventory or RFID_ReadTagInventoryEX calls and how to achieve this minimum? Can RFID_GetTagID be used instead? Is it faster? 2. Is it possible to write tags while remaining in autonomous mode? If not - why it takes so long to switch to ondemand mode? 3. Is it possible and what is the right way (sample would be great) to use tag event handler in ondemand mode to extract tags from the read queue and program them in a separate thread without waiting for ReadTagInventory to finish? Thanks, Valery
XR480 programming question |
3 Replies
Hi Prashant,
Yes absolutely - they're open. What else can be used for embedded XR480 application? Regards, Valery
Valery, Based on your questions, I recommend the following two approaches: BYTE STREAM - - Use an embedded .Net based Bytestream application to read tags. The XR reader already has .Net CF 2.0 built into it. And it would be as simple as dropping an application on the device - Use the Gen2 read commands (0x51h) to read the tags in a continuous loop.. - When your tag matches the one you want to write tags using the Gen2 write command (0x52h) The details can be found in the XR-Software Interface Guide. HTTP/XML - A simple notification based model can be set up that is local to the reader. - When the tag is seen, we can issue the appropriate write command. The details can be found in the XR-Software Interface Guide. As far as a sample is concerned, we can modify an existing sample. But it will take a few days and we may be able to provide sample mid-next week. Let me know if you have any questions. Thank you, Prashant
Valery, I would recommend the customer not to use the C API. - Is the customer open to alternate suggestions? Thank you, Prashant