cancel
Showing results for 
Search instead for 
Did you mean: 

ST25R3911B with FreeRTOS

SScar.2
Senior

Hi everybody, 

I need to integrate the ST25R3911B NFC reader (X-NUCLEO-NFC05A1 a.t.m.) into a project with STM32H735G running FreeRTOS (with a TouchGFX task and another peripheral task running ). 

https://community.st.com/t5/st25-nfc-rfid-tags-and-readers/interfacing-st25r3911b-with-stm32f072-using-freertos/m-p/570845#M8893 following this old thread: I integrated https://www.st.com/en/embedded-software/stsw-st25r-lib.html library (latest release v1.5), put NFC ndef r/w demo inside a task with st25r3911Isr called inside EXTI0_IRQHandler and actually it works! But, of course, the SPI reading executed inside an IRQ is not efficient, in fact, other tasks don't work properly. 

So now I'm trying to integrate the FreeRTOS_polling example, located in ST25R3916B / X-NUCLEO-NFC06A1 folder... it looks good to me but I can't get it working correctly, it instantly fails on the demoIni() where rfalNfcInitialize() returns 0x8 System Error. 

Has anyone integrated FreeRTOS correctly with the module (it's ok under STM32L4, MCU porting doesn't seem to be a problem) in order to handle the irq like the example cited above? Do you have any suggestions? 

Thanks for your time

Simone

 

1 ACCEPTED SOLUTION

Accepted Solutions
Ulysses HERNIOSUS
ST Employee

Hi Simone,

using FreeRTOS with ST25R3911B is not really recommended as certain actions are more time critical than for ST25R3916[B] (bigger FIFO, more internal processing). That's why we are not promoting this inside the ST25 Embedded NFC lib.

ERR_SYSTEM does typically hint a basic issue, either basic Register R/W or ISR not operational.

Best Regards, Ulysses

 

 

View solution in original post

3 REPLIES 3
Ulysses HERNIOSUS
ST Employee

Hi Simone,

using FreeRTOS with ST25R3911B is not really recommended as certain actions are more time critical than for ST25R3916[B] (bigger FIFO, more internal processing). That's why we are not promoting this inside the ST25 Embedded NFC lib.

ERR_SYSTEM does typically hint a basic issue, either basic Register R/W or ISR not operational.

Best Regards, Ulysses

 

 

Hi @Ulysses HERNIOSUS , 

Ok, I understand.
Seems also that the library was released some time ago, so I assume that many tests have been done on this.
I can't rid of FreeRTOS on the project because the other threads are fundamental. However, does the solution that I found working sound good to you (nfc task + standard irq)? I can workaround the whole system with that ...

ERR_SYSTEM looks strange also to me, probably is the handling of ISR.
Thanks again,
Simone

 

SScar.2
Senior

EDIT: Actually got It working fine under FreeRTOS,

thanks for the support