Hi,
I am using PN7462 for both smart card and NFC card reader.
I am suffering a problem with the ESD test.
USB communication will get lost in the ESD test but the device didn't aware of the situation.
The CPU is alive therefore watchdog is useless.
I am using like short D+/D- to simulate the ESD interference condition.
I discovered nothing abnormal from USB registers even the D+/D- is shorted
The attached is the error counts from USB ISR.
To compare the snapshots, before and after D+/D- shorts, I got some questions:
#1. I got some NAK errors (isr_err[9]) even I did NOT enable the IntOnNak_AI/IntOnNak_AO/IntOnNak_CI/IntOnNak_CO bits of command/status register, before D+/D- get shorted. Where are they from and how?
#2. There is a sent stall error (isr_err[10]). I guess it is from the enumeration process but why?
I did NOT find any abnormal during enumeration.
#3. After D+/D- get shorted, I tried several times and 2 samples attached.
One is reported truncated EOP (isr_err[8]) and one is reported bit stuff error (isr_err[13]). They are not always reported.
#4 What is the best way to detect USB interface errors. Original I think it can be detected by SOF and NAK of interrupt endpoint. Both of them could be beacons between the USB host and the device. However, I can get SOF and NAK ISRs when the D+/D- get shorted, but I think the communication between the USB host and the device actually gets lost since card insertion even is bot work anymore.
Are there any registers that need to be set to properly detect SOF/NAK behavior correctly?
Jack