Reply To: MIFARE Classic Emulation throws \"Stack Error\" on iOS13\'s CoreNFC framework

Forum MIFARE and NFC Reader IC`s MIFARE Classic Emulation throws \"Stack Error\" on iOS13\'s CoreNFC framework Reply To: MIFARE Classic Emulation throws \"Stack Error\" on iOS13\'s CoreNFC framework

Re: MIFARE Classic Emulation throws \"Stack Error\" on iOS13\'s CoreNFC framework

23. October 2019 at 14:46
Hi TapLinx team,

Thanks again for responding. Yes indeed, similar to the previous listing of errors with the Infineon Classic emulation tag, the NXP SmartMX emulation tag is not itself a Classic 4K tag, but emulates it. Both Infineon and NXP tags have an actual SAK value of 0x38, e.g. when read on an Android device with NXP's TagInfo app, which should translates into bits #8..#1 as follows, according to Table 6 of Application Note #10833:

0 0 1 1 1 0 0 0


Following NXP's Figure 3 of Application Note #10834, this value (i.e. SAK bits 6=1, bit 5=1, and bit 4=1) should be classified as "Smart MX with MIFARE 4K".

When comparing the two log listings, the Infineon emulation tag gets detected as both 0x20, i.e. ISO 14443-4 generic, and 0x18, i.e. MIFARE 4k (the _NFReaderSession log actually reads "1 tags found" but fails with a "Stack Error"), whereas the NXP SmartMX emulation tag is classified only as 0x20, i.e. ISO 14443-4 generic. It seems the NXP tag short stops due to an internal 14443-4 "receiption error" and consequently never gets around to the Select Acknowledge (SAK) as an (emulated) type 0x18 or MIFARE 4k.

My question now remains: Assuming the new CoreNFC framework implemented the generic/standard 14443-4 protocol correctly, could one or both of these errors be due to incompatibility on the part of these emulation tags, or is/are the emulation tag(s) fine and is the recent iOS CoreNFC implementation of the generic/standard 14443-4 protocol incomplete?
+ 0  |  - 0