Solar Power Charging LiPo Battery Pack

Hi guys,

I know some dont like Instructables but that's where I found this tutorial:

Im trying to work through it so I can understand it enough to apply it to my own project. I have some doubts as to the power charging and battery pack and consumption numbers.

In the tutorial he uses 2 pairs of 1300mah - 2.4V cells. 1300mah because 2 cells are wired in series and 2.4V because each cell is 1.2V. And he has 2 of these series so he ends up with a total storage of 2600mah and 2.4V battery pack.

He goes thru a calculation where he must charge at a current no greater than 1/10th his capacity. If each pair has 1300mah, he needs a current of 130ma. Not sure why he mistakenly talks about a "current" of 130ma"h" since that would be a capacity, not a current.

In this sense, I only have 3.7V, 380mah LiPo battery pack (1.4W) from a hubsan drone.

The tutorial talks about a power source with 1.5x the voltage of the battery pack. Since it uses a 2.4V battery pack they choose a 3.6V panel. For me that would be 3.7V x 1.5 which is 5.55V or 6V.

Then it talks about needing to cover the current needs for the UNO as well as for charging the pack. They estimate 100mah for UNO and 100mah for charging the pack. This means their project requires 200ma of current from the panel. This because the pack cannot take more than 130ma of current.

Finally they talk about consumption. Using the LowPower library we can reduce total consumption by 32%.
According to this formula they calculate power consumption:

Iavg = (TonIon + TsleepIsleep ) / (Ton +Tsleep)

where Ton is 250 ms & Ion is 16 mA

where Tsleep is 300 s & Isleep is 200 uA

Iavg comes to 0.205 mA which at 5V operating voltage comes to 1.025mW. They have a 3000mah pack which gives them 3.7V x 3000mah = 11,100 mWh. That comes to 11,100 mWh/1.025 mW = 10,818 hrs.

For me, assuming the same Iavg would be 3.7V x 380mah = 1,406 mWh / 1.025 mW = 1,371 hrs.

Does this look right?

Where do you find that a LIPO cell is 1.2volts.

The LIPO cell should be about 3.7 volts.

Rather than telling us what "THEY say", you should just tell us what you have available, and what you want it to do.

Do you already have the solar panel(s), the arduino, etc. or do you plan to order the parts?

Give us a description of your application. Does it need to work day and night, or just during the day?

No need to be short with your words, as we are looking for details, to help us understand your application needs, and give more accurate advice.

I apologize for the confusion. I made the comparison so you could see why they used those calculations.

They used 1.2V nimh batteries.

I'm using a lipo pack of 3.7V and 380 mah. I've got the 5.5V solar panel. I'm going to run a UNO with a Grove shield and 3 sensors (dht11, CO sensor and Dust sensor). I want to set it up to post data to an Internet server via a wifi shield. It would sample every hour. I'm thinking of using a Low-power battery library I found to have it wake up every hour, sample and go back to sleep.

I actually found a 3.7V-1300mah battery pack which might be better suited since I have 3 boards (Uno, Grove shield & WiFi shield).

Yes, if you are running throught the night (ever hour), then a 1300mah would be advisable over the 380mah cell.

What is the wattage rating of your 5.5v solar panel ?
You want to charge the LIPO at 4.2V with that solar panel?
Do you have a solar charger controler that will work for that?
Are all your boards able to run below 3.7 volts? Do you need 5v for any?
Just off the top of my head, I think you need more than a 1300mah battery.

The panel is a 5.5V, 60mA panel so thats about 330mW.

No, the LiPo is not 4.2V, its 3.7V.

I dont have a charge controller.

The UNO runs at 5V & 45-50mA from what I gather.

The grove shield itself I think doesnt pull any power but its sensors do:

Dust - 90 mA
CO2 - 50-100mA
DHT11 - 1mA

The WiFi Shield pulls 38mA.

So this means I would need 50mA for UNO, 191mA for sensors and 38mA for the Wifi. Thats 279 mA.

Ok, if you have these numbers about right, then the solar panel can run the system at high noon, on a sunny day well.

But if you can turn all these loads off for 95% of the time, and the battery can charge up, then you can run 5% of the time on the battery/less sunlight.

How many of these loads can you turn off (or reduce)?
How long will it take for the Wifi to get connected after being turned off, then back on?

"No, the LiPo is not 4.2V, its 3.7V." Even tho the LiPo is rated at 3.7v, it can/should be charged at a higher voltage (up to 4.2v). You need a charge controller.

I still have concerns that the battery will not carry you through the dark of night. A test setup would tell that. Have you got all the parts and pieces?

That is precisely what Im trying to determine. Here are my numbers:

  1. The total system draws 279 mA for the time it runs.
  2. I only need it to run 3 times an hour but I could live with 1x an hour. Let's assume 3x an hour.
  3. I assume the whole thing can power up in 60s, connect to wifi, run the sensors and post the data.
  4. I just realized this means it will require 279mA 3 times an hour but still (30% of 297) 214mA the rest of the time.

How do I proceed in the calculations?

1 hour = 60 minutes

