I am a beginner to electronics and trying to make a portable air conditioner using a Peltier cooling pad (12V). I am planning on using a solar panel to power the Peltier and looking forward to your expert opinion for below; - Is this possible? -What the specifications I have to consider prior to purchasing the solar panel? - What is the weight of the solar panel? - Can I operate the Peltier through an Arduino using Solar panel as the power source( without using batteries to power Arduino and Peltier). My idea is to control the Peltier cooler via Arduino using a phone App. Really sorry if these questions are basic, yet your guidance will be very much helpful for me as well as for the other beginners like me.

  • 1
    If you don't want to use batteries, but a direct relation between solar radiation and the peltier effect, what's the purpose of an arduino? Oct 29, 2019 at 10:55
  • Limit current based on temp in cooler, it will be more efficient. You don't need to use 12V, go lower. DS18B20 is a good option if you're digital, else consider a dielectric temp switch.
    – user2497
    Oct 30, 2019 at 15:53
  • @user2497, Thank you for the suggestion and I will be able to achieve the required maximum cooling level even with 6V. Controlling the cooling level of the Peltier with the help of a temperature sensor is an interesting idea. I will definitely try this.
    – Indee
    Oct 31, 2019 at 1:54
  • @Indee An LDR and a potentiometer, along with a P-FET should make a decent driver circuit.
    – user2497
    Nov 1, 2019 at 10:44

2 Answers 2


A microcontroller like an Arduino needs a constant source of regulated 5V (or 3.3V for some models.) The voltage of a solar panel varies depending on the amount of light, and in low light conditions there won't be enough power to run the Arduino.

So the short answer is no, you won't be able to run the Arduino reliably from a solar panel without a battery. You probably want a battery and a buck/boost voltage regulator that can convert a wide range of voltages to the 5V the Arduino needs.

What do you want the Arduino for? Temperature regulation? You'd probably be better off using a bimetallic thermostat that would turn the power to the Peltier pad on and off without needing electronics.

As for running a Peltier junction cooling pad from a solar panel, that should work. It would depend on the specs of the Peltier unit and of the panel. Again, you'll probably get the maximum cooling if you use a buck/boost voltage regulator to convert the variable output of your solar panel to a steady 12V. You'll need a big enough solar panel to provide the current that your Peltier pad needs.

All the talk about Peltier pads and solar panels is not Arduino-specific, however.


Research solar chargers for 12V batteries. Buy a solar panel made to charge a 12V battery. Make sure you select a solar panel that puts out enough current to run the Peltier panel at full power when it is in the sun. Ideally, select a solar panel that provides several times more current than needed to run the Peltier pad. That way the solar panel will charge the battery AND run the Peltier pad while the sun is shining, and when the sun is behind the clouds or at night, the Peltier pad will continue to run from the battery.

Start from that. Buy a buck/boost power supply that can convert a wide range of voltages to 5V. Use that to power the Arduino.

Buy a digital thermometer (like a DHT11 for example). Follow the instructions to wire it into your Arduino, and write a sketch that measures the temp in the thing you are trying to cool.

Buy a power MOSFET transistor that is made to work from a 5V logic signal. This one, for example: https://www.sparkfun.com/products/10213

Wire the MOSFET so a logic signal from one of the digital pins on the Arduino is connected to the gate of the MOSFET and it switches the power to the Peltier pad on and off. (You should be able to find a wiring diagram online.)

