3 Replies Latest reply on Feb 28, 2017 7:11 PM by AxLi_1746341

    UPDATE_FROM_SDK function, upgrade path from 3.1.2 to 4.0.1?

    user_108962310

      I am interested in modernizing the code base that I currently have, which is built on top of SDK 3.1.2 .
      I have seen a lot of bugs get caught on this forum (TLS, memory leak, etc), and it looks like there is a new wifi FW image for the 43362, so I would like to get all those eventually deployed to existing hardware.

       

      Is there documentation about the function in the build system for the UPDATE_FROM_SDK option?

      We currently roll out updates by our own OTA process, where the ELF is loaded into the device in an "App" section of the serial flash. So, I need to make absolutely certain that everything will still work, and to be aware of any address or organizational changes, and then figure out if it will be possible to have a safe upgrade path and all the steps involved.
      So ... slightly daunting. I am presently reading through the makefiles to figure out the implications of that option, but any documentation would help.

        • 1. Re: UPDATE_FROM_SDK function, upgrade path from 3.1.2 to 4.0.1?
          AxLi_1746341

          Run "make" then you should get below usage:

           

              Build an Over The Air (OTA) in-field upgrade for an older SDK (SDK-3.6.3 and up)

              The Bootloader is never updated. Match parts of the DCT with the older SDK Bootloader

           

           

                 make snip.ping-BCM943362WCD4 UPDATE_FROM_SDK=X_X_X <APP_USED_BT=1> <APP_USED_P2P=1> <APP_USED_OTA2=1>

                Where X_X_X is the SDK you are creating an update application for

                Valid SDKs: 3_0_1

                                      3_1_0   3_1_1   3_1_2

                                      3_3_0   3_3_1

                                      3_4_0

                                      3_5_1   3_5_2

                                      3_6_0   3_6_1   3_6_2

                      Optional additions - Must match original app compilation to match these DCT sections

                      APP_USED_BT=1 If Original Applciation used Bluetooth

                      That is, this was added to <application>.mk file:

            GLOBAL_DEFINES += WICED_DCT_INCLUDE_BT_CONFIG

                      APP_USED_P2P=1 If Original Applciation used P2P

                      That is, this was added to <application>.mk file:

            GLOBAL_DEFINES += WICED_DCT_INCLUDE_P2P_CONFIG

                      APP_USED_OTA2=1 If Original Applciation used OTA2

                      That is, if the command line build included "ota2_xxx" as described for OTA2 builds above.  Stop.

          • 2. Re: UPDATE_FROM_SDK function, upgrade path from 3.1.2 to 4.0.1?
            user_108962310

            Thanks for the reply. I really should go in and read the specific of what actions those makefile flags invoke to be sure of the implications.

             

            My concern still remains for upgrading the core libraries (i.e. not just the app section), and then also for the Wi-fi radio FW itself (I think SDK 4.0 and higher has a new radio FW binary?).

            • 3. Re: UPDATE_FROM_SDK function, upgrade path from 3.1.2 to 4.0.1?
              AxLi_1746341

              user_108962310 wrote:

               

              I am interested in modernizing the code base that I currently have, which is built on top of SDK 3.1.2 .
              I have seen a lot of bugs get caught on this forum (TLS, memory leak, etc), and it looks like there is a new wifi FW image for the 43362, so I would like to get all those eventually deployed to existing hardware.

               

              BTW, there is no TLS memory leak in SDK-3.1.2.

              The memory leak happens in SDK-3.7.0 and fixed in SDK-3.7.0-7.