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

Advertizing in low power mode

Hi,

I am developping a product with battery power. To preserve the battery life, this product needs to work in low power mode.

How can configure nRF51 to advert in low power mode ? The system must work < 10µA in low power mode.

Is there any example to put nRF51 in low power mode ?

Thanks.

Regards.

Xavier

  • Hi Xav,

    Can you give me the advertising timeout and the advertising interval of each of the examples (ble_app_hrs and ble_app_uart) ? In order to answer your question, I will need to know the values of these constants. Also give the modes of advertsing used by each example (fast mode, slow, directed etc...)

  • Hi Joseph,

    For "ble_app_uart" :

        - advertising timeout = 40ms

        - advertising interval = 180 seconds

        - mode of advertising : ble_adv_fast_enabled = true

    For "ble_app_hrs" :

        - advertising timeout = 187,5ms

        - advertising interval = 180 seconds

        - mode of advertising : ble_adv_fast_enabled = true

    It is the default values of examples give by Nordic.

  • Hi Xav,

    First I think you have reversed the values. The advertising interval is the time between each advertising event and the advertising timeout is used to tell the device for how long it should advertising. so if I can arrange the values, this is what we get:

    For "ble_app_uart":

    -advertising interval = 40ms

    -advertising timeout = 180 seconds

    For "ble_app_hrs":

    -advertising interval = 187,5ms

    -advertising timeout = 180 seconds

    OK from the value of the constants that you gave, it is clear that the "ble_app_hrs" uses less current than the "ble_app_uart". This is because the advertising interval for ble_app_hrs" is greater than that of "ble_app_uart". With an advertising interval of  180 seconds for both cases,

    -"ble_app_hrs" sends a total of 180/0.1875 = 960 advertising packets to the peer

    -"ble_app_uart" sends a total of 4500 advertising packets to the peer

    You can begin to see why the current consumption of one is greater than the other right?. Now if you want to reduce this, you can reduce your advertising timeout and increase your advertising interval.

  • Hi Joseph,

    Effectively, i have reversed the values. Sorry.

    I think that the uart module have a greater consumption. When I insert the uart module in "ble_app_hrs", the consumption is identical to "ble_app_uart".

  • The uart module has high current consumption when it is active.

    I need to stop the module to reduce consumption during advertising (app_uart_close()).

Related