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.

TRF7970A EVM Card Emulation

Other Parts Discussed in Thread: TRF7970A, MSP430F5529

I have the TRF7970A EVM, and would like to use the GUI app to configure the board for ISO14443B Card Emulation, so that a Samsung Nexus S could read it.

Could this be done through the "registers" or "test" tabs of the GUI?

Also, what is the syntax of using the "Test" tab, either for the "Test Program" or the "Send" / "Send Raw" commands?

Thanks.

  • Andrew -

    the GUI is not really set up to do this for the Type B, unfortunately. if you can write your own code - you can set up the TRF7970A as Type B card by:

     

    •Initialize SPI w/SS by using Direct Command 0x03 è 0x83 (Software Initialization) See Table 5-18 of TRF7970A DS
    •Idle TRF7970A by using 0x00 è 0x80 (Idle) See Table 5-18 of TRF7970A DS
    •Write Registers to Configure TRF7970A for desired mode (ISO14443B in this example)
    •Registers and values to write (in order):
    0x09 ==> 0x01 (this sets bit 7 to 0 (for 13.56MHz crystal operation)
    0x01 ==> 0x25 (sets bit 5 for NFC/Card Emulation and bits 0, 1, and 2 for ISO14443B operations)
    0x0B ==> 0x87 (automatic)
    0x0A ==> 0x3C (RX Special Settings for ISO14443B)
    0x18 ==> 0x07 (NFC Target Detection Level set)
    0x17 ==> write continuous with NFCID/PUPI (i.e. 0x80, 0x12, 0x34, 0x56)
    0x16 ==> 0x03 (NFC Low Field Detection Level set)
    0x02 ==> 0x00 (ISO14443B TX Options, no EGT after each byte)
    0x00 ==> 0x21 (Chip Status Control Set)
    •Reset the FIFO with Direct Command 0x0F ==> 0x8F
    •Disable/Enable RX’ers with Direct Commands 0x16, 0x17 ==> 0x96, 0x97, respectively
    •TRF7970A is now set up as an ISO14443B transponder with a NFCID/PUPI of 0x8012345616, waiting for field to be presented and commands issued. Futher code would also need to be added to allow for handling the field detection, ignoring the other (non-ISO14443B) requests from the phone and handling the NDEF detection procedure as well.
     
    We have this as example with the MSP430F5529 in the app note we have on the web for BT pairing, which loosely follows the original connection handover spec. I am working on next version of this which follows directly the BT-SIG/NFC Forum spec, which was released last November.  
  • Dear Josh...

    I've also faced with the problem as described above,

    Can you recommand me which PC SW to change the value of register of trf7970a

    to get the card emulation mode of ISO14443B as above?

    Thanks!!!

    Brs...

    Johnathan.

  • Like Jonathan I'm facing now the same problem.

    Shouldn't it be possible to write the Registers directly by the GUI with the Test-Tab?

    Example: I want to write 0x80 to the Register 0x00, so I do the following:

    Unfortunately, this does not work for the UID (write continuous) command. Am I doing something wrong?

    First I set the UID length to 4 bytes:
    101800

    Then I try to set the UID: (I try to set the UID to 0x80 0x12 0x34 0x56):
    101780123456

    After that command, the EVM is no more responding to the GUI. Is there anything wrong with the command 101780123456? (Maybe the first Byte 0x10 declares a "write" command instead of a "write continuous" command?)

    Even if I don't send this command, my Nexus 5 smartphone doesn't recognize the AEVM as a NFC Tag.

    Could you detect any mistake in my approach?

  • Hi Remo,

    As Josh mentioned, the TRF7970AEVM isn't meant to do Card Emulation mode. The firmware modifications Josh spoke of would be to the source code. Additionally you'd need to handle replying to the Android phone commands quickly enough to not timeout, so I have doubts that sending custom strings through the test tab manually would activate a phone like the Nexus 5, which means you'd have to add additional source code to handle the activation sequence.

    I would recommend that rather than use the EVM for something it is not really setup for, you look at our Card Emulation software example on our LaunchPad+Boosterpack combo. This firmware is for our NFCLink Standalone software stack and supports Card Emulation for Type A and Type B. We have done a lot of interoperability testing with this to support the latest NFC handsets as well. It will be quicker and provide far better performance than attempting to modify the EVM firmware.

    Application note for Card Emulation with the TRF7970A: http://www.ti.com/lit/an/sloa208/sloa208.pdf

    Latest firmware supporting Card Emulation: http://www.ti.com/lit/zip/sloa227

    Hardware to evaluate Card Emulation: