There are a few reasons why an NFC operation may timeout, including
the pn533 USB toggle bit bug. In that case it helps to report the
problem to calling process so that it can retry operation, instead
of hanging forever.
For instance, mifare_desfire_format_picc() may make the chip
unresponsive (see commit 91d3ff9cc4d3b59573c2301e0dc4c8f034ba13f2),
but if calling process gets ETIMEDOUT, it can select_application,
authenticate and format_picc again, with some success.
There are a few reasons why an NFC operation may timeout, including the pn533 USB toggle bit bug. In that case it helps to report the problem to calling process so that it can retry operation, instead of hanging forever.
For instance, mifare_desfire_format_picc() may make the chip unresponsive (see commit 91d3ff9cc4d3b59573c2301e0dc4c8f034ba13f2), but if calling process gets ETIMEDOUT, it can select_application, authenticate and format_picc again, with some success.