2022-06-23 04:39 AM
Overview:
I have been doing BLE prototyping with an STM32WB55 Nucleo kit (the white PCB, not the USB dongle). I loaded a few different demo projects (BLE Heartbeat, etc) via STM32CubeIDE, but never programmed the wireless stack specifically.
I was noticing some strange behavior with the CW tone enabled via `aci_hal_tone_start()`, so decided it might be related to an older wireless firmware and tried updating it. However, when updating the wireless stack via STM32CubeProgrammer...I observed it was initially reporting FUS v0.0.0.0 and Stack v16.12.0.27 (see attached screenshot).
Questions:
2022-06-23 06:34 AM
FUS 0.0.0.0 may mean that the FUS is not active and the M0+ core is instead running the wireless stack. Hence you get the right info regarding the version of the wireless stack. You need to activate the FUS first to get the relevant info about its version. M0+ core can only execute one or the other.
Regarding ACI_HAL_TONE_START and ACI_HAL_TONE_STOP functions, the support of these commands has to be added in the BLE Full stack and BLE Light stack. This should be done in the next CubeWB FW package v1.14.0 that should be released very soon.
In fact some commands were moved to the BLE extended stack only.
Question 1:
Be not confused with the stack version (v16.12.0.7) and the CubeWB FW package version (V1.13.4 or v1.14.0, ...). The Package contains a set of stacks and applications. What you read when you want to get FUS info is the stack version.
Question 2:
There is a trick to reset the WB device to its manufacturing state (except the pre loaded wireless stack and application which are erased in that case). Write 0x00008000 at address @0x5800040c. The WB device is reset with all its Flash memory erased.
2022-06-23 06:47 AM
Thanks for the quick response Remi.
Would the trick to reset the WB apply if I did a "full chip erase" ? I needed to do a full chip erase to get 1.13.3 installed (otherwise STM32CubeProgrammer complained about authenticity of the wireless binaries).
2022-06-23 06:54 AM
Yes no issue.
In fact you may have to perform a mass erase of the user part of the Flash memory (the part below the address pointed by the SFSA option byte) to avoid having a fake magic word the FUS is looking for to identify the start of the new code to update.
If unfortunately the FUS finds such fake magic word in some remaining data in the user space, it will not be able to verify its authenticity and would issue such error message.
2022-06-25 10:37 AM
@Remy ISSALYS Where can I find documentation containing the list of ACI functions supported by each BLE stack type and version?
2022-06-26 09:17 AM
Wrong question on the wrong post.
Please correct or delete this post.
2022-06-26 07:44 PM
@Remi QUINTIN @Remy ISSALYS
I'm sorry, I thought this site is used to provide technical support. I was not expecting to receive a reprimand for asking a question. You can do better by providing a helpful response and then politely suggesting a better way to create posts that meet your expectations.
2022-06-27 12:08 AM
Hi HCoche
I am really sorry if you found my words too strong in this curt reply.
My goal was absolutely not to reprimand you.
Your question is welcome and fully relevant.
But in order to have an efficient forum, we want to avoid having many different questions mixed is the same thread.
This post is about "Factory FUS + Wireless Stack" and your question is about "The list of ACI functions", which are quite different topics. So the best is either to create a new post or ask your question in a post dealing with a similar topic.
Hope you understand my point. And once again do not see my remark as a reproach.
2022-06-30 12:53 PM
I can confirm the CW tone works with wireless stack 1.14.0. The TX power does not seem to apply to the tone, but maybe that is expected.