PN7362 CCID Compliance? phEXNFCCID Example

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

PN7362 CCID Compliance? phEXNFCCID Example

Jump to solution
966 Views
flesky
Contributor II

Hello everyone,

I am currently working with the example project phEXNFCCID provided in relation to the CCID standard and have a few questions regarding its compatibility and implementation:

  1. CCID Standard Compatibility:
    Is the example project fully compatible with the current CCID standard? Are there any known deviations or limitations in the implementation?

     

I would greatly appreciate any feedback, especially from those who have used or are familiar with the example project. If anyone has encountered issues or has suggestions for improvements, I would love to hear about them as well.

Thank you in advance for your help!

Florian

0 Kudos
Reply
1 Solution
943 Views
Fabian_R
NXP TechSupport
NXP TechSupport

Hello, Thank you for your interest in our products

Please keep in mind that these examples are only for testing purposes. There hasn't been any deviation that may require to report or patch. Nevertheless, these are examples for starting your own implementation we only provide an API for using our hardware.

We can't recommend these as it is for end solutions. they require additional implementations from the customer side. We only provide something like a "proof of concept".

Best Regards,
Fabian

View solution in original post

2 Replies
944 Views
Fabian_R
NXP TechSupport
NXP TechSupport

Hello, Thank you for your interest in our products

Please keep in mind that these examples are only for testing purposes. There hasn't been any deviation that may require to report or patch. Nevertheless, these are examples for starting your own implementation we only provide an API for using our hardware.

We can't recommend these as it is for end solutions. they require additional implementations from the customer side. We only provide something like a "proof of concept".

Best Regards,
Fabian
606 Views
flesky
Contributor II

Hello,

I’m working with the PN7362 reader IC using the NXP phExNFCCcid reference project firmware and have encountered an issue during card removal related to the PC_to_RDR_IccPowerOff command (0x63).

Issue:
When the host sends the PowerOff command to the reader while the card is being physically removed, the reader correctly sends a NotifySlotChange with bStatus = 0x02 (Card Absent). However, the PowerOff command itself never completes, causing the CCID driver on the host to wait and eventually timeout (e.g., LIBUSB_ERROR_TIMEOUT).

As a result, the reader appears "confused" and refuses further commands, showing errors like "Slot busy." The driver never receives a proper card absent error response for the PowerOff command, only the timeout.

Observed behavior:

PC_to_RDR_IccPowerOff command sent (0x63)

NotifySlotChange with bStatus = 0x02 sent by the reader

Host CCID driver waits for command completion but hits a timeout

Reader becomes unresponsive until reset

Note:
It seems the host software must wait for the CCID driver timeout before recovery is possible.

Questions:

Is this a known behavior or firmware limitation in the phExNFCCcid project?

Are there any recommendations or firmware updates to improve handling of this race condition?

Could the firmware be modified to send a proper card absent error response before the timeout occurs?

Thank you very much for your assistance!

Best regards,

 

