Hi,
see https://community.st.com/t5/st25-nfc-rfid-tags-and-readers/decrease-the-time-to-write-read-a-block-fro-a-nfc-tag/td-p/601357 for a similar question.
When using the Read Multiple Blocks command in non-addressed mode to read 2 blocks of 8 bytes, the request contains 6 bytes and the response contains19 bytes. When using 26 kbps bit rate:
| 6 bytes transmission |
1.92ms |
| t1 |
0.320ms |
| 19 bytes reception |
6.04ms |
| t2 to next command |
0.309ms |
Total duration is 8.59ms for a Read Multiple Blocks command/ response with 2 blocks of 8 bytes. This is inline with your 9ms measurement.
As 100 bytes is not a multiple of 16 bytes, I assume 7 command/response pairs are needed, so the duration for reading 112 bytes is ~63ms. What is your starting point for your 80ms measurement?
If using the Fast Read Multiple Blocks, the request contains 7 bytes and the response contains19 bytes.
| 7 bytes transmission |
2.22ms |
| t1 |
0.320ms |
| 19 bytes reception |
3.02ms |
| t2 to next command |
0.309ms |
Total duration is 5.87 to read 2 blocks of 8 bytes with fast mode, so about 35.2ms for 96 bytes
If using the Read Multiple Blocks Unlimited proprietary command to read for example 6 blocks:
| 7 bytes transmission |
1.92ms |
| t1 |
0.320ms |
| 51 bytes reception |
15.7ms |
| t2 to next command |
0.309ms |
Total duration is 18.6ms to read 6 blocks of 8 bytes, so about 37,2 ms for 96 bytes
I would personally use this Read Multiple Blocks Unlimited proprietary command and read 4 or 6 blocks per requests.
Rgds
BT