how to read 24-bit TID

// Expert user has replied.
J Jun-Hua Liu 3 years ago
126 3 0

Hi team,

 

A customer is testing our RFID2 sample program of EMDK 2.4 on MC9090RFID and encountered the following issues.

 

1) When they set wordCount=5, they get a 20-bit one. When they change it to 6, they get nothing. Following is the related section.

---------------------

 

using Symbol;

 

using Symbol.RFID2;

 

using Symbol.ResourceCoordination

 

....

 

byte memBank = MemoryBank.TID;

 

ushort wordPointer = 0;

 

byte wordCount = 6;

 

Gen2Parameters gen2Params = new Gen2Parameters(Gen2ParameterSel.Ignore_SL,Gen2ParameterSession.S0, Gen2ParameterTarget.Bit_A, 6);

 

uint  accessPassword = 0;

 

TagDataLoc dataLoc = new TagDataLoc(wordPointer,wordCount, (MemoryBank)memBank);

 

 IRFIDTag[] tagsRead = deviceReader.GetTags(dataLoc0, gen2Params,accessPasswor

 

--------------------------------

 

 

Sorry, I am still waiting for the customer telling me the details about their tags.

 

2) Gen2Parameters

When writing data to EPC bank, should the Target parameter of Gen2Parameters set to Bit_A or Bit_B?

 

 

Thank you!

Junhua

Please register or login to post a reply

3 Replies

R Rui Huang

Hi JunHua Please see my answers on your questions below: 1) When they set wordCount=5, they get a 20-bit one. When they change it to 6, they get nothing. Following is the related secti The function IRFIDReader.GetTags(TagDataLoc dataLoc, Gen2Parameters gen2Params, uint accessPassword) is obsolete and should not be used. Please tell customer to use IRFIDReader.ReadTagID (Gen2ParmRead rdParms) to read data from tag's memory bank. And the code snippet about how to use this function is provided as below:
            Gen2ParmRead parameters = new Gen2ParmRead();             parameters.SessionFlag = Gen2.SessionFlag.S0;             parameters.SelectFlag = Gen2.InventorySelectFlag.Ignore_SL;             parameters.TargetFlag = Gen2.TargetFlag.Bit_A;             parameters.accPswd = Convert.ToUInt32("00000000", 16);             parameters.memBank = Gen2.MemoryBank.TID;             parameters.wordPtr = 0;   // read data from the begining of memory bank             parameters.wordCnt = 6;  // read 6 words data from memory bank             IEnumerable tags = deviceReader.ReadTagID(parameters);             foreach( IRFIDTag tag in tags)             {                    if (tag.AccessStatus == RFID_SUCCESS)                    {                         byte[] Data = tag.TagData;                         ...................                    }                    .................             } 2) Gen2Parameters When writing data to EPC bank, should the Target parameter of Gen2Parameters set to Bit_A or Bit_B? If there are no select records created for tag selection, then use Bit_A and Session 0 Please note, user should call function IRFIDReader.WriteTagID (Gen2ParmWrite WrtParms) to perform the write operation on tag Thanks! Rui

J Jun-Hua Liu

Hi Rui,

Appreciate your help!

Sorry, I have no Visual Studio license, so I cannot see the RFID samples come with EMDK 2.4. Could you recommend which sample should we use now? Our partner says those codes with obsolete API are in RFID2_Sample. I recommended them to use RFID3Sample mentioned in the release notes of EMDK 2.4, but the partner says there were no such samples installed by EMDK. Does VS version contribute?

Thank you!

Junhua

J Jun-Hua Liu

Tag is Impinj Monza4. Thank you! Junhua

CONTACT
Can’t find what you’re looking for?