cancel
Showing results for 
Search instead for 
Did you mean: 

We have a product using the stm32wb55 that can be exposed to strong electromagnetic files. We occasionally see the HCI_HARDWARE_ERROR_EVENT (time overrun) error from the radio and lose the BLE link. Is there a way to restart the radio when this happens?

User1655833706281357277
Associate III

Ideally using something like the HCI_RESET command is preferable for our application rather than simply cycling power or resetting the system. Is there some procedure for recycling the M0 processor in the stm32wb while leaving the application processor running? I'm not finding any informatio on what to do after issuing HCI_RESET to try to get the BLE radio back up.

Thank you.

10 REPLIES 10
SAli.8
Associate II

Sorry for jumping in, I have similar issue in a different scenario that when I jump from bootloader at 0x08000000 to application binary at 0x08024000, BLE advertisement does not work.

Both bootloader and application use BLE with different services.

It is suggested here to stop or re-init BLE stack somehow:

ble_reinit_issue

So, I wish to do the same but calling SHCI_C2_Reinit or SHCI_C2_802_15_4_DeInit in hopes that we can later re-init BLE does not work and CPU1 code remains blocked waiting for response from CPU2 (wireless core).

Calling hci_reset() from ble_hci_le.h header included gives link time error and I could not find any work around for this.