Showing results for 
Search instead for 
Did you mean: 

Is there a simple solution to chunk the data when doing STM32 Azure RTOS OTA Update


I am experimenting with an STM32 running Azure RTOS connected to Azure Cloud to perform Over The Air (OTA) updates of the firmware via an IoT SIM connection.

However when the cellular signal strength is poor the connection often fails or times-out during updates.

When that happens the update restarts from the beginning and often hits the same problem again and again.

1/ Is there a way to (easily) chunk up the download so on error the download restarts from the last good packet received rather than starting over from the beginning?  

2/ Alternatively is chunking more easily achieved with other tools such as say FreeRTOS, AWS cloud services etc?

ST Employee

Hello @GideonSimon123 

The short answer is that it is not possible. The long answer is that it may be feasible, but it would require evaluation. This would necessitate changes to the Azure IoT SDK, which is the responsibility of Microsoft. It may also require a change on the secure manager side.
Therefore, it can be concluded that it is not possible.

Thank you for your feedback.

Since posting my question I have heard a rumour that there is a solution from the Azure Cloud side. 

Apparently Azure Cloud supports a file offset parameter. You can track how much of a file has been successfully downloaded and after a loss of comms the download can restart at the offset.

I am now searching for more information on how to configure that.