This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

RI-TRP-DR2B: Having an issue with WRITE command with RI-STU-MRDs

Part Number: RI-TRP-DR2B
Other Parts Discussed in Thread: RI-STU-MRD2, , MRD2EVM

Hello,

I am using the RI-TRP-DR2B transponder with the RI-STU-MRD2 Reader.  I have the development kit MRD2EVM as well.  We are developing a product that intends to use the transponder for equipment management. 

When using the development kit, I can READ and WRITE to my transponders using the software Microreader II.  I only need to write 2 bytes of data to the first page.  In the development console we are prototyping, I can READ the first page perfectly using the Easy Code Mode (ECM) command of: 

0x01 0x06 0x88 0x80 0x00 0x00 0x32 0x0D 0x31   (010688800000320D31)

This is also the command found in the command line of the Microreader II program, and the response is correct and READ works every time.  So I figure I must have things configured and working properly?

However, when I go to WRITE, the data doesn't WRITE. So I start with a transponder that has 0x00 0x00 0x00 0x00 0x00 0x00 0x05 0xBB for is first page data, then I want to WRITE new bytes.  An example code for WRITE I am using is:

0x01 0x0C 0x80 0x02 0x15 0x01 0x00 0x00 0x00 0x00 0x00 0x00 0x07 0xBB 0x26 (010C8002150100000000000007BB26)  This should WRITE 0x00 0x00 0x00 0x00 0x00 0x00 0x07 0xBB to the first page.  The response from the reader i get is:

0x01 0x10 0x00 0x7E 0xBB 0x05 0x00 0x00 0x00 0x00 0x00 0x00 0xA5 0x71 0x04 0x24 0x46 0x02 0x60

Basically I get the data read back unchanged, still the initial 0x00 0x00 0x00 0x00 0x00 0x00 0x05 0xBB.  According to the manual, a 0x00 for STATUS 1 byte (the third byte) means no error.  I get 0x00.  

The page is not locked and I can still READ and WRITE to the transponder with the development kit.  Any ideas?  This is becoming a bit of a headache!

Thanks in advance for any help.

Jon

  • Hello Jon,

    from the commands you use I can see that these are not ECM commands. The ECM commands are implemented to simplify the access to the transponder.

    Please see page 45 of the reference guide how to use the ECM commands for the MPT transponder:

    http://www.ti.com/lit/ug/scbu049/scbu049.pdf

    For a help how to use the different MRD2 commands I attach here a tool which is not an official supported tool by TI but may help to implement your commands,

    but note there is no documentation and no support available for this tool. Just use it as it is:

    5635.MicroreaderII_V3_6.zip

    Best regards,

    Helfried

  • Thank you Helfried,

    Thank you for the protocol debugger program.  It is helpful.  And thank you for responding!  I know it can be hard to help troubleshoot when there are system components that you can't see or don't have knowledge of.

    I have looked through the document you sent, and you are correct about page 45 for MPT codes.  However, on page 46 is where I had gotten my WRITE code mentioned above of: 0x01 0x0C 0x80 0x02 0x15 0x01 0x00 0x00 0x00 0x00 0x00 0x00 0x07 0xBB 0x26 (010C8002150100000000000007BB26).  It is my understanding that this command let's the reader do the CRC check.  Basically a 0x15 Device Command instead of 0x11.

    This is confirmed in the Microreader MRD2 protocol debugger you sent me.  This code should in fact write 0x00 0x00 0x00 0x00 0x00 0x00 0x07 0xBB to page 1.  However, when I send this WRITE command I still get the same response from the reader.  The response shows the same unchanged data that was present before the WRITE command.  In other words, the reader is acknowledging my command and responding, but the data in the response is unchanged from before the WRITE command was issued.  I can also use the Development Board to verify that the data is in fact, unchanged.

    So again, I can WRITE and READ using the debugger you sent, and the Microreader II software to several of my transponders using the evaluation kit board.  Using my system with the MRD2 reader, I can READ every time with no issue.  However, it is when I WRITE that the reader response is an unchanged data set.  I get a response from the reader, (I assume meaning that it received a somewhat valid command?) but the data is still the same as before the WRITE command was issued.  It's like it didn't take my WRITE command and just responded with a data read.  But then I can take the same transponder and WRITE to it with the development board.  VERY CONFUSING!

    Are there any other suggestions I can try?  My antenna, baud rate, lol... sort of reaching here.

    Any help is appreciated!

    Thanks

    Jon Butler

  • Hello Jon,

    sounds very strange, this is even confusing for me.

    Are you able to read different pages with your setup? I am asking just to see if you get the response from a charge only read and the transponder is not decoding the command you send.

    Do you have an oscilloscope to compare the LF signals between the EVM and your setup. I do that with the probe ground wire direct connected with the probe tip to build a loop and put it on the antenna.

    What antenna are you using? 

    Best regards,

    Helfried

  • Hi Helfried,

    I think we finally got it.  Turns out we were sending an unexpected carriage return on the WRITE command.  Once that got removed, all is working perfectly.  

    Thank you for the debugger and the assistance!

    Jon