MCUBOOT Boot time

Hi ,

      How to check the time taken by the mcuboot to boot the controller(MCUBOOT Boot time) .

Parents
  • Do you think that it's an issue with your current boot time ? Could you try to measure it ?

    Yes actually , to check boot up time i have modified the mcuboot main.c as below and i was testing. am getting around 413 ms. which is too large as compared to my requirement. so that is why am curious to know what is the minimum boot up time , for nrf52832 board. 

               ZEPHYR_BOOT_LOG_STOP();
                int64_t timestamp = k_uptime_get();                     //added to check time 
                BOOT_LOG_INF("Bootloader running time:  %d",timestamp); //added to check time
                do_boot(&rsp);

    regards,

    shikamaru

  • Hi Shikamaru, 

    I can see the same booting time here. From my understanding it's the time it take for the kernel to start the 32kHz crystal. Zephyr will wait until the crystal is ready. 
    If you try this: 

    CONFIG_CLOCK_CONTROL_NRF_K32SRC_RC=y
    CONFIG_MULTITHREADING=y
    In the configuration for the MCUBOOT and do this: 
    CONFIG_CLOCK_CONTROL_NRF_K32SRC_RC=y
    In the configuration of your application  you will see a large reducing in your booting time. In my test it's about 60ms instead of 320ms when using crystal. 
    So what the configuration does is to change the setting to use internal RC instead of external crystal. The internal RC has faster start up time. 

    The trace off is that it may consume more current consumption when you do BLE application. The advantage is you save some components because you don't need the external 32kHz crystal. 
    Could you let me know why you need a faster start up time ? 
Reply
  • Hi Shikamaru, 

    I can see the same booting time here. From my understanding it's the time it take for the kernel to start the 32kHz crystal. Zephyr will wait until the crystal is ready. 
    If you try this: 

    CONFIG_CLOCK_CONTROL_NRF_K32SRC_RC=y
    CONFIG_MULTITHREADING=y
    In the configuration for the MCUBOOT and do this: 
    CONFIG_CLOCK_CONTROL_NRF_K32SRC_RC=y
    In the configuration of your application  you will see a large reducing in your booting time. In my test it's about 60ms instead of 320ms when using crystal. 
    So what the configuration does is to change the setting to use internal RC instead of external crystal. The internal RC has faster start up time. 

    The trace off is that it may consume more current consumption when you do BLE application. The advantage is you save some components because you don't need the external 32kHz crystal. 
    Could you let me know why you need a faster start up time ? 
Children
Related