Write a sketch that measures the temp from the digital thermometer every few seconds, and turns on the power to the MOSFET if the temp rises above a threshold temp, and turns it off if it drops below a colder temp. (Say it turns on the MOSFET when the temp rises above 24°C, and turns the MOSFET off when the temp drops to 20°C. (This is really simple code to write.)

Note that if the battery gets too low, it won't provide enough power to the voltage regulator which supplies the Arduino and it will shut down. That will cause the Peltier pad to turn off. Once the solar panel charges the battery up enough, the voltage regulator will start providing 5V to the Arduino again, it will restart, your sketch will start running, and the cycle will continue. When the battery barely has enough power to drive the Arduino, it may restart the Arduino, try to turn on the Peltier pad, and immediately die again, every few seconds. That would be bad, and would put a lot of stress on all the electronics.

You might want to add a voltage sensor¹ to the battery and have the Arduino measure the battery voltage, and not try to power the Peltier pad unless and until the battery has a reasonable charge. Instead it would monitor the battery charge level and wait until there was enough power stored in the battery to run the Peltier pad. You could also have the Arduino detect that the battery charge level was getting low, and shut off the Peltier pad before it got too low.

A lead/acid battery would be a good choice since it's cheap, holds a lot of power, and it's easy to estimate the remaining power in a healthy lead/acid cell from its output voltage.

If you do use a lead-acid battery, it's important to add a battery charge level sensor and make your sketch avoid draining the battery too low. Lead-acid batteries are damaged when you discharge them too much.

Edit #2:

You said in a comment to another answer that you're looking to provide small-scale cooling while traveling in a hot climate: The fact that you're trying to handle travel poses some interesting challenges, and perhaps some opportunities. If you're traveling in a car or truck you could tap the 12V power that is almost always available in a motor vehicle. If you don't have an external source of power then the shifting and turning you will likely experience while traveling will greatly reduce the efficiency of your solar panel. They only give maximum power when the panel is directly perpendicular to (or "normal to") the sun. As the angle of the panel to the sun shifts from the ideal angle the power output of your panel will drop significantly.

¹ A voltage sensor could be as simple as a voltage divider that reduces the input voltage from a max of a little under 14V down to 5 V, fed into an analog input on the Arudino. You might need to disconnect the solar panel input before measuring the battery charge level however, since input from the solar panel will make the battery voltage seem higher than it actually is. Also note that your battery charge level estimates are going to be crude, since you should really let a lead-acid battery rest with no input and no output for several minutes before taking a measurements in order to get an accurate reading.

  • Hi Duncan, Your answer is very helpful and informative. I will work on the solar Peltier circuit. I wanted the Arduino to control the cooling effect of the Peltier using a phone App. Seems like I have to use a battery and voltage regulator to obtain this.It
    – Indee
    Oct 29, 2019 at 23:49
  • It would be a great support if you could help me with the Solar, Arduino, Voltage regulator and battery circuit?
    – Indee
    Oct 29, 2019 at 23:53
  • Hi DataFiddle, I need the Arduino to control the Peltier using a phone App.
    – Indee
    Oct 29, 2019 at 23:53
  • See the edit to my answer. I gave you some guidelines on what to do. I'm not going to design the project for you in detail however.
    – Duncan C
    Oct 30, 2019 at 0:34
  • Hi Duncan, The answer is very helpful and have enough information for me to try it by myself. Thank you very much.
    – Indee
    Oct 30, 2019 at 2:06

Your first decision is to figure out the heat load on the space. How many BTU/hr you need to remove to keep the temperature you want. Then figure out how large / how many Peltier you need to remove that much heat. Do you need some reserve capacity for unusual circumstances or is a higher inside temperature Ok sometimes? Then you need a power budget - how much power will it take to remove that much heat with Peltier panels. How much PV area will you need to provide that power? If you need cooling when the sun isn't out, your power budget has to include the 24-hour demand, and the intermittent supply, perhaps again with some headroom. Power storage - batteries or the power grid - will be a requirement to match the two. The same storage can power your Arduino. The Arduino's power budget will be minuscule compared to the rest of the installation and you can totally ignore it. Do you have to power your internal network that connects the Arduino to the Internet, too? Figure that in. By this point, you'll have the answers to most of your questions. Just a heads-up: A Peltier beer-cooler is quite doable. A whole house A/C might be doable but no practical - you probably won't like the numbers! I'm guessing your project lies somewhere between the two.

  • Well, yeah. If you need to solve a real-world cooling problem, that is indeed the way to go. (voted.) BUT BTUs? Really?!?
    – Duncan C
    Oct 30, 2019 at 23:26
  • @JRobert: Thank you very much for your answer. My project is closer to 'a Peltier beer-cooler' as I'm planning on to develop a Peltier cooler to provide cooling to food and beverages when travelling under hot climate conditions. Seems like reserving energy is an important aspect which I need to consider.
    – Indee
    Oct 31, 2019 at 2:03

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.