Skip to main content
Visitor II
February 28, 2022
Solved

read temperature from SL900A

  • February 28, 2022
  • 2 replies
  • 840 views

I am trying to read temperature from SL900A tag. As base I am using in SDK provided. demo_gen2GenericCommand . Although tag is accessible and I am able to read the memory when I try to read the temperature from TAG I always get the failure response.

Data sheet of the Tag is available here: https://ams.com/documents/20143/36005/SL900A_DS000294_5-00.pdf/d399f354-b0b6-146f-6e98-b124826bd737

I changed the function demo_gen2GenericCommand and am sending following command:

....

    genericCmd.cmd = cmd;

    genericCmd.noResponseTime = 0xFF;

    genericCmd.appendRN16 = true;

    genericCmd.sndDataBitLength = 24;    // 24: length of effective cmd data, headerbit + rn16 (if any) are computed by FW

    genericCmd.sndData[0] = 0xE0;

    genericCmd.sndData[1] = 0xAD;

    genericCmd.sndData[2] = 0x00;

    genericCmd.sndData[3] = 0x00;

    genericCmd.expectedRcvDataBitLength = (uint16_t)(1U + 5U + 10U + 16U + 16U +((cmd == STUHFL_D_GEN2_GENERIC_CMD_CRC_EXPECT_HEAD) ? 0U : 1U));

   ....

According to my investigation reported failure is STUHFL_ERR_CHIP_RXCOUNT although I set expectedRcvDataBitLength according to the specification.

    This topic has been closed for replies.
    Best answer by Ulysses HERNIOSUS

    Hi PKese.1,

    if I am not mistaken then the firmware already takes the CRC and header bit internally into account. So please try with 32 bits. If this does not work you may also want to try other values (16,17,...).

    Best Regards, Ulysses

    2 replies

    Technical Moderator
    March 1, 2022

    Hi PKese.1,

    if I am not mistaken then the firmware already takes the CRC and header bit internally into account. So please try with 32 bits. If this does not work you may also want to try other values (16,17,...).

    Best Regards, Ulysses

    PKese.1Author
    Visitor II
    March 2, 2022

    Hi Ulysses,

    thank you for your response. 32 bit is the correct value. I got confused what is handled by the firmware and what not.

    Best regards,

    Predrag