Incorrect RFID detection for pn5xx_i2c for multiple tap.

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

Incorrect RFID detection for pn5xx_i2c for multiple tap.

754 次查看
jitendra_thakare
Contributor II

Hi Team,

We are using kernel ver. 5.4 and using PN7150B0HN/C1106Y, We are trying to read the data from RFID tags.
But When I read multiple Tags back to back I get data on older Tag.

/**
* \brief NFC Tag callback function structure definition.
*/
typedef struct {
/**
* \brief NFC Tag callback function when tag is detected.
* param pTagInfo tag infomation
*/
void (*onTagArrival) (nfc_tag_info_t *pTagInfo);

/**
* \brief NFC Tag callback function when tag is removed.
*/
void (*onTagDeparture) (void);
}nfcTagCallback_t;

 

we getting wrong rfid id in bellow callback function .

void onTagArrival(nfc_tag_info_t *pTagInfo)
{
 printf("RFID tag  = %s\n",pTagInfo->uid);

...

}

 

 


Can you please help he to fix this issue?

标记 (2)
0 项奖励
5 回复数

715 次查看
KellyLi
NXP TechSupport
NXP TechSupport

Hello @jitendra_thakare 

Thanks for contacting us and choosing the NXP products.

Based on your description your problem is when reading multiple cards, PN7150 always reply the same one, is that right? if so, When there are two or more types card in field at the same time, like type A and F, PN7150 always response type A. Polling loop is always in same order: Type A, Type B, Type F, Type A will always respond first, since polling loop will search for Type A first. 

Hope the above can be helpful to you.

BR

kelly

 

 

0 项奖励

700 次查看
jitendra_thakare
Contributor II

Hi Kelly,

Thank you for reply I will check in this way.

Also we observer one more issue.

Steps to reproduce:

1.  tap the single RFID card 7-8 times

2. then tap the 4-5 RFID cards on the same times (smoke testing)

Looks to be RFID server get crash because from kernel side we do not see any detection logs.

(am335x-evm kernel: pn54x_dev_read: spurious interrupt detected)

 

NOTE : To Recover Need to take the power off cycle on board.

 

Thank You,

Jitendra

0 项奖励

687 次查看
KellyLi
NXP TechSupport
NXP TechSupport

Hello @jitendra_thakare 

Ok, I understand your question, but I want to confirm a few things with you:

1. Have you done the same test on NXP's demo? if so, the result is the same?

2. Also I'd like to know if just one card is perfectly fine in your test system?

3. And what are your test platform like?

If possible, please share with the above situation.

BR

kelly

0 项奖励

660 次查看
jitendra_thakare
Contributor II

Hi kelly,

1. Have you done the same test on NXP's demo? if so, the result is the same?

Ans: - Not yet 

2. Also I'd like to know if just one card is perfectly fine in your test system?

Ans: - Yes 

3. And what are your test platform like? 

Ans: - while doing smoke test this issue is observed. Platform: UAT 

Regards,

Jit

0 项奖励

649 次查看
KellyLi
NXP TechSupport
NXP TechSupport

Hello @jitendra_thakare 

Yes, I've checked with the R&D team, the answer I got as follows:

1) After in-depth code debugging, it is found that some codes that cause blocking have been deleted, and PN7150 will not be able to detect multiple cards.
2) The above issues have been submitted internally, but it is difficult to get any support because PN7150 is no longer recommended for new product design, and it will be gradually replaced by PN7160, and the firmware of PN7150 will not be updated.
3) Based on the above two points, NXP recommends whether customers can move to PN7160. This problem has been solved on PN7160.

For your problem, you should need to update the general firmware, but based on the reply to the second point, this will be difficult. The firmware of PN7150 is hard-coded, and the application layer has not been sent to modify, so you need to consider your application design based on the above situation.

Hope the above information is helpful to you.

BR

kelly

 

0 项奖励