cancel
Showing results for 
Search instead for 
Did you mean: 

How to port the ST25RU3993 firmware to a stand alone MCU board?

MSerr.1
Associate II

Hi there,

We are working with the ST245RU3993 and have the EVAL board working correctly with the provided GUI.

We now want to control the ST25RU3993 via SPI with a ARM MCU. This ARM MCU will operate independently, as sketched in "Device side usage" in the STUHFL User Manual (see attached file).

Is there any guideline to follow on how to achieve this setup? Or any indications, hints or tips?

So, our aim is to have an independent MCU that controls the ST25RU3993 to read/write to the tags in range.

Thanks in advance,

Max Serra

1 ACCEPTED SOLUTION

Accepted Solutions
Nick K
ST Employee

Hi Max,

you can disable the STM32 MCU on the board itself without remove it. But this involves a view steps to do.

1. Remove R7, R8, R9, R11 (NCS, CLK, MISO, MOSI) and R12, R13 (IRQ, EN) and connect on the pin-header your SPI and GPIOs

2. Remove R61 on the board short circuit C25. This reduce power consumption by putting the STM32L4 into shutdown

3. Remove R38, R39 and R40. This will allow you to use the carrier cancellation from your MCU. Use the ETC_3, ETC_2 and ETC_1 pins on the board

4. The ST25RU3993 EVAL board has a RF switch to switch between the internal and a external PA. To drive this from your MCU you need to controll PA_SW_V1 and PA_SW_V2 lines. The easiest way to do this is to solder wires to the STM32L4 MCU pin 25 (PA_SW_V1) and pin26 (PA_SW_V2) and controll the switch from your MCU

Finally you need to supply the board via P2 and connect GND. You need approx 800mA @ 5V.

All this modifications are reversable. If you not already have it you could find the schematic at st.com under the following link.

https://www.st.com/content/ccc/resource/technical/layouts_and_diagrams/schematic_pack/group0/48/cd/17/2f/f5/51/47/88/ST25RU3993-EVAL/files/ST25RU3993-EVAL_schematic.PDF/jcr:content/translations/en.ST25RU3993-EVAL_schematic.PDF

Thanks for the feedback about the portability. We tried to abstract the Low level drivers as good as possible, but for sure this could be more user/developer friendly.

BR

Nick

View solution in original post

17 REPLIES 17
Nick K
ST Employee

Hi Max,

yes ​it is possible to drive the ST25RU3993 IC with a different MCU then the STM32 which is on the EVAL board. 

You can even use the EVAL board to do so. On the PCB of the EVAL board there are the SPI lines as pins to be used for intercepting the communication when removing the STM32L4 MCU on the board.

the FW source code that is provided to drive the ST25RU3993 is using a STM32L4 MCU. When you want to use a different MCU you need to replace the

STM32L4 platform specific low level drivers with HW specific code of your new MCU. These is the initalisation of your MCU, the functionality of the peripherials (SPI, UART, Timers, GPIOs, ..) and the IRQ handling. The logic that uses this low level functionality then to communicate with the ST25RU3993 and handle the Gen2 protocol can then reused with another MCU.

BR

Nick

MSerr.1
Associate II

Hi Nick,

To use the EVAL as you mention, is it compulsory to remove the STM32L4?

Is there no way to communicate with the ST25RU3993 on the EVAL board without making a (likely) irreversible change?

Thanks, on a FW level we are progressing. It took me some time to fully grasp the structure and dependencies of the code, but we are progressing.

I would suggest ST to develop or provide a more lean implementation of this FW. I understand that it is developed with the STM32 uC in mind, but since the ST25RU3993 is such a nice chip I would conceive ST providing its FW in a more "easy-to-port" style.

BR

Max Serra

Nick K
ST Employee

Hi Max,

you can disable the STM32 MCU on the board itself without remove it. But this involves a view steps to do.

1. Remove R7, R8, R9, R11 (NCS, CLK, MISO, MOSI) and R12, R13 (IRQ, EN) and connect on the pin-header your SPI and GPIOs

2. Remove R61 on the board short circuit C25. This reduce power consumption by putting the STM32L4 into shutdown

3. Remove R38, R39 and R40. This will allow you to use the carrier cancellation from your MCU. Use the ETC_3, ETC_2 and ETC_1 pins on the board

4. The ST25RU3993 EVAL board has a RF switch to switch between the internal and a external PA. To drive this from your MCU you need to controll PA_SW_V1 and PA_SW_V2 lines. The easiest way to do this is to solder wires to the STM32L4 MCU pin 25 (PA_SW_V1) and pin26 (PA_SW_V2) and controll the switch from your MCU

Finally you need to supply the board via P2 and connect GND. You need approx 800mA @ 5V.

All this modifications are reversable. If you not already have it you could find the schematic at st.com under the following link.

https://www.st.com/content/ccc/resource/technical/layouts_and_diagrams/schematic_pack/group0/48/cd/17/2f/f5/51/47/88/ST25RU3993-EVAL/files/ST25RU3993-EVAL_schematic.PDF/jcr:content/translations/en.ST25RU3993-EVAL_schematic.PDF

Thanks for the feedback about the portability. We tried to abstract the Low level drivers as good as possible, but for sure this could be more user/developer friendly.

BR

Nick

SS1
Associate II

Hi Nick,

I have a question regarding "To disable the STM32 MCU on the board itself without removing it", can we acheive this by setting NRST pin 7 of MCU to low? Does this acheive disconnecting the interface of SPI so that we can connect to another MCU? OR Any means does it help stopping the power supply to MCU, by which MCU doesn't powers ON at all?

Is it possible to acheive this? If not can you state the exact use of RESET PIN to MCU?

Thanks in Advance!

Nick K
ST Employee

​Hi,

I would not recomment this, because the NRST pin brings the STM32 into reset state and the MCU is still powered. Until the HW/SW is not "boot-up" HW-blocks and corresponding pins are in an undefined state. It may work but to be sure that the STM32 is not inflence your MCU please remove the solder-brigdes as described in my previouse post.

BR

SS1
Associate II

Hi,

Thanks for the reply!

Can you please elaborate "the NRST pin brings the STM32 into reset state" - this statement? What actually a reset state does? Does it remain in undefined state?

Kindly help with the same!

Nick K
ST Employee

with reset state I mean the HW processes a new startup of the IC. Reset all peripherials and startup/boot the SW again.

When you hold the RST pin the FW will never startup up and the HW initalization will never finish and the MCU may drive same undefined signals on some pins that could influence your other/new MCU.

BR

Hi Nick

I had a similar question, instead of disabling the on-board uC, I wish to disable the on-board RFID chip. We are designing our RF FRont end based on STRU3993 and connect its SPI to eval board SPI. There is no pull up/down resistors that would put RFID chip to shutdown. I am a hardware engineer and would like to use the same FW on uC and windows GUI to detect tags. We are limited in FW development efforts and so recommendations from the hardware side to finalize our PCB would be very helpful.

Thanks

​Hi LKUMA.1

The ST25RU3993 has an EN pin. With this you can disable the IC. But if you would like to use the FW without any modification you need to cut off the EN line of the onboard 3993 and force it to LOW (hardwired). The EN line driven from the MCU, by the FW, is still needed to enable then the 3993 on your new RF-frontend, therefore you need to care that the line is cut off to the old 3993 but still connected to the new 3993.

Please be aware that If you do not plan to modify the FW the FW willl still control the antenna switch and the PA on the EVAL-board.

BR Nick