M6E Set session

In the Arduino library, is there a way to set the session code. To be more specific, in the URA; you can set “S0” and so on on the right hand side of the UI. I wonder if anyone has figured out how to set that in the Arduino library. I’ve found that by setting this that tag is read and then shuts down for a period of time before becoming readable again.

You can not set this with the Arduino library as it is as it does not support GEN2 configuration call

The function of the session option is described in the the MercuryApI programmers guidebook. It can be used to optimize the tag-selection process and determines the responds behavior after a first query has been sent

Session “0”: Prepare to respond again as soon as RF power drops

Session “1”: Prepare to respond again between 0.5 and 5 seconds after first response

Session “2” or “3”: Do not respond again for at least 2 seconds

For ThingMagicʼs default settings, the tag read rate is around 200 tags per second. With these settings, you would want to use session 0 up to around 100 tags in the field, and session 1 up to around 400 tags, and session “2” (or “3”) for more than 400 tags.

Thanks Paul for clearing that up. By the way, I am just about finished with my serial port interface application.

Good to hear !

BTW if you need session support add the following in the: SparkFun_UHF_RFID_Reader.cpp

// not tested yet !!
// 0xff length 0x9b 0x5 0x00 session CRC CRC
void RFID::setGen2Session(uint8_t session)
{
    uint8_t data[3];

    if (session < 0 || session > 3) return;
    data[0] = 0x05;     // Gen2 protocol option
    data[1] = 0x00;     // Gen2 session option
    data[2] = session;

    sendMessage(TMR_SR_OPCODE_SET_PROTOCOL_PARAM, data, sizeof(data));
}

and add in SparkFun_UHF_RFID_Reader.h around line 92: void setGen2Session(uint8_t session);

Hi,

Is it possible to use this feature to avoid reading the same tag multiple times during the time the tag switch back to state A ?

using session 1 for example.

I’m facing an inventory issue in which a tag is read so much time that I miss others even if I constant read for 10 sec.

This with only 20 tags :confused:

Am I misunderstanding this feature or is it the purpose of it ?

Thank you

That is the purpose of the session setting, but I am little surprised this happens already with 20 tags. Maybe the issue is related to position of the tags to the antenna. Are you using an external or the on-board ? I would advice before trying to make changes to test with the URA and see whether that makes a difference in detecting the tags.