This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts
This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

nRF52832 - how to reduce initialization time

Hello Nordic staff,

I'm now trying out the nRF52832 BLE SoC and made a measurement of the SoC initialization time. The example application is ble_app_template from nRF_SDK_13.0.0_04a0bfd. I toggled GPIO pin 12 after initialization of all other modules and just placed the GPIO set pin function just before the while (1) loop. The initialization time from this example example is about 252ms, which is quite long time for my application requirements since we use power gating technique to reduce power consumption of a battery powered device. Therefore, we just turn on the SoC only when communicate with a peer device and then quickly turn it off.

nRF52832_SDK13_ble_app_template_init_time.png

Are there any other ways to reduce the initialization time? My application will need to use the BLE stack.

Parents
  • Hi,

    I suspect you are using an external LF crystal? Those 252ms is most likely the time it takes for it to start when you initiate your Softdevice. Check out the start up time in the spec: 32.768 kHz crystal oscillator (LFXO).

    What you can do is to use the internal RC oscillator when you first start your Softdevice, and then switch to the external oscillator at a less time critical point in time. The LFRC's startup time is much lower: 32.768 kHz RC oscillator (LFRC).

    I once did some measurements of the LFXO startup time using an nRF51 DK kit. Normally the startup time was ~270ms, but when I put my finger on the crystal it increased to 500ms. So the startup time also seems very dependent on its environment. I guess my finger introduced some stray capacitance it didn't like. Large load capacitance means long startup time.

    If you are using a bootloader that might also interfere with the start up time.

  • Thanks Martin!

    I solved the problem by using internal RC oscillator now. I used before external crystal oscillator. Now with internal RC oscillator, the start up time is now around 4 ms.

Reply Children
No Data
Related