question

brokenoval avatar image
brokenoval asked ketpat commented

Reading NFC chips (Mifare Desfire/ IsoDef) breaks the NFC reader

We're using the NFC reader to identify cards. However I've found a situation that breaks the NFC reader on Mini ( gen 2) and Flex (gen 1 & gen 2). Customers sometimes come up and tap random NFC/ RFID tags off the devices, or sometimes they have multiple tags in readable distance. e.g. they will come up and tap an Oyster card or they just tap their wallet and have multipl cards inside. It seems that certain chips will break the NFC reader all the time. I suspect some sort of exception that isn't being handled correctly.


To reproduce:

1. Install the Clover NFC project from github (https://github.com/danielwilson1702/android-examples/blob/master/clover-cfp-examples/clover-cfp-examples/src/main/java/com/clover/cfp/examples/NFCExampleActivity.java) This is a fork that just uses Clover's NFC code


2. Scan any Mifare Desfire Chip (ISO 14443-4) with IsoDep.


Expected: Read the card -> print data to screen -> read card again etc
Actual: Scans card once -> NFC reader is now broken and cannot scan any card. The NFC chip within the device goes completely dead, no errors are visible in the logs, but the NFC cannot be woken up again. Sometimes rebooting the app will start the reader again. Sometimes it requires opening another app with NFC capability, sometimes it just requires waiting a few minutes and rebooting the app.


Below is a sample of the card type and technologies used. I can reliably break this every single time with these types of card which are most commonly used in public transport e.g. Oyster card, Leap card etc.


Can you advise on how to fix this from our side or when a fix might be avaialble from Clover?


Thanks!


EDIT: Anecdotally, this is not an issue on Mini Gen 1 or Station Pro. Mini Gen 1 simply will not read these types of NFC tags (but the NFC controller won't break). The Station Pro reads them successfully every time without issue.




Clover MiniClover Flex
10 |2000

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

1 Answer

·
narayananclover avatar image
narayananclover answered ketpat commented

Hi, You are correct! Station Pro is the only device with the full NFC functionality. The other devices do not support this type of card. But, Agree the lockup should not be happening. I'll raise a internal clover case and get back to you after we do some analysis.

7 comments
10 |2000

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

brokenoval avatar image brokenoval commented ·

Great thanks! Let me know if there's some sort of work around we can use in the meantime. We've tried for example only listening for the particular type of chip we support (standard Mifare Ultralight ISO 14443-3A), and also trying to disregard DESfire chips manually. No real success yet.

0 Likes 0 ·
narayananclover avatar image narayananclover brokenoval commented ·

Can you provide a link to the exact card you are using if it can be purchased online?

0 Likes 0 ·
brokenoval avatar image brokenoval narayananclover commented ·

Hi there - is there any resolution to the ticket you created yet? Or any sort of update?

0 Likes 0 ·
Show more comments

Write an Answer

Hint: Notify or tag a user in this post by typing @username.

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

Welcome to the
Clover Developer Community