0 Kudos
Reply
%3CLINGO-SUB%20id%3D%22lingo-sub-2015133%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3EPN7362%20CCID%20Compliance%3F%20phEXNFCCID%20Example%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2015133%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EHello%20everyone%2C%3C%2FP%3E%3CP%3EI%20am%20currently%20working%20with%20the%20example%20project%20phEXNFCCID%20provided%20in%20relation%20to%20the%20CCID%20standard%20and%20have%20a%20few%20questions%20regarding%20its%20compatibility%20and%20implementation%3A%3C%2FP%3E%3COL%3E%3CLI%3E%3CP%3E%3CSTRONG%3ECCID%20Standard%20Compatibility%3A%3C%2FSTRONG%3E%3CBR%20%2F%3EIs%20the%20example%20project%20fully%20compatible%20with%20the%20current%20CCID%20standard%3F%20Are%20there%20any%20known%20deviations%20or%20limitations%20in%20the%20implementation%3F%3C%2FP%3E%3CBR%20%2F%3E%3C%2FLI%3E%3C%2FOL%3E%3CP%3EI%20would%20greatly%20appreciate%20any%20feedback%2C%20especially%20from%20those%20who%20have%20used%20or%20are%20familiar%20with%20the%20example%20project.%20If%20anyone%20has%20encountered%20issues%20or%20has%20suggestions%20for%20improvements%2C%20I%20would%20love%20to%20hear%20about%20them%20as%20well.%3C%2FP%3E%3CP%3EThank%20you%20in%20advance%20for%20your%20help!%3C%2FP%3E%3CP%3EFlorian%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2106240%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3ERe%3A%20PN7362%20CCID%20Compliance%3F%20phEXNFCCID%20Example%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2106240%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3EHello%2C%3C%2FP%3E%3CP%3EI%E2%80%99m%20working%20with%20the%20PN7362%20reader%20IC%20using%20the%20NXP%20phExNFCCcid%20reference%20project%20firmware%20and%20have%20encountered%20an%20issue%20during%20card%20removal%20related%20to%20the%20PC_to_RDR_IccPowerOff%20command%20(0x63).%3C%2FP%3E%3CP%3EIssue%3A%3CBR%20%2F%3EWhen%20the%20host%20sends%20the%20PowerOff%20command%20to%20the%20reader%20while%20the%20card%20is%20being%20physically%20removed%2C%20the%20reader%20correctly%20sends%20a%20NotifySlotChange%20with%20bStatus%20%3D%200x02%20(Card%20Absent).%20However%2C%20the%20PowerOff%20command%20itself%20never%20completes%2C%20causing%20the%20CCID%20driver%20on%20the%20host%20to%20wait%20and%20eventually%20timeout%20(e.g.%2C%20LIBUSB_ERROR_TIMEOUT).%3C%2FP%3E%3CP%3EAs%20a%20result%2C%20the%20reader%20appears%20%22confused%22%20and%20refuses%20further%20commands%2C%20showing%20errors%20like%20%22Slot%20busy.%22%20The%20driver%20never%20receives%20a%20proper%20card%20absent%20error%20response%20for%20the%20PowerOff%20command%2C%20only%20the%20timeout.%3C%2FP%3E%3CP%3EObserved%20behavior%3A%3C%2FP%3E%3CP%3EPC_to_RDR_IccPowerOff%20command%20sent%20(0x63)%3C%2FP%3E%3CP%3ENotifySlotChange%20with%20bStatus%20%3D%200x02%20sent%20by%20the%20reader%3C%2FP%3E%3CP%3EHost%20CCID%20driver%20waits%20for%20command%20completion%20but%20hits%20a%20timeout%3C%2FP%3E%3CP%3EReader%20becomes%20unresponsive%20until%20reset%3C%2FP%3E%3CP%3ENote%3A%3CBR%20%2F%3EIt%20seems%20the%20host%20software%20must%20wait%20for%20the%20CCID%20driver%20timeout%20before%20recovery%20is%20possible.%3C%2FP%3E%3CP%3EQuestions%3A%3C%2FP%3E%3CP%3EIs%20this%20a%20known%20behavior%20or%20firmware%20limitation%20in%20the%20phExNFCCcid%20project%3F%3C%2FP%3E%3CP%3EAre%20there%20any%20recommendations%20or%20firmware%20updates%20to%20improve%20handling%20of%20this%20race%20condition%3F%3C%2FP%3E%3CP%3ECould%20the%20firmware%20be%20modified%20to%20send%20a%20proper%20card%20absent%20error%20response%20before%20the%20timeout%20occurs%3F%3C%2FP%3E%3CP%3EThank%20you%20very%20much%20for%20your%20assistance!%3C%2FP%3E%3CP%3EBest%20regards%2C%3C%2FP%3E%3CBR%20%2F%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2015472%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3ERe%3A%20PN7362%20CCID%20Compliance%3F%20phEXNFCCID%20Example%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2015472%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%20lang%3D%22en-US%22%3EHello%2C%20Thank%20you%20for%20your%20interest%20in%20our%20products%3C%2FP%3E%0A%3CP%20lang%3D%22en-US%22%3EPlease%20keep%20in%20mind%20that%20these%20examples%20are%20only%20for%20testing%20purposes.%20There%20hasn't%20been%20any%20deviation%20that%20may%20require%20to%20report%20or%20patch.%20Nevertheless%2C%20these%20are%20examples%20for%20starting%20your%20own%20implementation%20we%20only%20provide%20an%20API%20for%20using%20our%20hardware.%3C%2FP%3E%0A%3CP%20lang%3D%22en-US%22%3EWe%20can't%20recommend%20these%20as%20it%20is%20for%20end%20solutions.%20they%20require%20additional%20implementations%20from%20the%20customer%20side.%20We%20only%20provide%20something%20like%20a%20%22proof%20of%20concept%22.%3C%2FP%3E%3C%2FLINGO-BODY%3E