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

Current consumption on different BLE configurations.

Hi,

I have my 2 nRF51 running with S130 v2.0.1, one is the central and the other peripheral. I am transmitting audio data between both and want to reduce the current consumption to the maximum of my ability.

1st case: My configuration for the good sound quality is that I need to send every 15 ms - 60bytes (3 full packets each way). I tested this and saw that the current was a little high for me.

2nd case: So I thought that increasing the connection interval to 30 ms and the bytes to 120 (6 full packets each way).

But this didn't change the current that much.

So I wanted to ask if my thought makes sense and if the current should be lower on the first or second case.

  • Hi

    I have the same question. Actually, sending more data seems needs more power, but I didn't find anything in the datasheet regarding the relation between the amount of sending data and power consumption. I'll probably test it in practice to see what happens...

  • You can check out the power calculator to see how the current consumption changes with the TX payload: devzone.nordicsemi.com/.../. This is for nRF52 though and only one packet per connection interval, so the numbers will be lower than for the nRF51, but at least you can get an idea on how the payload impact the current.

    Anyways, the radio is the component that has the biggest impact on current consumption, or in other words the total payload has the biggest impact. But you should be able to save some power with 6 packets per interval instead of 3, since you will reduce the number of HF crystal startups.

    Do you have numbers on the current you are seeing?

    EDIT

    You will save the crystal rampup, pre and post processing every 30 ms, since you are now increasing the interval from 15 ms to 30 ms. The below plots show that this is about 4.5 uC. And 4.5uC every 30 ms corresponds to an average current of 4.5/0.03 = 150 uA. So the expected average current will drop by 150uA. In addition to this you might get less header data as well, but that depends on the protocol you are using.

    pre and post processing

  • I know that the current changes with the payload, but my problem is if it is better to divide the payload over more connections or send it all in one transfer (3 packets of 20 bytes/15ms or 6 packets of 20 bytes/30ms). I was getting values of 11.1mA with the 3 packets and 10.7mA with 6 packets (difference of 0.4mA). Just wondering if this is expected or it should be a bigger difference.

    The current is a high because my board has other components connected and have different peripherals connected.

  • Updated the answer above. My calculations show that you will save 0.15 mA, so why you are getting 0.4mA I don't know. If you want you can send me your hex files so I can measure them, but at least your question if you are supposed to see a bigger difference than 0.4mA is answered I guess.

  • It must be because the processes are called less times, I was with hope that this would decrease a higher amount since I want to decrease by 3-4mA, I am going to try to change the code and see where I can save current. Thank you for the help!

Related