Skip to main content
RNair.3
Visitor II
February 13, 2023
Question

How to update STM32F401 firmware over LTE/GSM ?

  • February 13, 2023
  • 10 replies
  • 4923 views

Greetings.

For our data collection devices, we use STM32F401 as the microprocessor and Telit modems to communicate with the server. We are planning to have a feature to update the firmware on the STM32F401 over the air, if possible. Currently we use STM Cube IDE or ST Link Utility to update the firmware. Is there any support for this? Does STM32F401 has enough memory to support this or do we need another processor with a file system to achieve this?

This topic has been closed for replies.

10 replies

KnarfB
Super User
February 13, 2023

It shall be possible. You basically partition the flash in 3 areas: boot loader, firmware1, firmware2. One firmware partition is the current/running firmware, the other will be overwritten with the next firmware update. The boot loader decides which one should run. There is some material around like a video series https://youtu.be/OkUQ3iMmiYQ and more, check the web for STM32 OTA (over the air) boot loader.

F4 series is not the latest and greatest concerning IoT features (crypto, security, trust zone,...) and the F401 flash might be a little small, but it is worth looking into it.

hth

KnarfB

Associate II
May 9, 2024

Hello,

I'm trying to do the same thing, receiving a firmware update for an STM32WB, via a Telit LTE module. Have you had success with this implementation?

Thank you

Tesla DeLorean
Guru
May 9, 2024

https://community.st.com/t5/stm32-mcus-wireless/how-to-update-stm32wb-firmware-over-lte-module/td-p/672350

I've updated my STM32 firmwares using Telit cellular modems..

Used HTTP to find if there is an update for current firmware, used that to pull a secondary .HEX with the new update.

Tips, Buy me a coffee, or three.. PayPal Venmo (See Profile) Up vote any posts that you find helpful, it shows what's working..
Associate II
May 10, 2024

Did you do this using UART?
And did you need to create your own bootloader? Could you give more details on how you did it?

Thank you.

Associate II
May 13, 2024

Do you need to control Boot0 Pin to do that?

Andrew Neil
Super User
May 13, 2024

@Viniciuspsc wrote:

Do you need to control Boot0 Pin to do that?


The AN4657 approach? 

No.

A complex system that works is invariably found to have evolved from a simple system that worked.A complex system designed from scratch never works and cannot be patched up to make it work.