<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic EMVCo removal procedure with nxp reader library in NFC</title>
    <link>https://community.nxp.com/t5/NFC/EMVCo-removal-procedure-with-nxp-reader-library/m-p/833430#M4472</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I am using the NXP reader library (version 05.16.00) to communicate with a PN5180 front end. I am trying to implement EMVCo card removal.This is quite easy to achieve through the discovery loop layer:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;phacDiscLoop_SetConfig(sDiscLoop, PHAC_DISCLOOP_CONFIG_NEXT_POLL_STATE, PHAC_DISCLOOP_POLL_STATE_REMOVAL);&lt;BR /&gt;phacDiscLoop_Run(sDiscLoop, PHAC_DISCLOOP_ENTRY_POINT_POLL);&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;However this command will block until the card is removed (the code reaches the while loop starting on line phacDiscLoop_Sw_Int.c:443). Our host processor is running a bare board application (no threading support) which means that the system will freeze until the card is removed and this while loop terminates. This is not acceptable for our application&amp;nbsp;for a number of reasons. I am wondering if anyone can suggest a way of achieving this removal in a non-blocking manner. For example I could keep calling&amp;nbsp;&lt;SPAN&gt;phacDiscLoop_Run which would return an error if the card is still in the field and success if it is removed. Would such a design be possible based on the EMVCo standard? Ideally I would like to do so without modifying the reader library source code to make updates in the future as simple as possible.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Currently my thoughts are to make my own version of&amp;nbsp;phacDiscLoop_Sw_Int_EmvcoRemovalProcedure that does not block and then call this instead of&amp;nbsp;phacDiscLoop_Run but if anyone can suggest a simpler way that does not have to bypass the discovery loop layer that would be a preferable solution.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Best Regards,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Josh&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Wed, 08 Aug 2018 13:22:22 GMT</pubDate>
    <dc:creator>joshcollins</dc:creator>
    <dc:date>2018-08-08T13:22:22Z</dc:date>
    <item>
      <title>EMVCo removal procedure with nxp reader library</title>
      <link>https://community.nxp.com/t5/NFC/EMVCo-removal-procedure-with-nxp-reader-library/m-p/833430#M4472</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;I am using the NXP reader library (version 05.16.00) to communicate with a PN5180 front end. I am trying to implement EMVCo card removal.This is quite easy to achieve through the discovery loop layer:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;phacDiscLoop_SetConfig(sDiscLoop, PHAC_DISCLOOP_CONFIG_NEXT_POLL_STATE, PHAC_DISCLOOP_POLL_STATE_REMOVAL);&lt;BR /&gt;phacDiscLoop_Run(sDiscLoop, PHAC_DISCLOOP_ENTRY_POINT_POLL);&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;However this command will block until the card is removed (the code reaches the while loop starting on line phacDiscLoop_Sw_Int.c:443). Our host processor is running a bare board application (no threading support) which means that the system will freeze until the card is removed and this while loop terminates. This is not acceptable for our application&amp;nbsp;for a number of reasons. I am wondering if anyone can suggest a way of achieving this removal in a non-blocking manner. For example I could keep calling&amp;nbsp;&lt;SPAN&gt;phacDiscLoop_Run which would return an error if the card is still in the field and success if it is removed. Would such a design be possible based on the EMVCo standard? Ideally I would like to do so without modifying the reader library source code to make updates in the future as simple as possible.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Currently my thoughts are to make my own version of&amp;nbsp;phacDiscLoop_Sw_Int_EmvcoRemovalProcedure that does not block and then call this instead of&amp;nbsp;phacDiscLoop_Run but if anyone can suggest a simpler way that does not have to bypass the discovery loop layer that would be a preferable solution.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Best Regards,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Josh&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Wed, 08 Aug 2018 13:22:22 GMT</pubDate>
      <guid>https://community.nxp.com/t5/NFC/EMVCo-removal-procedure-with-nxp-reader-library/m-p/833430#M4472</guid>
      <dc:creator>joshcollins</dc:creator>
      <dc:date>2018-08-08T13:22:22Z</dc:date>
    </item>
  </channel>
</rss>

