This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

nrf52832 NFC for payment purpose

Hello everyone,

I have a few questions related to NFC in nrf52832.

1. UUID in nrf52832 NFC is Unique?

2. Can I use nrf52832 NFC for payment purposes..? if yes How I can do?

3. RFID and NFC both are working at the same time or do we need to choose any mode?

(In RFID mode it should transmit the UUID only, In NFC mode the data transfer should occue)

4. for payment method any external encrypting chip is required?

<<Thank you>>

  • Hello,

    1. UUID in nrf52832 NFC is Unique?

    I don't know how much you have looked into the NFC examples. They typically set up an NFC packet that is transferred on connection, but I don't think that packet includes any UUID by default. The nRF comes with a unique address, which I guess you can use in the NFC packet if you like.

    2. Can I use nrf52832 NFC for payment purposes..? if yes How I can do?

    I am not sure. I guess this is a bit outside of our expertise. There is a lot of other things you need access to before being able to handle bank transactions than NFC. I guess you need to get in touch with either a bank, Visa or Ingenico or similar to discuss the needs for that. 

    3. RFID and NFC both are working at the same time or do we need to choose any mode?

    (In RFID mode it should transmit the UUID only, In NFC mode the data transfer should occue)

    I think NFC is a subset of RFID. We usually say that we have NFC, but not RFID, but then again, NFC is RFID.

    4. for payment method any external encrypting chip is required?

    I am not sure.

    I guess this is a bit outside of what we work with. If you want to discuss this with our RSM (Regional Sales Manager) for your area, please send me a PM here on Devzone, and I can give you their contact information. Perhaps they have been in touch with some other customers working on a similar project, and they can give you some directions on where to go to achieve your goal. 

    Best regards,

    Edvin

  • Thank you so much edvin .

    I went through the datasheet I found out about this register part.

     NFC.TAGHEADER0 ,NFC.TAGHEADER1,  NFC.TAGHEADER2, NFC.TAGHEADER3, these are what ID 's.

    I think these belong to NFC.

    can you tell me about these Registers? 

  • That is correct. This is a uniquely assigned address consisting of 16 bytes. split along those 4 registers. 

    You can see how it is used in nrfx_nfct_nfcid1_default_bytes_get() in the nfc examples from the SDK. I see that it only uses 3 of the registers. Perhaps it only needs 12 address bytes. 

    Best regards,

    Edvin

  • Hai Edvin,

    I tried this way.

    In program main i write like this

    #define NRFX_NFCT_NFCID1_DEFAULT_LEN NRFX_NFCT_NFCID1_DOUBLE_SIZE ///< Default length of NFC ID. */

    uint8_t default_nfcid1_1[NRFX_NFCT_NFCID1_DEFAULT_LEN];


    err_code = nrfx_nfct_nfcid1_default_bytes_get(default_nfcid1_1, sizeof(default_nfcid1_1));


    int i=0;
    while(default_nfcid1_1[i])
    {
    SEGGER_RTT_printf(0,"NFC data %x\n",default_nfcid1_1[i]);
    i++;
    }

    The output is :

    00> NFC data 5F
    00> NFC data B3
    00> NFC data 87
    00> NFC data A9
    00> NFC data 33
    00> NFC data AD
    00> NFC data F0

    But while I'm using MFRC522 reader I got ID like this

    585721153507

    I'm not getting what is the Relevance between these two data.

    how can I confirm this ID is Correct?

  • How do you set up your NFC, other than nrfx_nfct_nfcid1_default_bytes_get() and what does nrfx_nfct_nfcid1_default_bytes_get return? (What is err_code after this function is called?)

    I am not familiar with the MFRC522 reader. Can you please try to scan the NFC with a mobile app, such as NFC Tools?

    Using this app, and the default nfc_text_record app, I see that I get the ID (Serial Number) 5F:22:31:99:15:22:9E.

    Reading the ID from the nRF memory directly, using nrfjprog --memrd 0x10000450 --n 16, I get:

    address:     0x0450   0x0454   0x0458   0x045c
    0x10000450: CD31225F 9E221599 9B8F0EC6 69EEC7C2

    Although the byte order is a bit confusing, you can see the 5F is the last byte on the first chunk (on the first address, 0x10000450). 

    Why 0xCD is not used I am not sure, but I guess it doesn't really matter, since it is randomly generated. It is a bit difficult to say exactly how/where the ID is set, since it is done in libraries, and not open source code. 

    So please let me know how you set up your NFC (probably you can share your main.c file, and any other file if you have changed them), and please try to read out the address using nrfjprog (nRF Command Line Tools), and try to read the tag using the NFC Tools app for Android or iPhone.

    Best regards,

    Edvin

Related