ST25R3911B errors when combination of two tags
What I'm doing is to perform anticollision with 1 or 2 NFCA tags present.
When performing anticollision with just one tag, the function does never report an error and allways find 1 tag correctly.
When performing anticollisiion with two tags:
- There are combinations of two NFCA tags that allways work perfectly (ERR_NONE) and found all the tags.
- There are combinations of two NFCA tags that allways fails.
When a combination allways fails:
- If I have optimize for size (-Os) error is allways ERR_FRAMING (in the same place as PDe), and if I call anticollision function again, it just found 1 tag (but there are two!).
- If I have optimize most (-O3) error is allways ERR_INCOMPLETE_BYTE, if I call anticollision function again, error is ERR_TIMEOUT, if I call it again, ERR_INCOMPLETE_BYTE, ...
- All tags works fine, when just one is present.
-----------------------------------------------------------------------------------------------------------------------------------
Open Ulysses HERNIOSUS Preview
(ST Employee)
Hi EBadi.2,
I propose you create a separate ticket for this behavior. I have some ideas but would also need some more information which you could post in this separate ticket:
- Which functions are you calling with which parameter?
- At which frames do yo observe this behavior? REQA/SENS_REQ or anticollision/SDD_REQ or SELECT/SEL_REQ? Our collision resolution functions are built to be able to cope with multiple tags.
-----------------------------------------------------------------------------------------------------------------------------------
err = rfalNfcaPollerInitialize(); /* Initialize for NFC-A */
err = rfalFieldOnAndStartGT(); /* Turns the Field On if not already and start GT timer
err = rfalNfcaPollerTechnologyDetection( RFAL_COMPLIANCE_MODE_NFC, &sensRes );
err = rfalNfcaPollerInitialize();
err = rfalFieldOnAndStartGT(); /* Turns the Field On if not already and start GT
err = rfalNfcaPollerFullCollisionResolution( RFAL_COMPLIANCE_MODE_NFC, (MAX_TAGS_TO_READ), nfcaDevList, &totalTags );
The errors I see are in this last call, is that what you were asking?
Where to find these: REQA/SENS_REQ or anticollision/SDD_REQ or SELECT/SEL_REQ?