Every hour the unit will consume 214mA x 5V = 1,070mW * (59 minutes/60 minutes) = 1,052 mWh
Plus 1,070mw * (1/60) = 17.8 mWh

So I will consume a total of 1,069.8 mWh.

During the day I will produce 60mA * 5.5V = 330mW every hour. This means that during the day I will have a deficit of 700 or so mWh. That means that just during the day (peak sun hours of 5) I will deplete my battery by 5 x 700 = 3,500mWh. During the rest of the 19 hours Ill need 19 x 1,069.8 mWh or a battery holding 20,326 mWh.

I wonder if something happened to my math? It would seem I need a bigger panel and a bigger battery.

I could:

A) Change the UNO to a Micro/Nano that would drop the power consumption to 200uA/17mA. I guess we could average that to about 8.6mA. This would still leave the 237.6mA. That wouldnt make much difference.

B) Im thinking I could drop the Dust Sensor, thats 90mA less for a new total of 147.6mA. Thats about 50% less but it would still require a large battery and panel.

Maybe it would just be better to power it by a usb cable transformer. I wouldnt want to use batteries so I would just get a USB-ported AC to DC 5V 1000mA wall power supply.

C) Or I could test to see if when the UNO powers down, the 191 + 38 mA of the sensors & WiFi shut down. This leaves me with:

0.983 x 50mA x 5V = 245mWh
0.017 x 279mA x 5V= 23mWh

For a total of 268mWh which during 5 peak sun hours Ill have:

300 mWh produced - 245 mWh consumed = extra 55 mWh surplus x 5 hours = 275 mWh stored to battery

During the night, if my pack starts out with all 1300mah at 3.7V = 4,810mWh, that would last for 19 hours. But for the next day I would be out of charge because I can only replenish 275...assuming perfection.

It is a challenge to run from solar power. It usually can work ok during the sunny days, but when night comes, not so good. If you have access to wall plugs, then that will save your as* during the night. I don't know your goal, but if it is to "get into solar power", then try augmenting solar with grid. If it is completely off the grid, then there is a bit more work, and inventory needed.

Maybe: during the night, don't send data ever hour, just when the data has changed by an amount that is worthy of notice.

I guess the correct question would be:

  1. When the unit is not sampling, what power do the components (3 sensors) draw from the source?

  2. When the unit is not sampling Im thinking of using the LowPower library to power it down (sleep). What actually goes to sleep:

a- Just the UNO sleeps drawing no power? - I dont think this is the case because it must keep functions alive in order to wake up :slight_smile:
b- Just the UNO sleeps drawing 30% less power than normal? - Seems reasonable
c- The UNO sleeps drawing 30% less power and components draw 30% less power as well? - Seems even more reasonable

If this is the case then I would really only save 30% of 279mA which is 214mA.

I thought I could power down the sensors completely and thus draw only 50mA of the UNO during sleep and only 279 during sampling.

"I thought I could power down the sensors completely and thus draw only 50mA of the UNO during sleep and only 279 during sampling."

That sounds like a good approach. Maybe a mechanical relay to power all the external units, activated only during the sample/report period.

If you want to minimize power consumption make a breadboard Atmega 328 so that you don't have all the unneccessary power consuming stuff that an Arduino Uno has. You can run it straight off a single LiPo as long as you use a suitable clock frequency - see the Atmel datasheet, I think the internal 8MHz clock would be fine.

You should size your solar panel so it can provide at least twice as much energy during the average day as the entire system needs for 24 hrs. If there are some winter days with much reduced sunshine then your battery capacity has to be able to cope with that. And that may require an even bigger solar panel so it can full recharge the depleted batteries.

You MUST be careful charging LiPo cells as they are prone to bursting into flames if abused. I found this website useful.


Thanks robin.

The thing is that what really draws power are the sensors.

I have thought about swapping the UNO for a Micro which is in the uA range. But the sensors are drawing about 191mA and the wifi shield that posts draws 38mA for a total of 229mA.

So I agree, the best solution would be to shut down the sensors, in effect canceling out those 229mA only for when they are needed.

I did find a bigger battery pack, its a 23000mah pack with a panel with solar charger of 15V & 150mA. That should be better. Its actually from a solar charger i bought online a while back. I use it to charge my phone and laptop every now and then. But I think it would be a waste.

Ill just run a usb cable up to the roof and plug in my air monitoring unit from there.

Ill just run a usb cable up to the roof and plug in my air monitoring unit from there.

I don't know what is the maximum length of a USB cable if you want to send signals through it. I have had no problem with 2x 2metre extensions but there is a limit somewhere because it is a very high speed signal.


"Ill just run a usb cable up to the roof and plug in my air monitoring unit from there."

I can't understand that. Is your "air monitoring unit" usb ?
As Robin says, usb cables should be kept short (1 meter is good). Can your air monitoring unit be closer to the arduino? (or vice versa)?

I was thinking I can place the unit right on the roof and run the USB cable into the ceiling and have the Arduino unit there plugged into a wall jack. That shouldn't be longer than 1 or 2 meters.

That sounds like a good plan.