# Calculate battery consumption in IoT Device, Parameters and Considerations Regarding Bluetooth

I've designed a basic IoT architecture to measure biosignals. I am not an expert in the field so I have doubts in basic battery consumption calculation and considerations.

The proposed system consists of:

1. Box: Contains bluetooth (15mA) and 5000mAH Li-on battery. 3.8V.
2. ECG Sensor with 12.5mW power dissipation.
3. Three accelerometers. 2mA consumption.
4. Oximeter with 4.8mW power dissipation

The calculation that I've done so far is (the 3 is because the amount of time, 3 hours):

Battery consumption in 3 hours = 0.015 * 3 (bluetooth) + 0.0048/3.8 * 3 (ECG) + 3 (accelerometers) * 3 hours * 0.002A each + 0.0048/3.8 * 3 (oximeter) = 0.077A = 77 mA battery consumption each 3 hours.

I am pretty sure that I am missing something and that some considerations are not included.

EDIT

I need to get continuous information from the sensors because is for monitoring user activity and I can't build a prototype.

• I will refer to my answer to another similar question, get a rough estimate powering your prototype with a capacitor instead of the battery: electronics.stackexchange.com/questions/247456/… – Morten Jensen Apr 5 '17 at 10:36
• Typically Bluetooth power consumption varies. When it's transmitting or receiving data the highest power is consumed while when it's idle hardly a few mA are consumed. If you know how many times the BT will be active within that 3-hour period you'll be better able to calculate the current consumption. Also as the battery wears out the voltage drops to about 3.7V. – electrophile Apr 5 '17 at 10:42
• Since you've multiplied current by 3 hours, that would be 77 mA * h, but otherwise your estimation seems legit, assuming all those devices constantly draw the rated current or power. The problem is that if you're missing something, you most probably won't include that in your question, so we will miss that as well. – Dmitry Grigoryev Apr 5 '17 at 10:48
• @DmitryGrigoryev Post updated. I need to receive data continuosly from the sensors, so I don't know how much those will consume. For example, if the accelerometers need to send me data every 5 seconds. How much energy will those consume each hour? 2mA*3*(3600/5) – Kevin Mamaqi Apr 5 '17 at 13:42
• If battery life is critical, you may need to change specs. a) more Ah capacity, b) less frequent Tx power with intelligent criteria for alert data and slower BT polling for routine data. Continuous transmission is power hungry. – Tony Stewart Sunnyskyguy EE75 Apr 5 '17 at 13:55

Ideally, you would want something to log the power consumption. Bluetooth devices will vary their consumption, depending on if it is idle, if it is transmitting and receiving data and I would guess your ECG sensor would probably fluctuate as well, depending on what it is doing at any given time. Other devices may not be working constantly either.

What you should do is to log the power over a given time while the device is being used at what you would consider under normal conditions and take the average current consumption. You can then use that figure to find out how much it will use in 3 hours or see how long your batteries will last.

That would be the best way to do it in my opinion, although someone may know better ways!

EDIT** Just as an example of a BLE device varying its consumption, I found this picture online of someone doing power consumption tests on such a device:

This information was taken from HERE which talks about various modules. As you can see from the picture, depending on what the module is doing, the current peaks at different points so the average will be very important when trying to do these calculations.

As for accelerometers, one I have used is the LIS3DH and a quick look at the datasheet where it mentions current consumption shows this:

Which again shows that changing states will mean it draws different amounts of current. And as you said you will be getting information every 5 seconds, I doubt it will be staying in 1 state the entire time!

• Thanks. I've updated the question. I need to get sensor information continuously and can't build a prototype to log power consumption. – Kevin Mamaqi Apr 5 '17 at 13:38
• Hmm.... That makes it tricky, because you may need to continuously get information, but the power consumption will still vary because it will definitely not be doing everything at once constantly. Why can you not build a prototype to log the consumption? If you really can't, then you may have to use these calculations but should allow yourself quite a bit of headroom. – MCG Apr 5 '17 at 13:43
• I noticed you said your accelerometers will be sending data every 5 seconds. That proves my point that it is not going to be 2mA continuous. It will be changing every 5 seconds and over 3 hours that will make a difference. With a system like this, you would really want to measure it then do your calculations otherwise you will likely find that you will be out by quite a bit unfortunately as it is not quite as simple as calculating how long a battery can power an LED for (as an example) – MCG Apr 5 '17 at 13:45