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

intern_softdevice_events_execute, softdevice function to migrate from SDK 13.2.0 to SDK 15.3.0

Hi,

Actually migrating from SDK13.2 to SDK 15.3.0 and a FreeRTOS is set.

In the ble_task function there is :

/* Process any events that have been latched in the notified value. */


if( ( ulNotifiedValue & SYSTEM_NOTIFICATION_FROM_BLE ) != 0 )
{
      /* Bit 0 was set - Notification from BLE. */
      //prvProcessBit0Event();
      intern_softdevice_events_execute();
}

The function intern_softdevice_events_execute from softdevice_handler.c doesn't exist anymore in sdk 15. 

I'm not mistaken, softdevice_handler.c is replaced with nrf_sdh.c. 

Is it correct to replace this function by nrf_sdh_evts_poll();  ?

Do I need to use the nrf_sdh_freertos.c or nrf_sdh.c or both ? I can see a file nrf_sdh_soc also.

Thank you in advance,

Regards,

Alan

  • You just need to include the file SDK15.3\components\softdevice\common\nrf_sdh_freertos.c into your project and call the function nrf_sdh_freertos_init from main.

    This will create a softdevice task for your application whose only purpose is to pull the events in this newly created task.

    Please see one of the freertos examples in SDK15.3 to get an idea of how the flow has changed.

Related