cancel
Showing results for 
Search instead for 
Did you mean: 

Not able to get BLE working on STM32WB55CGU6

Jaws404
Associate II

Hello,

I'm trying to get BLE working on my custom STM32WB55CGU6 board. I was following this tutorial since it matches well with my setup: STM32 Bluetooth Firmware Tutorial (Bring-Up) - Phil's Lab #129

However I am not able to see my board using nRF Connect app. Code does not seem to end in any error and keeps looping this part:

  while (1)
  {
    /* USER CODE END WHILE */
    MX_APPE_Process();

    /* USER CODE BEGIN 3 */
  }


I have flashed the FUS and BLE_Stack_full_fw using STM32CubeProgrammer:

Jaws404_0-1742200932945.png


I'm new with STM32CubeIDE tool and would appreciate any help in this matter :smiling_face_with_smiling_eyes:

Here is my full program with schematic of the board: https://github.com/nikorainto/STM32WB55CGU6_BLE_TEST

1 ACCEPTED SOLUTION

Accepted Solutions
FilipKremen
ST Employee

Thank you, currently the MCU is running FUS.

STM32WB Firmware Upgrade Service - stm32mcu

Please connect the board to STM32CubeProgrammer, click on "Start Wireless Stack" button and flash the application again. It should fix the issue.

Best regards,

FK

View solution in original post

6 REPLIES 6
FilipKremen
ST Employee

Hello,

can you please place a breakpoint in APPE_SysUserEvtRx function to see the event code? (app_entry.c)

You can start debugging by clicking on the bug button.

Best regards,

FK

Thank you for reaching out :smiling_face_with_smiling_eyes: I took a screenshot of the values it shows

Jaws404_0-1742206175565.png

FilipKremen
ST Employee

The event code seems okay. Can you please step further?

In APPE_SysEvtReadyProcessing function, the code should jump at WIRELESS_FW_RUNNING.

APP_BLE_Init() function must be called to start advertising.

Best regards,

FK

 

It seems not to enter the "wireless firmware running" block but instead this

 

else if (p_sys_ready_event->sysevt_ready_rsp == FUS_FW_RUNNING)
  {
    /**
    * The FUS firmware is running on the CPU2
    * In the scope of this application, there should be no case when we get here
    */
    APP_DBG_MSG(">>== SHCI_SUB_EVT_CODE_READY - FUS_FW_RUNNING \n\r");

    /* The packet shall not be released as this is not supported by the FUS */
    ((tSHCI_UserEvtRxParam*)pPayload)->status = SHCI_TL_UserEventFlow_Disable;
  }

 

Jaws404_0-1742212953184.png

Red arrow points that the second breakpoint is not reached

FilipKremen
ST Employee

Thank you, currently the MCU is running FUS.

STM32WB Firmware Upgrade Service - stm32mcu

Please connect the board to STM32CubeProgrammer, click on "Start Wireless Stack" button and flash the application again. It should fix the issue.

Best regards,

FK

Thank you a lot! Somehow I have missed this step but it seemed to fix and now I'm able to continue!