I am new to the world of RFID encoding, and I have trouble finding the cause of a lack of reliability when writing to tags using the Symbol.RFID3.Host API (v 22.214.171.124) and the FX9600 Reader.
To give you guys context, basically, we want to demonstrate that encoded tags can take punishment through one section of our production lines and still be readable after, and for that, we need a few hundred tags encoded with data close to what we would encode in a real scenario.
For each tag, we want a unique value encoded in the EPC memory bank (12 bytes), and another value in the USER memory bank (34 bytes).
I thought it would be a fairly simple task, but I found out the write operations would fail most often than not, especially for the longer value in the USER bank. To ensure it wasn’t my code at fault, I tested the same writes using an unmodified version of the Host_Sample2 application, and got similar results (at best, 2 writes out of 3 succeed, but it’s often way worse, seamingly at random). The most common error messages that I catch are those :
“Tag not found in the field”
“C1G2WriteOpSpecResult failed: The Tag has insufficient power to perform the operation“
Tag not found in the field is weird since I read the tag before trying to write on it. As for the insufficient power to perform the operation, I don’t know what I can do about it. I think the reader is already set at full power, and the tags are laying right on top of the antenna we use.
To write on each tag, I’m currently targetting them individually using an AccessFilter based on the TID. This bit seems to work just fine.
I’ve tried several approaches, using WriteWait(), PerformSequence() and WriteEvent(), with the same results.
Do you guys have any idea of what could cause so many failures when writing ?
Any help would be greatly appreciated !