OTA support for BCM94343W?

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

cross mob
Anonymous
Not applicable

Does BCM4343W have OTA Support?

http://cloudconnectkits.org/sites/default/files/Tutorial%20Part2%20-%20App%20Development%20using%20W...

Slide#22 mentions OTA Support. But am seeing conflicting information. 

Can you please provide some links with information on implementing OTA Updates.

Thanks.

0 Likes
25 Replies
Anonymous
Not applicable

Am using WICED SDK 3.5.2

0 Likes

I believe that SDK 3.5.2 was the release where we were transitioning to OTA2 from the original form of OTA (changes to the DCT structure): Re: Issue with OTA on SDK 3.5.2 with BCM943362WCD4_EVB

OTA on 3.1.2 is discussed here: WICED OTA Upgrade and Factory Reset (SDK 3.1.2) 

OTA2 was introduced with SDK 3.7.0, but I believe that it still is only tested with the BCM43907 product.  More here: WICED OTA Upgrade and Factory Reset (SDK 3.1.2)

The first link above offers a work around on SDK 3.5.2.  You may want to give that a try.

In addition, we are working on putting together a matrix which shows which devices are supported under which SDK, so this should help as well.

0 Likes

The fact is OTA for BCM94343W does not work on latest 3.7.x SDK.

Multiple users reported this issue for 1 or 2 months.

Note, I mean OTA not OTA2.

Hope this will be fixed in next 3.7.x release.

0 Likes

axel.lin

Per this thread and several of the others where you have commented on the same issue, I have managed to garnish some attention from the core developers on this issue.

I have been asked to collect all of the pertinent details for how to recreate the issue on one of the broad market platforms supported here on the community: BCM43362, BCM43364, BCM43340, BCM4343W.  Preferably, on one of our eval boards.

Since you have alot of experience with our SDK, would you be able to provide some guidance in the area of how to build, test, etc. on a specific platform to start (one of those above).  I will then push this back into the core team and try to get them to prioritize as if we figure out the workaround, it can help many others here on the community.

Thanks in advance for your help.

0 Likes

Hi mwf_mmfae​,

Thanks for steping in.

I test it on SPIL N08 which is a BCM94343W platform.

Regarding how to build/test, there is no special work. Just follow the ota_fr procedure.

Actually, I had spent whole day to debug this issue but still no idea so far.

For your team, I think it's important to check if it's a regression or not.

If it's a regression, you should be able to find the bad commit quickly.

In the discussion on the other thread, it seems OTA only fails on platforms with internal flash.

I thought BCM94343W is used by many users so it's really a surprise that the OTA does not work.

PS. xavier@candyhouse reported similar issue 4 months ago but cypress team does not provide the real fix so far.

0 Likes

axel.lin wrote:

PS. xavier@candyhouse reported similar issue 4 months ago but cypress team does not provide the real fix so far.

Hi mwf_mmfae

What I want to say is:

It's really strange that an issue reported for many months but don't get proper fix.

There are many developers from different companies are open mind and share

some patches/fixes on the forum. It would be better if WICED team can actively

interact on the forum to review bug reports/patches, to discuss and send fix on the forum.

It's actually pretty common in software that people find issues *after* sdk release.

Send back the fix on the forum for testing is better than let people waiting for next release.

Let's not stray off track; I'm aware of all of the other threads on the topic and have been actively trying to address them internally.

We need to prove the theory which states that since SDK 3.6 (or was it 3.5.2?) was released, OTA (NOT OTA2) has not worked on any of our "standard" platforms.

I then need to define a very straight forward OTA Scenerio using a common platform (i.e. one of our evaluation boards for the 4343W, 43362, 43364, 43340) that fails.  I see alot of threads on the topic, but most involve custom applications, memory partitioning, partner modules, etc.  I am essentially trying to reduce the initial analysis down to something basic that can be reproduced by the team in their lab,

With the understanding that the standard OTA app (ota_fr) is copied to (and runs from) MCU RAM during an OTA upgrade, and that MCU RAM size itself imposes limitations on the image size, I need to define a test scenario where the process shown here: WICED OTA Upgrade and Factory Reset (SDK 3.1.2)

