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

DFU-Implement. crashes after exec. of ble_dfu_init()

My problem: The run of my 1. DFU - Implementation delivers an error code after executing the line "err_code = ble_dfu_init(&m_dfus, &dfus_init);". For my opinion this is caused by reservice_uuid.type = 0. The parameter of my application are the following:

nRF52832, S132, SDK11.

The function is called in the suggested order in the function static void services_init(void):

memset(&dfus_init, 0, sizeof(dfus_init));

dfus_init.evt_handler   = dfu_app_on_dfu_evt;
dfus_init.error_handler = NULL;
dfus_init.evt_handler   = dfu_app_on_dfu_evt;
dfus_init.revision      = DFU_REVISION;

err_code = ble_dfu_init(&m_dfus, &dfus_init);
APP_ERROR_CHECK(err_code);                                 --> RESET

The initialization and advertising of an second own service works fine. What did I do wrong?

Parents Reply Children
  • Hi Uwe, I assume you have managed to solve the issue ? Note that you should always check for the returned err_code as it will point out what cause the issue. app_ram_base should be modify according to the configuration of the application for example number of central link, peripheral link, bandwidth, etc. If it doesn't match, you should check the value returned value of app_ram_base when calling sd_ble_enable().

Related