Solar charging a battery with Wemos D1 mini to run "forever"
Posted: Sat Jun 18, 2016 3:04 pm
I am having the toughest time trying to figure out how to charge a battery with solar panel to keep my project completely "off grid". Essentially I have a Wemos D1 mini that turns a servo when it's issued a command on the network. The Wemos needs to be powered 24x7x365 but the servo only powers up when it needs to turn (3-4 times a day max). I did a bunch of measurements today and here is what I have found. I am using this USB digital Multimeter to get my current readings below. I tested by using clean grid power to get all of these readings, hopefully this is the correct way to approach the power consumption.
Here is what I have currently purchased:
I've connected everything as follows:
I connect 1 USB output from the battery to the Wemos D1 mini. I connect the other USB output to the servo using a modified USB cable. The servo control cable is then connected to the Wemos. I connected the solar panel to the charge port on the battery pack. Using grid power I can confirm that the battery pack will charge while also running the Wemos / servo. So in theory a solar panel should accomplish the same task.
I am able to power the Wemos with only the solar panel. However, once you issue the rotate command the current draw is too high and everything restarts. When I connected the solar panel to my battery it looks like I can get about .45A @ 5V = 2.25W max from the panel (outside in direct sunlight), which explains why everything reboots when you rotate the servo. Obviously I'm doing something wrong because I'm not running "forever" as I had hoped. I'm still currently running, it's been about 48 hours, but the battery will die in the very near future.
All that being said I have a couple of questions:
I really appreciate the help if someone can take the time to read through this huge wall of text. I think I have a decent understanding of how this all works, but I'm not 100% sure so any help is awesome, thanks!
- Servo draws 0.00A connected but not rotating
- Servo draws .5A max (sometimes less) when turning only
- Wemos draws .13A max observed (usually .09A) this is a constant load
- Absolute max draw I could find when turning the servo (with controller connected) is .43A rounded up to .5A @ 5V = 2.5W power draw.
- Idle time with just the controller is .13A max .09A average @ 5V = .65 W higest observed .45 W average
Here is what I have currently purchased:
- 10,000mAh Battery with 2 USB ports
- Wemos D1 mini
- Full rotation servo
- 5V 8W Solar Panel
I've connected everything as follows:
I connect 1 USB output from the battery to the Wemos D1 mini. I connect the other USB output to the servo using a modified USB cable. The servo control cable is then connected to the Wemos. I connected the solar panel to the charge port on the battery pack. Using grid power I can confirm that the battery pack will charge while also running the Wemos / servo. So in theory a solar panel should accomplish the same task.
I am able to power the Wemos with only the solar panel. However, once you issue the rotate command the current draw is too high and everything restarts. When I connected the solar panel to my battery it looks like I can get about .45A @ 5V = 2.25W max from the panel (outside in direct sunlight), which explains why everything reboots when you rotate the servo. Obviously I'm doing something wrong because I'm not running "forever" as I had hoped. I'm still currently running, it's been about 48 hours, but the battery will die in the very near future.
All that being said I have a couple of questions:
- Since my panel is providing .45A @ 5V = 2.25W and the idle power consumption is .09A @ 5V = .45W, I should be able to charge the battery while powering the controller, correct?
- When I rotate the servo it should pull the small extra current from the battery but should be quickly replaced with the overhead from the solar panel keeping the battery "topped off", correct?
- Assuming the device is idle for simplicity, if I have 12 hours without sun I will draw .09A x 12 = 1.08A from the battery over that time. If I get 8 hours of sunlight I should get .45A - .09A = .36A x 8 = 2.88A over that time, meaning it will fully recharge the battery. Is this math correct?
- I've looked into deep sleep mode but then I wouldn't be able to issue commands to the Wemos unless it happened to be awake. I can't find any way to make the Wemos use low power until it receives a network based command. Is there any work around you can think of to help consume less power?
- Do I just need a solar panel that provides more watts? I need to keep this form factor as small as possible and I need to replicate it several times (10+) so I really need to keep the panel cost down, and size as small as possible.
I really appreciate the help if someone can take the time to read through this huge wall of text. I think I have a decent understanding of how this all works, but I'm not 100% sure so any help is awesome, thanks!