Ask about power consumtion of nrf52833 with esb_tx example

Hi Nordic support team.

I incharg project replace NRF24l01 by new design with nrf52833.

Using nRF5_SDK_17.0.2 and segger studio compiler.

I using esb_tx example, the application running well.

But it seem take so much power consumtion. i try to modify code in main function like this nothing to do only sleep mode like this.

int main(void)
{
    ret_code_t err_code;
    gpio_init();
    clocks_start();

    err_code = esb_init();
    APP_ERROR_CHECK(err_code);

    while (true)
    {
            __WFE();
            __SEV();
            __WFE();
    }

}

But when measure power consumtion i see that always 270uA. It happened the same eventhrough i commented //gpio_init() function

Can you help me check about that. i expect down to 25uA.

thank and best regards,

Parents
  • Wait a minute, I missed to see the obvious that you are starting the clocks here 
    clocks_start()

    normally you should not need to call clocks_start() until >1.5ms before you want to enter receive mode or transmit a packet,. You can then stop the clocks afterwards to save power, just ensure that if he is in prx mode, that he don't stop the clocks (or disable esb) immediately after receiving a packet (since that will indirectly affect the outgoing ack). For the ptx you can stop clocks if you don't want to transmit further packets after receiving the ack (or until next packet).

  • hi,

    Sorry for not check comment //clocks_start(); function.

    It exactly issue come from HFCLK in clock_start().
    Now it reduce to 30-47uA with our application build on esb_tx.

    But it seem much power consumtion with battery life time. My target smaller 20uA

    Can i reduce more by manage NRF_POWER->RAM.

    Can you share me experience for process NRF_POWER->RAM: init, turn off, turn on function, where to cal it,..

    or show me example to apply this controling NRF_POWER->RAM.

    which mode(Sysrem off/Sleep/Idle Modes) can using turn off RAM power?

    I can refer to "esb_lowpower_ptx", but i can not understand clearly progress running.

Reply
  • hi,

    Sorry for not check comment //clocks_start(); function.

    It exactly issue come from HFCLK in clock_start().
    Now it reduce to 30-47uA with our application build on esb_tx.

    But it seem much power consumtion with battery life time. My target smaller 20uA

    Can i reduce more by manage NRF_POWER->RAM.

    Can you share me experience for process NRF_POWER->RAM: init, turn off, turn on function, where to cal it,..

    or show me example to apply this controling NRF_POWER->RAM.

    which mode(Sysrem off/Sleep/Idle Modes) can using turn off RAM power?

    I can refer to "esb_lowpower_ptx", but i can not understand clearly progress running.

Children
Related