cancel
Showing results for 
Search instead for 
Did you mean: 

BLE: STM32WB55CCU6 SHCI_C2_BLE_Init fail

Leo Tai
Associate II

I am developing the BLE application on my custom PCB using MCU STM32WB55CCU6. However, it gets stuck in

  if (SHCI_C2_BLE_Init( &ble_init_cmd_packet ) != SHCI_Success)
  {
    Error_Handler();
  }

It returns SHCI_FUS_CMD_NOT_SUPPORTED instead of SHCI_Success so it jumps into the Error_Handler().

I tried to flash the FW into the nucleo board. It works perfectly fine. But it failed to initialise the BLE stack on my custom PCB. Therefore, I think it should be the hardware problem.

I checked HSE and LSE clk. They are initialised successfully and the waveforms can be observed in CRO. I am sure that they are oscillating.

Can anyone give me some advise on this issue? Thank you very much

1 ACCEPTED SOLUTION

Accepted Solutions
Remi QUINTIN
ST Employee

If SFSA was shown as 0xF6, then you have a very old FUS that needs to be upgraded to properly installed the most recent FW versions .

So, you first have to upgrade the FUS to version 1.0.2 using the stm32wb5x_FUS_fw_1_0_2.bin binary under the STM32Cube_FW_WB_V1.11.0\Projects\STM32WB_Copro_Wireless_Binaries\STM32WB5x directory. The SFSA should then be 0xF4.

Then execute the same with the stm32wb5x_FUS_fw.bin binary at the same location. The SFSA should not change with this second upgrade.

With this latest version (v1.1.0), you should get no error as more commands are supported.

View solution in original post

2 REPLIES 2
Leo Tai
Associate II

https://community.st.com/s/question/0D53W00000CQ1gqSAD/ble-stack-installation

According to the above question, one answer mentioned about the option bytes SFSA should be 0xCB if Full BLE Stack is installed. I checked the nucleo board and the SFSA value is 0xCB. However, if I look at the SFSA in my case, it was shown as 0xF6. It seems that I failed to install the BLE stack.

0693W000008zs1MQAQ.png 0693W000008zs1RQAQ.png

Remi QUINTIN
ST Employee

If SFSA was shown as 0xF6, then you have a very old FUS that needs to be upgraded to properly installed the most recent FW versions .

So, you first have to upgrade the FUS to version 1.0.2 using the stm32wb5x_FUS_fw_1_0_2.bin binary under the STM32Cube_FW_WB_V1.11.0\Projects\STM32WB_Copro_Wireless_Binaries\STM32WB5x directory. The SFSA should then be 0xF4.

Then execute the same with the stm32wb5x_FUS_fw.bin binary at the same location. The SFSA should not change with this second upgrade.

With this latest version (v1.1.0), you should get no error as more commands are supported.