0 Likes

In below thread, rash already replied he can reproduce this issue on Nov, 1.

https://community.cypress.com/thread/7328

So I assume cypress team has no problem to reproduce it.

Since your team can reproduce, so you don't need to suspect custom applications,

memory partitioning, partner modules, etc.

You don't need to ask the people to image size as you will get various different answers by different users.

Your team should be able no problem to simulate different image size and test it.

i.e. Your team should be no problem to figure out if image size is a problem or not.

Regarding if it's a regression or not, it's your team's responsibility to figure out.

It's simple by just testing ota_fr on different SDK version.

I personally don't think the image size is a problem because my factory reset default image is very small.

I might over react yesterday, my apologies.

My firmware application is almost feature ready, but I am still waiting for the BESL memory leak issue.

I finally convince my customer that there is an issue in TLS support now, it will be fixed soon by OTA.

But recently I found OTA also does not work!

This is really embarrassed and I'm afraid we cannot deliver the firmware without working OTA.

Hope you can understand my situation -- the blocking issue is now in the SDK.

I will create a use case for the developers and include a detailed version of dialog noted in the discussion noted above.

0 Likes
Anonymous
Not applicable

WICED OTA2 Application Note PDF Documents says ...

"OTA2 is supported on BCM94390x and STM32F4xx platforms under ThreadX"

ota2_example.mk file, supports the documentation.

VALID_PLATFORMS    := BCM943909WCD1_3* BCM943907WAE_1* BCM943907WAE2_1* BCM943907AEVAL2F* BCM943907AEVAL1F* BCM943907WCD1

INVALID_PLATFORMS := BCM943909WCD1_3_SDIO*

Am i to assume now that OTA Support does not exists for BCM94343W. Any one knows otherwise or have gotten it to work? It does have STM32F4xx MCU.

0 Likes

akolamb1 wrote:

Am i to assume now that OTA Support does not exists for BCM94343W. Any one knows otherwise or have gotten it to work? It does have STM32F4xx MCU.

OTA should still work.

0 Likes

akolamb1 wrote:

WICED OTA2 Application Note PDF Documents says ...

"OTA2 is supported on BCM94390x and STM32F4xx platforms under ThreadX"

I'm wondering if Cypress team has tested OTA2 on STM32F4xx platforms.

If yes, which platform file is the best choice for reference?

I have escalated the OTA issue with developers (provided use case scenario that our internal L1 team validated as well) and was given a two week window before they would have a chance to look into it.

0 Likes

My issue is already fixed by applied robjderr's change.

0 Likes

I need the developers to confirm that OTA (Not OTA2) works within SDK versions 3.6.3 through 3.7.x for the following broad market platforms:

BCM943364WCD1_EVB

BCM94343WWCD1_EVB

BCM943362WCD4_EVB

This help article was created for 3.1.2, but somewhere between that point it seems we lost support.: WICED OTA Upgrade and Factory Reset (SDK 3.1.2)

Is that your understanding as well? If there is no longer support for standard OTA, then I need to figure out the plan for moving these STM32FXXX platforms over to OTA2, because the 4390X discussed here: OTA2 Update for SDK-3.7.0

Is irrelevant to most users here in the forum since the 4390X has yet to move to the broad market.

0 Likes

mwf_mmfae wrote:

If there is no longer support for standard OTA, then I need to figure out the plan for moving these STM32FXXX platforms over to OTA2, because the 4390X discussed here: OTA2 Update for SDK-3.7.0

Is irrelevant to most users here in the forum since the 4390X has yet to move to the broad market.

I think in previous discussion the Broadcom/Cypress team give people wrong expectation that OTA2 can replace OTA.

