Fastest mothod for ICODE polling

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

Fastest mothod for ICODE polling

1,045 Views
marcinbaliniak
Contributor II

Hi,

I'm using NFC library + PN5180 and chip based on freeRTOS.

I need to poll/read ICODE tags as fast as possibile. I tried to modify BasicDiscoveryLoop example to do this and force technology to PHAC_DISCLOOP_POS_BIT_MASK_V only and I got about 100ms per one loop/read tag.

But in my case I need to read 8 antennas connected via multiplexer in 250ms so 100ms is too much. 

Is there any tips for this library to optimize it for fast poll time?

Thanks,

Marcin.

Labels (1)
0 Kudos
7 Replies

758 Views
Kan_Li
NXP TechSupport
NXP TechSupport

Hi Marcin,

Was your application focus on ICODE tag? If yes, maybe starting from the demo of NfcrdlibEx5_ISO15693 is better.


Have a great day,
Kan

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos

758 Views
marcinbaliniak
Contributor II

Sadly this not helped. The main problem is that this function:

status = phacDiscLoop_Run(pDiscLoop, PHAC_DISCLOOP_ENTRY_POINT_POLL);

Takes almost 170ms - it is way to much for this application. I just need to get information if tag is present or not and then read it. Maybe I should use phpalSli15693_xxx functions in this case ?

0 Kudos

758 Views
Kan_Li
NXP TechSupport
NXP TechSupport

Hi Marcin,

How long do you need for this application? I will check with the expert if it is possible.


Have a great day,
Kan

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos

758 Views
marcinbaliniak
Contributor II

Hi,

In a mean while I made some progres and got about 12ms per antenna. I do this by disabling all other bitmap configs and left only one:

wPasPollConfig |= PHAC_DISCLOOP_POS_BIT_MASK_V;

status = phacDiscLoop_SetConfig(pDiscLoop, PHAC_DISCLOOP_CONFIG_PAS_POLL_TECH_CFG, wPasPollConfig);
CHECK_STATUS(status);

status = phacDiscLoop_SetConfig(pDiscLoop, PHAC_DISCLOOP_CONFIG_ACT_POLL_TECH_CFG, 0);
CHECK_STATUS(status);

status = phacDiscLoop_SetConfig(pDiscLoop, PHAC_DISCLOOP_CONFIG_PAS_LIS_TECH_CFG, 0);
CHECK_STATUS(status);

status = phacDiscLoop_SetConfig(pDiscLoop, PHAC_DISCLOOP_CONFIG_ACT_LIS_TECH_CFG, 0);
CHECK_STATUS(status);

And now seems to work, but let me know if I miss something, or maybe something can be improved more.

Thanks,

Marcin.

0 Kudos

758 Views
Kan_Li
NXP TechSupport
NXP TechSupport

Hi Marcin,

It is hard to tell, do you mind to provide the whole source file? Thanks for your patience!


Have a great day,
Kan

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos

758 Views
marcinbaliniak
Contributor II

Hi Kan,

For we got good results, but still one the prototype (not exactly the same design like final product). We will test this on first target device when receive it and will let you know if need any support.

Thanks,

Marcin.

0 Kudos

758 Views
marcinbaliniak
Contributor II

Yes, only ICODE tak, I will test it and let you know if this is better/faster.

Thanks,

Marcin.

0 Kudos