cancel
Showing results for 
Search instead for 
Did you mean: 

Connect two X-NUCLEO-NFC05A1 with Peer to Peer (p2p) connection.

Nicolasscg
Associate

I have difficulties connecting two X-NUCLEO-NFC05A1.

I had no problems reading different types of NFC cards but It is impossible for me to detect the other X-NUCLEO-NFC05A1. The board does not indicate that it detects any RF device.

Is it possible to establish a p2p connection between two X-NUCLEO-NFC05A1 and exchange data?

Regards

1 ACCEPTED SOLUTION

Accepted Solutions
Grégoire Poulain
ST Employee

Hi,

Yes, it is possible to establish a connection and communicate between two ST25R3911B .

Since ST25R3911B does not support load modulation (required for Card Emulation), the communication between the two devices is performed in Active communication mode (Active P2P).

Such communications between two ST25R3911B can be observed using the ST25R3911B-DISCO demo.

While running Active/Passive P2P communications the protocol NFC-DEP (also called NFCIP-1 or ISO18092) is used to establish the connection and transfer data.

All required APIs to do so are available on the library provided (RFAL).

At the moment there is no formal demo based on the NFC05A1 available on the web (we'll soon include such demo also on the provided examples).

Meanwhile we can provide an adapted NFC05A1 FW to grant such functionality.

Please find attached the file demo.c where the ST25R3911B is alternating between Initiator and Target modes. When you approach two X-NUCLEO-NFC05A1 a connection is established and afterwards the target loops back all data that receives from Initiator.

Kind regards

GP

View solution in original post

9 REPLIES 9
Grégoire Poulain
ST Employee

Hi,

Yes, it is possible to establish a connection and communicate between two ST25R3911B .

Since ST25R3911B does not support load modulation (required for Card Emulation), the communication between the two devices is performed in Active communication mode (Active P2P).

Such communications between two ST25R3911B can be observed using the ST25R3911B-DISCO demo.

While running Active/Passive P2P communications the protocol NFC-DEP (also called NFCIP-1 or ISO18092) is used to establish the connection and transfer data.

All required APIs to do so are available on the library provided (RFAL).

At the moment there is no formal demo based on the NFC05A1 available on the web (we'll soon include such demo also on the provided examples).

Meanwhile we can provide an adapted NFC05A1 FW to grant such functionality.

Please find attached the file demo.c where the ST25R3911B is alternating between Initiator and Target modes. When you approach two X-NUCLEO-NFC05A1 a connection is established and afterwards the target loops back all data that receives from Initiator.

Kind regards

GP

Ulysses HERNIOSUS
ST Employee

Hi,

one clarification remark:

This demo is not capable of maintaining a P2P communication with a smart phone. To do so one would need to implement the full layers of LLCP and SNEP. Implementations of these protocols may be more suited on a host.

Ulysses

4ndreas
Associate

Thank you, that is exaclty what I need.

TEsli.1
Associate II

Hi, I don't seem to be able to connect two ST25R3911B as well. I tried with the demo code, but I seem to receive error 37 when I call demoActivateP2P (i.e. ERR_LINK_LOSS). Any idea ? So, I am not sure it ever send any ATR_REQ.

Hi,

do you have two X-NUCLEO-NFC05 running this same demo code?

Nowadays it is better to use ST25 Embedded NFC lib for ST25R3911B - available at https://www.st.com/en/embedded-software/stsw-st25r-lib.html - please download the proper version. It has a ready made demo called ap2p_proprietary with latest code base.

Best Regards, Ulysses

TEsli.1
Associate II

Hi, I got two self designed PCBs with ST25R3911B. They work fine for NFC tag detection, but not yet with NFC DEP. Must be a missing bit somewhere. Thank you very much for that, I will check it out tonight!

Ulysses HERNIOSUS
ST Employee

Hi,

the ST25R3911B uses AP2P which requires a functional field detection. You could try playing with the field thresholds in the analog config. How did you adjust the capacitive voltage divider on the antenna?

Best Regards, Ulysses

TEsli.1
Associate II

Thank you Ulysses for your comment. I changed my implementation to use your lib. The initialization seems to work perfect, but it keeps polling device without finding any. I will try changing the threshold a bit tomorrow.

Do you think it is possible to have a working PCB for NFC tag but not for NFC DEP?​

I used about the same schema, specs ​as the board nucleo nfc05. I have one nucleo NFC05. I will program it with it, and try to NFC DEP with my custom board.

Thank you again for your time​

TEsli.1
Associate II

Hi @Ulysses HERNIOSUS_O​ , I found my error. It is a bit silly of course :). I am using RTOS, and I have a separate task handling device communications, with a queue. Basically, I was not holding the CS when filling FIFO (between send cmd, and send data). Now, it is all good. Thank you very much.