The fact is OTA2 requrires more storage to work (maybe 8MB flash, I'm not sure as there is no official document mentioned the minimum storage requirement.).

You cannot just drop OTA support, unless you can confirm OTA2 also works for devices with on small flash. (e.g. 2MB flash)

Otherwise, people still need OTA to work.

Agree 100%

I've solicited support from jaeyoung​ as she is going to test out the instructions in her aforementioned blog with the Avnet 4343W board and the BCM943362WCD4_EVB to determine how close we are to a working version of OTA for these very popular broad market evbs,

0 Likes

I've tested OTA for both WICED SDK 3.7.0 and Studio 4.0 and they run successfully with no issues using the snip.scan app as the update. Instructions from the following blog post was used;

WICED OTA Upgrade and Factory Reset (SDK 3.1.2)

BCM94343W_AVN and BCM943362WCD4 were used in testing and the OTA update and the following reset/scan run as expected on both. I'll try out other apps with bigger sizes but it seems the basic function of OTA is working.

Amit, Axel,

Are you saying that the OTA does not work with the stock example apps?

Thanks,

Jaeyoung

jaeyoung wrote:

I've tested OTA for both WICED SDK 3.7.0 and Studio 4.0 and they run successfully with no issues using the snip.scan app as the update. Instructions from the following blog post was used;  WICED OTA…

I need to apply robjderr's changes in https://community.cypress.com/thread/7328?start=15&tstart=0

Otherwise it does not work.

Other people have reported exactly the same issue.

I have no idea why you don't need to apply robjderr's changes.

0 Likes

Hi Axel,

Yes, we are looking into robjderr's changes and will incorporate it into the SDK if it is confirmed. In the meantime, can you let us know which of the snip apps you used for OTA testing? The issue seems to occur intermittently so knowing which app you used would help us nail it down. Thank you.

Best,

Jaeyoung

0 Likes

jaeyoung wrote:

Hi Axel,

Yes, we are looking into robjderr's changes and will incorporate it into the SDK if it is confirmed. In the meantime, can you let us know which of the snip apps you used for OTA testing? The issue seems to occur intermittently so knowing which app you used would help us nail it down. Thank you.

Best,

Jaeyoung

I remember that when I found it didn't work for my own application, I tested it follow the standard documentation. i.e. using snip.scan for test and result is the same.

I don't think it's related to any snip apps.

0 Likes
Anonymous
Not applicable

Hi.

I want confirm that OTA not worked for me. Because have more errors.

One off real system errors I reported her: Incorrectly using wiced_packet_get_data return params .

Possible,  OTA tested on the "table", not in real system. If packet not merged then Ok it work, when packet are merged then problem.

Other note:

robjderr's write:

When the system resets the values in spi_current_config aren't reset and the system assumes that the spi bus has already been configured and doesn't properly enable the spi bus.  So the system halts when the spi bus is accessed because it's not enabled.

It possible same problem I reported her: Bootloader error

I am using the OTA on an Avnet BCM4343W_AVN. My application is about 50-60% bigger than snip scan_fr. My app doesn't work with OTA unless I disable FR_APP and DCT_IMAGE in the make file. I have modified the app to rebuild the DCT if not correct for the new downloaded app.I have used SDK 3.7.0 and 4.0.

I assume the board needs more flash and ram and will never work with OTA2 due to the much larger resource requirements.

Is there any documentation on the memory requirements for OTA?

0 Likes
Anonymous
Not applicable

Jayi,

Yes OTA does work for me with on Avnet BCM94343W_AVN Platform. But it seems OTA only provides SoftAP based application update capability. I am interested in "Background" over the air update capability where module periodically checks a server for an image and when found automatically updates it. I am assuming OTA does not provide this capability and i will have to use OTA2 for this purpose?

Anyone has Background over-the-air success with Avnet BCM94343 using OTA2?

OTA2 is resource intensive and requires more memory than what is available on partner modules with embedded STM32 F411/F412 MCUs.  This is most likely why the only implementation supported today uses the BCM/CYW4390X, which has a CPU internal to the device with lots of available memory.  The team has gotten OTA2 to work on an STM32, but it was the highest end unit available at the time.  It required alot of custom work to get this working, which is why we have been slow to release OTA2 to the broad market on standard STM32 based partner modules.

jayi