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

SoftDevice does not call the registered callback

I am using the following code during stack initialization: // Register with the SoftDevice handler module for BLE events. err_code = softdevice_ble_evt_handler_set(ble_evt_dispatch);

On starting advertising, I can see my board on the nRF MCP app. I try to connect to the board using the MCP app, the app shows connected, I can also disconnect and connect again. In all this, the "ble_evet_dispatch" should be called but it never does! Could someone please help me reason why?

Parents
  • After further investigation I found out that it is dependent of RAM usage settings. When I change the base address for the APP to a greater value, it works fine. Now, I want to know what is the right value of the IRAM1 "start" address. All examples in the SDK use the address 0x20001D80 but the S132 documentation suggests that APP_RAM_BASE should be min 0x200022D8 when S132 is used. Which one is correct and why? BTW, for me it works when the IRAM1 start address is set to 0x200022D8 in the project settings in Keil. The value 0x20001D80 that is used by the example projects is not mentioned anywhere in the documentation.

Reply
  • After further investigation I found out that it is dependent of RAM usage settings. When I change the base address for the APP to a greater value, it works fine. Now, I want to know what is the right value of the IRAM1 "start" address. All examples in the SDK use the address 0x20001D80 but the S132 documentation suggests that APP_RAM_BASE should be min 0x200022D8 when S132 is used. Which one is correct and why? BTW, for me it works when the IRAM1 start address is set to 0x200022D8 in the project settings in Keil. The value 0x20001D80 that is used by the example projects is not mentioned anywhere in the documentation.

Children
No Data
Related