I am trying to read Memory Bank data from tags, and there are no exceptions, but the Operation Status returns "ACCESS_TAG_MEMORY_OVERRUN_ERROR"
This happens with every tag now, while the official SKD RFID Zebra Application has a timeout error, when trying to read, when it previously didn't, so I wonder if my reader didn't break. I'm at a loss. The documentation explains absolutely nothing about what these errors mean, and there are next to no resources on RFID coding.
public String readTag(String tagID){
String tagId = tagID;
TagAccess tagAccess = new TagAccess();
TagAccess.ReadAccessParams readAccessParams = tagAccess.new ReadAccessParams();
readAccessParams.setCount(4);
readAccessParams.setMemoryBank(MEMORY_BANK.MEMORY_BANK_USER);
readAccessParams.setOffset(0);
try {
TagData tagData = reader.Actions.TagAccess.readWait(tagId, readAccessParams, null);
System.out.println("OPERATION STATUS ---> " + tagData.getOpStatus());
return tagData.getMemoryBankData();
} catch (InvalidUsageException e) {
System.out.println("INVALID USAGE EXCEPTION ---> " + e.getInfo());
e.printStackTrace();
return "";
} catch (OperationFailureException e) {
System.out.println("INVALID USAGE EXCEPTION ---> " + e.getResults());
e.printStackTrace();
return "";
}
}
Despite that being the Read method, I'm not entirely sure it's at fault here, as it's copy-pasted from the Zebra guide at http://techdocs.zebra.com/dcs/rfid/android/2-15/tutorials/readaccess/ , but I'm at a loss. It just keeps returning "null" (despite the fact that I know it has data) and giving me "ACCESS_TAG_MEMORY_OVERRUN_ERROR" as the Status. Just knowing what it means would point me enough in the right direction. As it is, I can only guess blindly, and it's very frustrating. Thank you.