2025-12-13 10:40 AM
It is getting hang at this point, going to infinite loop
MCU: STM32F407
SPI1 Interface
Tried ST25R_SELFTEST as well same problem
Solved! Go to Solution.
2025-12-14 10:16 AM
Hi,
do you use the X-CUBE-NFC9 Firmware package or the ST25R Embedded Library Firmware package? Have you generated your application with STM32CubeMX+X-CUBE-NFC9?
Could you check that the EXTI interrup of the pin connected to the ST25R100 interrupt line is enabled and that the st25r200Isr is properly called by the interrup handler? Also check the priority of the EXTI interrupt versus the priority of SYSTICK interrup. Is the platformProtectST25RComm properly implemented?
Rgds
BT
2025-12-14 10:16 AM
Hi,
do you use the X-CUBE-NFC9 Firmware package or the ST25R Embedded Library Firmware package? Have you generated your application with STM32CubeMX+X-CUBE-NFC9?
Could you check that the EXTI interrup of the pin connected to the ST25R100 interrupt line is enabled and that the st25r200Isr is properly called by the interrup handler? Also check the priority of the EXTI interrupt versus the priority of SYSTICK interrup. Is the platformProtectST25RComm properly implemented?
Rgds
BT
2025-12-15 2:36 AM
Hello
Thank you for the response,
I Corrected Priority and Enabled NVIC EXTI and also called the st25r200Isr,
Now the infinite loop issue gone.
I'm using ST25NFC_Embedded_Lib_ST25R200_1.8.0,
STMicroelectronics\ST25NFC_Embedded_Lib_ST25R200_1.8.0\Middlewares\ST\RFAL
I generated code using STM CUBE IDE FOR STM32F407 Discovery Board , included above path to use the library.
I Have done SPI Connection from my discovery board to X-NUCLEO-FC09A1 Board.
Now I'm stuck at
case DEMO_ST_DISCOVERY:
if( rfalNfcIsDevActivated( rfalNfcGetState() ) )
I'm getting RFAL_NFC_STATE_POLL_TECHDETECT:
2025-12-15 2:50 AM
Hi,
could you enable ST25R_SELFTEST and ST25R_SELFTEST_TIMER compilation flags?
Which tag (manufacturer and model) do you use for your tests?
Could you check with a scope that the RF field is on?
Rgds
BT
2025-12-15 3:58 AM
Hello
I Enabled Self Test, going to error platformErrorHandle();
RFAL_ERR_SYSTEM 8
Im using a card ISO 14443-3A by NXP- MIfare Clasic
I don't have any equipment to check RF Filed
Vinod
2025-12-15 4:42 AM
Hi,
could you check the implementation of the following macros in rfal_platform.h:
See an example of rfal_platform.h in polling demo in the ST25NFC_Embedded_Lib_ST25R200 package.
Rgds
BT
2025-12-15 4:58 AM
2025-12-15 5:17 AM
Hi,
I suspect that the system tick is not configured correctly.
How is the system tick being implemented in your application? Could you check that the tick is regularly incremented? Could you toggle a GPIO for 50ms using HAL_Delay(50) and check the output with a scope connected to the GPIO?
Rgds
BT
2025-12-15 5:44 AM
uint32_t t1 = HAL_GetTick();
HAL_Delay(10);
uint32_t t2 = HAL_GetTick();
t2 - t1 ≈ 11
I'm getting above difference.
2025-12-15 11:38 PM
Hi,
Could you check the accuracy of the system tick? e.g. toggle a GPIO and connect a logic analyzer.
To check the RF field, just connect the ground of a scope probe to the tip of the probe. This creates a antenna loop that can be used to probe the RF signal.
Rgds
BT