cancel
Showing results for 
Search instead for 
Did you mean: 

Bring-up NFC06A1 on NUCLEO-F446RE

SRauh.1
Associate II

Hello Community,

I am new in the topic of nfc and programming of nucleo boards.

So, the questions can seem to be very stubid 😉

For a project I try to bring up a X-Nucleo-NFC06A1 on top of a Nucleo -F446RE.

On web (ST,...) I found code examples for different nucleo boards.

If I import the supported examplary projects into the Cube IDE, everything works quite well...but with the wrong Nucleo board.

I can't find any guidline to bring up the NFC extension board with the F446RE.

And also the NFC06A1 cannot be imported via Devcie config Tool (software packets).

So my (stupid) questions:

  • Is there a guidline / video / ... available which describes the steps to port the existing examples to the f446re
  • What files of the Middleware/Driver should be included to get the NFC06A1 running in from a default F446RE project
  • How should the f446re be configured (SPI,...)

Thanks for every helpfull comment,

Sebastian

1 ACCEPTED SOLUTION

Accepted Solutions
Brian TIDAL
ST Employee

Hi Sebastian,

there is no specific linker option or lib/libpathc/etc.. Make sure rfal_nfc.c is compiled and that rfal_nfc.o is in the list of objects being linked by the linker.

Rgds

BT

In order to give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.

View solution in original post

5 REPLIES 5
Brian TIDAL
ST Employee

Hi Sebastian and welcome to ST community.

First of all, I would recommend to use the ST25 Embedded NFC library that is the most up to date package. This package is build on top of NUCLEO-L476RG but it can be ported on other Nucleo board such as the NUCLEO-F446RE. This has to be done "half" manually.

I would suggest you use STM32CubeMX to configure the SPI and the various GPIOs on your NUCLEO-F446RE:

Then you just need to copy the /* USER */ parts of the main.c (and add st25r3916Isr() in EXTI0_IRQHandler) and update the platform.h with the pin mapping

Last step

  • add the various RFAL files in your project
  • update the main.c to add the calls to demoIni and demoCycle
  • update the include path and the defines (add USE_LOGGER and ST25R3916) in the compiler options

I've attached the NUCLEO-L476RG ioc file (STM32CubeMX) for reference.

Rgds

BT

In order to give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.

Hello Brian,

thanks for your answer.

I followed your instructions to port one of the basic examples to the F446RE.

It works up to the point, that some "undefined reference to" errors occur.

0693W00000GZTlGQAX.png 

I already checked the forum to solve the problem, but without success.

It seems to be a linker problem...but to which library path i have to link?

The project structure is

0693W00000GZTw8QAH.png 

Do you have any further information which helps to get the system running?

Regards,

Sebastian

Hi Sebastian,

the mentioned functions are defined in rfal_nfc.c. Should be under the last directory of the shown "Middlewares".

BR, Ulysses

Hi Ulysses,

thanks for your reply.

I already found the references in the rfal_nfc.c, I can use the ctrl-shortcut to go (from demo_polling.c to rfal_nfc.c) to the reference of the corresponding function. Hence, it seems to be a problem with the linker.

So my question: Which Library / Library-Path has to be add in the linker option?

0693W00000GZenvQAD.pngThis doesn't work.

BR, Sebastian

Brian TIDAL
ST Employee

Hi Sebastian,

there is no specific linker option or lib/libpathc/etc.. Make sure rfal_nfc.c is compiled and that rfal_nfc.o is in the list of objects being linked by the linker.

Rgds

BT

In order to give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.