5 Replies Latest reply on Jan 29, 2020 10:40 PM by KotnaniK_71

    How to edit makefiles to add OTA2 to STM32F412

    TaFu_4610481

      Hello,

       

      We are trying to add OTA2 to our application running on STM32F412.

      We have read the document (WICED OTA2 Update Support), however, still don't understand how to edit makefiles.

      Based on the chapter 8 "Adding OTA2 to a new platform", we have edited some makefiles but we are facing a problem of the ota2_bootloader is not build.

      The console of the WICED Studio outputs following build log:

      "Skipping building bootloader due to NO_BOOTLOADER_REQUIRED"

      Do we need to edit more makefiles other than described in the chapter 8?

       

      Thanks.

        • 1. Re: How to edit makefiles to add OTA2 to STM32F412
          KotnaniK_71

          Hi,

           

          Can you please check the below thread posts and see if it helps.

          OTA Method for CYW43438+STM32F412

          Over The Air update in CYW43907 

           

          Thanks.

          • 2. Re: How to edit makefiles to add OTA2 to STM32F412
            TaFu_4610481

            Hello,

             

            Thank you for your response.

            According to "OTA Method for CYW43438+STM32F412", "Over The Air update in CYW43907" and sample makefiles in installed directory "\WICED-Studio-6.4\43xxx_Wi-Fi\platforms", it seems to me that the OTA2 is only supported on BCM4390x. When you build an application for BCM94390x, "BCM94390x_common.mk" and "BCM94390x_targets.mk" are used, while for STM32F4xx, "standard_platform_targets.mk" is used instead of these makefiles.

             

            The following is quoted from "standard_platform_targets.mk":

             

            ifeq (1,$(OTA2_SUPPORT))
            NO_BUILD_BOOTLOADER:=1
            NO_BOOTLOADER_REQUIRED:=1
            endif
            

             

            I assume that this is why the WICED Studio skips building the ota2_bootloader if OTA2_SUPPORT is enabled. Additionally, I learned that there is another problem of the RAM requirements from the thread.

            Is it absolutely impossible to add OTA2 to STM32F412? I thought it is possible because of the document says "OTA2 is supported on BCM94390x and STM32F4xx platforms under ThreadX".

            I do not need entire functions of example application, so, can I make it possible by using limited components of OTA2 Library?

             

            Thanks.

            • 3. Re: How to edit makefiles to add OTA2 to STM32F412
              KotnaniK_71

              Hi,

               

              STM processors usually don't support OTA2 because of insufficient RAM conditions.It's possible to add OTA2 to STM32F412 by using limited components of OTA2 library but we haven't tested the same for STM32F412 processor.

              Can you please provide some more information about the functions that are not needed for your example application.

               

              Thanks.

              1 of 1 people found this helpful
              • 4. Re: How to edit makefiles to add OTA2 to STM32F412
                TaFu_4610481

                Hello,

                 

                I need the following functions of OTA2:

                 

                1. Refer to the DCT, select an appropriate one from below applications by ota2_bootloader:

                   - Current Application that I developed

                   - Extract Application (extract the OTA2 Image from Staging Area to Current Application Area)

                   - Failsafe Application (extract the OTA2 Image from Factory Reset Area to Current Application Area)

                2. Check if the staged OTA2 Image is valid before extraction.

                3. Keep track of the extracting status until next power cycle.

                  (I want to know whether the extraction has finished successfully or aborted accidentally)

                 

                In other words, I do not need functions concern a web server such as SoftAP.

                Due to the application communicates with the server in a specified way, I must implement this parts.

                So, I have another question:

                When I download the OTA2 Image from the server and save it to the Staging Area, I should copy its binary data to the area in order from the top. Is it right?

                 

                Thanks.

                • 5. Re: How to edit makefiles to add OTA2 to STM32F412
                  KotnaniK_71

                  Hello,

                   

                  For the OTA2 library implementation, the RAM requirements would be around 640 KB if your example application is of size 256 KB. But most of the STM32F412 processors has around 256 KB of RAM and 1 MB of flash size. That's the reason why STM32F412 processors don't support OTA2.

                   

                  I believe it would be more difficult for you to add OTA2 functionality for your implementation and as mentioned in my previous response, we haven't tested OTA2 and doesn't have any ready-made application on OTA2 for STM32F412 processors.

                   

                  Thanks.