OTA2 on CYW943907AEVAL1F Eval. Brd.: Start AP & Push New APP File

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
ChMa_3922746
Level 5
Level 5
10 likes received 10 likes given 5 likes given

I was going through the documentation on implementing OTA2.  Reference is made in the support doc about the extract application being able to:

"Start the SoftAP, DHCP server, and web server to allow connection from a PC to “PUSH” a new version to the OTA2 Staging Area. "

This is the exact functionality I am looking for, but I see it does not appear to be supported by the ota2_example code.

My question is:  Has anyone got the Soft AP and push functionality working (where a client is presented with a webpage and a file is uploaded to the device)?  Or, is there an example of this anywhere?

Thanks!

0 Likes
1 Solution

Thank you.  That thread was very useful.  The key take-aways for me were:

(Note:  In the following, myapplication is the name of my custom application which the user will ultimately run on the device.)

1) The directives as outlined here need to be added to the make file for myapplication (verbatim):

OTA_APPLICATION := snip.ota2_extract-$(PLATFORM)

OTA_APP := build/$(OTA_APPLICATION)/binary/$(OTA_APPLICATION).stripped.elf

2) Make clean.

3) Then, make:

snip.ota2_extract-CYW943907AEVAL1F

(Repeat if build step fails.)

4) Then, make:

snip.ota2_example-CYW943907AEVAL1F ota2_factory_download

(Repeat if build step fails.)

5) Then, make:

snip.ota2_example-CYW943907AEVAL1F ota2_image download_apps download run

(I've seen a "segmentation fault" reported more than once on the console at this step, but I simply repeat it.  This is using Eclipse on Linux.)

6) After it downloads the load and boots, it attempts to download a new image from a network site.  However, I do not plan to support that.  So, I need to press SW1 down, toggle the reset button, then keep holding SW1 down for at >5 sec, but <10 sec.  Then the soft AP starts.  I can then connect to 192.168.10.1.

7) I make my application so that it generates the file "OTA2_image_file.bin":

demo.myapplication-CYW943907AEVAL1F ota2_image

😎 Then, I can click on the file to upload it, which in my case is stored at:

/WICED-Studio-6.2/43xxx_Wi-Fi/build/demo.myapplication-CYW943907AEVAL1F/OTA2_image_file.bin

(During the upload, I've seen it freeze once at around 30%, but I simply reset the board and started again.  It could have been a Firefox/javascript problem.)

9) After download hits 100%, the board reboots extracts the load and then boots into myapplication.  When I do a short-press on reset, it also boots into my application.  I can go to step (5) at anytime to download a new application.

10) If SW1 is pressed for more than 10 seconds, then the factory image is restored and things go back to step (6).

Good stuff!  I am impressed.

View solution in original post

2 Replies
Zhengbao_Zhang
Moderator
Moderator
Moderator
250 sign-ins First comment on KBA 10 questions asked

hello:

kindly check this thread,  then we will discuss the PUSH function.

Re: Problems with OTA2: flashing device and firmware_reset (con't)

Thank you.  That thread was very useful.  The key take-aways for me were:

(Note:  In the following, myapplication is the name of my custom application which the user will ultimately run on the device.)

1) The directives as outlined here need to be added to the make file for myapplication (verbatim):

OTA_APPLICATION := snip.ota2_extract-$(PLATFORM)

OTA_APP := build/$(OTA_APPLICATION)/binary/$(OTA_APPLICATION).stripped.elf

2) Make clean.

3) Then, make:

snip.ota2_extract-CYW943907AEVAL1F

(Repeat if build step fails.)

4) Then, make:

snip.ota2_example-CYW943907AEVAL1F ota2_factory_download

(Repeat if build step fails.)

5) Then, make:

snip.ota2_example-CYW943907AEVAL1F ota2_image download_apps download run

(I've seen a "segmentation fault" reported more than once on the console at this step, but I simply repeat it.  This is using Eclipse on Linux.)

6) After it downloads the load and boots, it attempts to download a new image from a network site.  However, I do not plan to support that.  So, I need to press SW1 down, toggle the reset button, then keep holding SW1 down for at >5 sec, but <10 sec.  Then the soft AP starts.  I can then connect to 192.168.10.1.

7) I make my application so that it generates the file "OTA2_image_file.bin":

demo.myapplication-CYW943907AEVAL1F ota2_image

😎 Then, I can click on the file to upload it, which in my case is stored at:

/WICED-Studio-6.2/43xxx_Wi-Fi/build/demo.myapplication-CYW943907AEVAL1F/OTA2_image_file.bin

(During the upload, I've seen it freeze once at around 30%, but I simply reset the board and started again.  It could have been a Firefox/javascript problem.)

9) After download hits 100%, the board reboots extracts the load and then boots into myapplication.  When I do a short-press on reset, it also boots into my application.  I can go to step (5) at anytime to download a new application.

10) If SW1 is pressed for more than 10 seconds, then the factory image is restored and things go back to step (6).

Good stuff!  I am impressed.