5v Solar Power Supply


I bought an Acurite Atlas weather station shortly after it was first released, in the fall of 2018. It is a great unit, but I discovered that the battery life was significantly less than its predecessor, the 5-in-1. A set of lithium batteries would last several years in my 5-in-1, but I am averaging just 10 months in the Atlas.

I began to look for a solution. Acurite sells a remote power adapter and a remote battery pack. Both would require running a wire from the roof, down the side of the house. This was not a desirable solution.

As an alternative, I decided to put my interest in electronics to use, and thus the solar power supply was conceived.

The power supply you see described on this page went through several iterations. Initially, I designed it to house a small lead acid battery with a solar charge controller. Shortly thereafter, I began to experiment with four 7.5F super capacitors. I finally stumbled across the super capacitor you see in the photos. Not only can it store far more energy than the smaller capacitors I was previously working with, but it came with its own protection circuit. I no longer needed an additional circuit to keep the supply voltage from going too high and blowing the capacitors.

If you want to build this power supply without the Moteino, see Design Considerations, below.

Mechanical Parts List

Electrical Parts List


The Moteino in this power supply communicates with a Raspberry Pi or Linux PC, running a Moteino Gateway. The gateway creates a 900MHz network and provides a Web UI to monitor and control the devices on the network.

Solar Power Supply Circuit

Click to Enlarge

Electrically, the circuit can be broken into the following categories:
  • Moteino (not shown)
  • Voltage Monitor
  • MOSFET Switch
  • Solar Panel
  • Capacitor Bank

Design Considerations
For those not interested in using the Moteino microcontroller, the design becomes much simpler. Just attach the solar panel with diode to the capacitor bank, run a wire to the device needing power, and you are done. Naturally, the down side to this is, if you run into any problems, you will have to go to the unit with a multitester to troubleshoot. 

At full charge, the capacitor will produce 5.4 volts. When the solar panel is not producing power, the voltage will start to drop immediately. For small loads such as the Acurite Atlas, this could be a very slow process. An inexpensive boost module could be inserted on the output stage, to keep the voltage at 5 or 6 volts. This would work until the capacitor continued to drop to an even lower voltage, such that the module is no longer able to boost. However, a boost module is not 100% efficient and will consume some power on its own, so is this really worth it? It depends. This is something I plan to field determine.

Another question to ask is, how big of a solar panel should one use? This is determined by how much power the capacitor protection circuit can shunt.  Here are the maths:

    Max Wattage = ( voltage2 / shunt resistance ) * number of capacitors

Each capacitor has two 6.8Ω resistors in parallel resulting in 3.4Ω, so our formula becomes:

    Max Wattage = ( 2.72 / 3.4 ) * 2 = 4.3 Watts

Thus, to avoid overloading the capacitor protection circuit, our solar panel must be 4W or less.

Additionally, I'd recommend a 12v solar panel rather than a panel rated for 6v. On a cloudy day, a 6v panel may not generate sufficient voltage to charge the capacitors. However, a 12v panel will.

(Brief) Assembly Instructions
  1. Assemble and solder the circuit shown in the diagram above.
  2. Load this Solar Power Supply arduino sketch into the Moteino. Instructions for programming a Moteino are here.
  3. Create the Solar Pump config on the Moteino Gateway
    1. Copy solarps.js to the metrics folder on the Raspberry Pi gateway
    2. Restart the Moteino Gateway service
  4. Mount the electrical components in and the solar panel on the enclosure
  5. Mount the cabinet to its permanent location
  1. Use Male/Female pin headers to attach the moteino to the breadboard. You will not regret this.
  2. Let the solar panel charge the capacitors before applying power to the moteino

Moteino Gateway UI

Click to Enlarge
Once the Solar Pump Controller is powered up, it will automatically populate on the Moteino Gateway Dashboard. Click on the newly populated Moteino then set the Type from the drop-down to Solar Power Supply. Give it a friendly name, and the configuration is complete.

The voltage will update every 4 minutes.

To turn the power supply on, click the Request button and enter "POWER" for the name and "ON" for the value. Click Submit.

To conserve power the moteino is on a 2 minute sleep cycle. Consequently, the power on request can take up to 2 minutes to take affect. This is by design.


The following voltage graphs provide quantitative data to help answer the following questions:
  • Will the capacitors charge during non-ideal weather conditions?
  • How long can the power supply operate without sunlight?
  • How does snow on the solar panel affect performance?
Each graph shows how far the voltage dropped overnight, followed by the rate of charge as the sun came up.

Sunny Day
This graph represents the supply voltage on a clear, sunny morning. Overnight, the voltage dipped down to 4.96v. It took just under 1 hour and 30 minutes for the capacitors to reach their full charge.

Overcast Morning
This graph represents the supply voltage during an overcast morning, with occasional periods of sun. Overnight, the voltage dipped down to 4.93v. The Atlas continued to function normally. It took about 2 hours and 15 minutes for the capacitors to reach full charge (7am - 9:15am).

Click to Enlarge

Dark Clouds and Rain
This graph represents the supply voltage on a day with dark clouds and rain. As expected the voltage dipped to 4.93v overnight. This time however, it took a lot longer to reach maximum voltage, which didn't happen until almost 1pm. What matters is, we reach maximum voltage at some point during the day. Will the solar panel charge the capacitors on a dark and rainy day? We can now answer yes to this question.

Click to Enlarge

Snowy Day Graph
We received 6 inches of snow during the early hours of November 12, 2022. This is unusual for the St. Louis area this time of year, but it created an opportunity for some good data. I was out of town during this event and was unable to get photos of the solar panel itself, to show the amount of snow coverage.

The morning of November 12 was overcast and dark. The snow stopped around 8am, but the sun never came out. As you can see from the graph below, the solar panel was unable to replenish the capacitor throughout the day. What is interesting is that, despite 6 inches of snow, the solar panel was able to keep the voltage steady. Clearly the solar panel was creating a small amount of charge.

Click to Enlarge

The next day was sunny. Prior to the sun rising, the voltage dipped to 4.23 volts. However, the weather station continued to operate normally, without signalling low battery. By 10am, the capacitor reached full charge, despite snow covering the solar panel.

Click to Enlarge

Key takeaways are the ability to charge even with snow covering the panel and the ability to run normally, without sun, for at least 24 hours.

Finished Product
Sample photos of the finished product. Click to Enlarge.

Mounted to Pole

Mounted to Pole Closeup

Box Open
Circuit Board Closeup


Popular posts from this blog