This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

HardFault on sd_ble_gap_adv_stop()

Hi,

I'm getting a Hardfault MemManage (IPSR 003) when calling sd_ble_gap_adv_stop(). The advertising handle I'm passing is 0. This is called after the advertising has started using the ble_advertising library. That takes care of calling sd_ble_gap_adv_set_configure() to set the advertising handle.

I'm using the hardfault library from the SDK and it's printing this:

HARD FAULT at 0x0002FE9A
  R0:  0x00000000  R1:  0x00000000  R2:  0x1018F01D  R3:  0x00000000
  R12: 0x00000000  LR:  0x000304EB  PSR: 0x01000016

I took a look at the .map file and confirmed that this address is within the sd_ble_gap_adv_stop() function.

 .text.sd_ble_gap_adv_set_configure
                0x000000000002fe94        0x4 ./piavet/ble/advertising/advertising_mngr.o
 .text.sd_ble_gap_adv_stop
                0x000000000002fe98        0x4 ./piavet/ble/advertising/advertising_mngr.o
 .text.sd_ble_gap_tx_power_set
                0x000000000002fe9c        0x4 ./piavet/ble/advertising/advertising_mngr.o

I saw a couple of threads about this in the DevZone but none of them have answers. Any clues?

Related