Why do I get DISCOVERY_TARGET_ACTIVATION_FAILED shortly after starting discovery? PN7150

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Why do I get DISCOVERY_TARGET_ACTIVATION_FAILED shortly after starting discovery? PN7150

1,221 Views
dominusdrr
Contributor IV

Hi.

I have done all the steps to configure the PN7150 to read an ISO14443 type tag.

Then issue the Start Discovery command, I wait in an infinite loop for the discovery notification.

But after a moment, without even presenting a tag on the antenna, I get the following frame:

60 07 01 a1

Which the parameter that reports the error is DISCOVERY_TARGET_ACTIVATION_FAILED.

I thought it was a problem with the antenna, but using an oscilloscope I have determined that the signal is present without problems and without attenuation.

The RF configuration related to the second generation of NXP-NCI controller is as follows:

 

uint8_t NxpNci_RF_CONF_2ndGen[] = {
0x20, 0x02, 0x94, 0x11,
0xA0, 0x0D, 0x06, 0x04, 0x35, 0x90, 0x01, 0xF4, 0x01, /* RF_CLIF_CFG_INITIATOR        CLIF_AGC_INPUT_REG */
0xA0, 0x0D, 0x06, 0x06, 0x30, 0x01, 0x90, 0x03, 0x00, /* RF_CLIF_CFG_TARGET           CLIF_SIGPRO_ADCBCM_THRESHOLD_REG */
0xA0, 0x0D, 0x06, 0x06, 0x42, 0x02, 0x00, 0xFF, 0xFF, /* RF_CLIF_CFG_TARGET           CLIF_ANA_TX_AMPLITUDE_REG */
0xA0, 0x0D, 0x06, 0x20, 0x42, 0x88, 0x00, 0xFF, 0xFF, /* RF_CLIF_CFG_TECHNO_I_TX15693 CLIF_ANA_TX_AMPLITUDE_REG */
0xA0, 0x0D, 0x04, 0x22, 0x44, 0x23, 0x00,             /* RF_CLIF_CFG_TECHNO_I_RX15693 CLIF_ANA_RX_REG */
0xA0, 0x0D, 0x06, 0x22, 0x2D, 0x50, 0x34, 0x0C, 0x00, /* RF_CLIF_CFG_TECHNO_I_RX15693 CLIF_SIGPRO_RM_CONFIG1_REG */
0xA0, 0x0D, 0x06, 0x32, 0x42, 0xF8, 0x00, 0xFF, 0xFF, /* RF_CLIF_CFG_BR_106_I_TXA     CLIF_ANA_TX_AMPLITUDE_REG */
0xA0, 0x0D, 0x06, 0x34, 0x2D, 0x24, 0x37, 0x0C, 0x00, /* RF_CLIF_CFG_BR_106_I_RXA_P   CLIF_SIGPRO_RM_CONFIG1_REG */
0xA0, 0x0D, 0x06, 0x34, 0x33, 0x86, 0x80, 0x00, 0x70, /* RF_CLIF_CFG_BR_106_I_RXA_P   CLIF_AGC_CONFIG0_REG */
0xA0, 0x0D, 0x04, 0x34, 0x44, 0x22, 0x00,             /* RF_CLIF_CFG_BR_106_I_RXA_P   CLIF_ANA_RX_REG */
0xA0, 0x0D, 0x06, 0x42, 0x2D, 0x15, 0x45, 0x0D, 0x00, /* RF_CLIF_CFG_BR_848_I_RXA     CLIF_SIGPRO_RM_CONFIG1_REG */
0xA0, 0x0D, 0x04, 0x46, 0x44, 0x22, 0x00,             /* RF_CLIF_CFG_BR_106_I_RXB     CLIF_ANA_RX_REG */
0xA0, 0x0D, 0x06, 0x46, 0x2D, 0x05, 0x59, 0x0E, 0x00, /* RF_CLIF_CFG_BR_106_I_RXB     CLIF_SIGPRO_RM_CONFIG1_REG */
0xA0, 0x0D, 0x06, 0x44, 0x42, 0x88, 0x00, 0xFF, 0xFF, /* RF_CLIF_CFG_BR_106_I_TXB     CLIF_ANA_TX_AMPLITUDE_REG */
0xA0, 0x0D, 0x06, 0x56, 0x2D, 0x05, 0x9F, 0x0C, 0x00, /* RF_CLIF_CFG_BR_212_I_RXF_P   CLIF_SIGPRO_RM_CONFIG1_REG */
0xA0, 0x0D, 0x06, 0x54, 0x42, 0x88, 0x00, 0xFF, 0xFF, /* RF_CLIF_CFG_BR_212_I_TXF     CLIF_ANA_TX_AMPLITUDE_REG */
0xA0, 0x0D, 0x06, 0x0A, 0x33, 0x80, 0x86, 0x00, 0x70  /* RF_CLIF_CFG_I_ACTIVE         CLIF_AGC_CONFIG0_REG */
    };

 

Any suggestions or comments on how I could fix this problem?

0 Kudos
1 Reply

1,199 Views
dominusdrr
Contributor IV

I answer to myself.

I think I have got something, firstly after carefully checking the antenna and reading the information in document AN11755, in section 3.6.2 it is mentioned about the connection of RX terminals.

In my case, the dimensions of the antenna are 15.5 mm wide by 27.51 mm, that is, an area of 426.41 square mm.

For such a surface, the document recommendation indicates that the RX terminals should be connected directly to the antenna.

dominusdrr_0-1663380854916.png

 

So I made this correction to the antenna (removing Rrx and Crx and directly connecting the RX terminals to the antenna)

dominusdrr_1-1663381044252.png

 

In this way, the error was no longer displayed immediately after Start Discovery.

But the same problem occurred when I presented the tag on the antenna.

After reading the information presented in the following thread:

Intermittent presence check failures on PN7150 

I vaguely understood that possibly my error is corrected by modifying the CLIF_ANA_RX_REG registry (section 5.5.3.1).

After doing some tests, I decided to modify the register for a gain of 0 dB and a corner frequency of 250 kHz.

dominusdrr_2-1663381439391.png

That is to say that I modified RF_CLIF_CFG_BR_106_I_RXA_P as follows:

 

//0xA0, 0x0D, 0x04, 0x34, 0x44, 0x22, 0x00,/* RF_CLIF_CFG_BR_106_I_RXA_P   CLIF_ANA_RX_REG */
0xA0, 0x0D, 0x04, 0x34, 0x44, 0x2C, 0x00,/* RF_CLIF_CFG_BR_106_I_RXA_P   CLIF_ANA_RX_REG */

 


And when doing some tests with the tag, I finally got a different notification (I haven't analyzed it in depth yet to determine what it means)

0x61 0x05 0x14 0x01 0x80 0x80 0x00 0xFF 0x01 0x09 0x04 0x00 0x04 0x70 0xB8 0xD1 0x48 0x01 0x08 0x00 0x00 0x00 0x00

Now, at some point the problem returned to me only once, I imagine that due to some external disturbance this error could occur.

I have another question, when this problem occurs, according to the NCI specification it indicates that the NFC enters a state called RFST_W4_HOST_SELECT in which the 13.56 MHZ signal is present in the antenna (I have verified it, that after sending that notification, in NFC it remains with the aforementioned signal unchanged).

My question is:

Is there a way to determine if the NFC is in that state to resend Start Discovery command?

Regards.