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

Is it possible to decrease the SoftDevice start time?

Hello,

I'm currently working on profiling an embedded application on an nRF52 using the S132 SoftDevice.

I've found that the svcall sd_softdevice_enable takes approximately 250ms to return control to the calling thread.

This increases our startup latency to a length of time which is undesirable for our application.

Is it possible to reduce the amount of time spent by this call?

Many thanks.

  • The sd_softdevice_enable() does not return until the 32 kHz clock is started, and the startup time for the 32 kHz crystal oscillator is 0.25 s (see spec). If startup time is important, you could consider using the 32 kHz RC oscillator instead, which has a startup time of only 600 µs (see spec). In that case the total time spend in sd_softdevice_enable() is approximately 1.1 ms.

    Note that in general the start-up time is not very important as the SoftDevice is started once, and the LF clock is always running. The exception is if you use system OFF low power mode, where 32 kHz clock is not running, and the SoftDevice must be re-initialized after wakeup.

  • Indeed we are using the system OFF low power mode. I will look into whether we can use the RC oscillator instead.

    Many thanks for your help.

Related