Grove / Headers SunAirPlus Solar Power Controller/Data Collector
SunAirPlus is now available.
Ever wanted to build your own Solar Powered Raspberry Pi or Arduino system? SunAir and SunAirPlus are 3rd Generation Solar Charging and Sun Tracking Boards designed by Dr. John C. Shovic at SwitchDoc Labs.
SunAirPlus is customizable with your software and hardware.
Note that the battery and solar panel plugs on SunAirPlus are of type JST-PH 2 pin.
Comments are now closed. Please go to the Product Support Forum at the top of the page.
How to Buy SwitchDoc Labs Products
United States and Worldwide: SwitchDoc Labs Store
Another Choice Within United States: Amazon.com (Free Shipping with Amazon Prime!)
Note: For the latest information and specifications, go to the product page on store.switchdoc.com
What are Grove Connectors?
Check out this Grove Connector tutorial.
SunAirPlus Ships with a Grove Adaptor Cable
SunAirPlus can be used with the Grove Connector fast prototyping system. Both Pin Headers and Grove connectors are supported.
How Do I Connect the Grove Connector on SunAirPlus?
You connect the included Grove to Female Pin Headers Adaptor Cable to the “From Computer” header as shown to the right.
Wire Colors
Wire colors on standard Grove Cables are always the same.
Pin 1 – Yellow (for example, SCL on I2C Grove Connectors)
Pin 2 – White (for example, SDA on I2C Grove Connectors)
Pin 3 – Red – VCC on all Grove Connectors
Pin 4 – Black – GND on all Grove Connectors
New Application Note Published *Secrets of SunAirPlus*
- – Stepper Motor Controller / SunTracker
- – Turn off A USB Power Control with SunAirPlus
- – Directly Charge an iPhone / Android Phone from SunAirPlus
- – More More More Analog to Digital Inputs
What are the LEDs next to the Battery Plug?
Charging State LEDs
CH pin level(Red LED state) | OK pin level(Green LED state) | Statements |
---|---|---|
low level(on) | high level(off) | Charging |
high level(off) | low level(last on) | Complete |
pulse signal(flash) | pulse signal(on) | The battery doesn’t exist or has been deeply discharged |
high level(off) | high level(off) | No charging is taking place as the solar cell input voltage is too low |
SunAirPlus Product Specification
You can download the current Full SunAirPlus Product Specification here.
Data! Data! Data! More Cowbell!
SunAirPlus includes an I2C INA3221 3 Channel Current / Voltage Monitor and a I2C 4 channel 12 bit Analog to Digital Converter (ADS1015). The INA3221 allows you to monitor all of the major currents and voltages in the system (Battery / Solar Panels / Load – Computer ). You can tell what your solar power project is doing in real time.
Here are some results from the SunAirPlus board using the onboard INA3221. You can see that the battery is almost fully charged and the solar cell voltage (actually a variable power supply on the test bench) is 5.19V and it is supplying 735mA. The Output voltage is 4.88V because we are fiddling with the board. The Library works like a champ.
Test SDL_Pi_INA3221 Version 1.0 - SwitchDoc Labs Sample uses 0x40 and SunAirPlus board INA3221 Will work with the INA3221 SwitchDoc Labs Breakout Board ------------------------------ LIPO_Battery Bus Voltage: 4.15 V LIPO_Battery Shunt Voltage: -9.12 mV LIPO_Battery Load Voltage: 4.14 V LIPO_Battery Current 1: 91.20 mA Solar Cell Bus Voltage 2: 5.19 V Solar Cell Shunt Voltage 2: -73.52 mV Solar Cell Load Voltage 2: 5.12 V Solar Cell Current 2: 735.20 mA Output Bus Voltage 3: 4.88 V Output Shunt Voltage 3: 48.68 mV Output Load Voltage 3: 4.93 V Output Current 3: 486.80 mA
You can use this board to power your projects and add a servo or stepper motor to allow it to track the sun using photoresistors to generate even more power! It incorporates a number of outstanding features in a very compact, inexpensive single fully assembled and tested PC Board.
Features
The major features of the SunAirPlus board are:
- Uses 6V Solar Cells
- Use 3.7V LiPo Cells for batteries
- Has LiPo to 5V voltage boost built in
- Directly powers Raspberry Pi / Arduino
- Works Raspberry Pi (3.3V) GPIO and Arduino (5.0V) GPIO
- Built-in data gathering chips for system currents /voltages
- Built-in Interface for Solar Tracking Photoresistor devices
- Built-in Interface for Servo motor or Stepper motor
- Built-in Interface for Limit Switches
- Charges iPhones and other phones or devices
- Approximates an MPPT (Maximum Power Point Tracking) charging system
- Comes with a iPhone / iPad based Control Panel App ($2 on App Store – SunAirPlusPiConnect / SunAirPlusArduinoConnect)
- 3D SunAir Tracker OpenSCAD files available and STL files
RasPiConnect / ArduinoConnect Control Panel
The RasPiConnect/ArduinoConnect control panel for SunAirPlus is shown below. SwitchDoc Labs has completed a licensing agreement with MiloCreek to put a version of RasPiConnect and ArduinoConnect up on the Appstore for SunAirPlus customers for $2.00 (in April 2015). Those current owners of RasPiConnect / ArduinoConnect can download the configuration files from github.com/switchdoclabs in late March, 2015.
3D Printing Files for SunTracker
Download OpenSCAD files and STL Files Here.
Applications
- Put it with your favorite project and make it solar powered!
- Make a Solar Powered Robot
- Install a servo motor or stepper motor and track the sun
- Add a SwitchDoc Dual WatchDog Timer to recover from failures, bad code or brownouts!
- 3D Print your own SunAirPlus solar tracker
is there a max wattage rating for the 6V solar cells? whis is better, 2W, 3.5W?
thx
The wattage refers to the maximum power you can get from the cell in full intense sunlight. If you are powering a small device, such as an Arduino, the 2W cell, with a charging system might be fine. A Raspberry Pi takes more current, so needs more wattage to keep the battery charged to run th Pi.
What’s the max wattage that the sunairplus will work with? incoming solar? 15 Watts, 25 Watts? What has it been tested with?
What about the batteries? can i connect serveral 3.7 lipo’s together? Let’s say 10mAh’s? what about 20?
David,
Here is what I emailed a few minutes ago:
Hi David,
SunAirPlus will charge at a maximum of 1 Amp regardless of the number of panels you put on it. More panels, however, give you more margin on cloudy days. A 15W panel will not produce 15W most of the time.
You could use multiple SunAirPlus boards and charge multiple batteries and then switch batteries by a set of relays (or our quad power management board).
On our SunRover project we switch solar panels to charge 3 battery systems. You might look that up on our blog.
Thanks!
SDL
I just receive a SunAir Plus…
is their a schematic available??
thanks
Hi Tom,
Download the specification on https://www.switchdoc.com/sunairplus-solar-power-controllerdata-collector/
It doesn’t have a full schematic, but there are board layouts and descriptions of all the pins as well as detailed “Theory of Operations”.
SDL
I have a question in regards to this board.
My Arduino gets stuck in the setup() as it seems to be waiting on Wire.begin() I believe. I’ve noticed that this will not continue through until it is able to read a value from the VCC connection. The problem is that I’m not wanting to read the power of the arduino that is running, but of the Pi that I want to monitor and the powering on on/off of. I’m using a photoresistor to check for daylight if so turn on relay (powers the pi) and then I check the mA3 value to compare if it’s below a threshold meaning the pi has turned on, taken it’s picture and then halted off putting it back at idle. Without the pi having power initially though my Arduino again is stuck in the setup.
It’s possible that I could avoid this by swapping from NO to NC on my relay which means my Pi will start automatically when the arduino is powered and then I would wait for the Pi to shutdown and then turn it off by putting the relay into high. But this would mean that if the arduino were to restart then the pi would too. I don’t really want it that way.
Hope I’m just overlooking something.
Hi Brad,
If there is a problem, it is almost certainly a wiring or voltage problem. We have used SunAirPlus with both Arduino’s and Pi’s with no problems.
I’m not quite sure what you are asking at this point. I need to ask some more questions.
1) You are hooking up the Arduino to the SunAirPlus board computer interface? The Pi is plugged into the USB Out port? Are you using SunAirPlus or SunAir?
2) Who is driving the I2C interface on SunAirPlus? The Arduino or the Raspberry Pi? Do you have the voltages set correctly? Arduino is 5V and the Pi I2C is 3.3V.
Make sure that you have a common ground. Not having a common ground will make things all behave very odd.
2) What is the “mA3” value? What is it hooked up to?
Turning a Pi on and off can be a tricky thing. Check out our new Instructable which has a lot about this issue ( https://www.instructables.com/id/Create-Your-Own-Solar-Powered-Raspberry-Pi-Weather/ ). We use the USB PowerControl board ( https://www.switchdoc.com/usb-powercontrol-board/ ) as a Solid State Relay to turn the Pi on and off.
If you are using SunAirPlus, then the internal INA3221 will measure the current going out from VDD5 (and out the USB Out Port).
John
John,
Sorry that that was confusing.
To answer your questions above:
1) I do not use the USB interface of the SunAirPlus board I’m strictly powering from the JP23 connections, the Pi’s connection runs through a relay and the Arduino Pro Mini 3.3V 8MHz is connected directly to my PC.
2) The Arduino is driving the l2C interface, but is grabbing the power readings of the PI so JP13’s VCC and Ground is connected to the PI
3) The mA3 value is supposed to read the output current as you have set up in your example sketch.
I do understand you have that usb power control board but I’m trying to do it all under the 3.3V as this consumes much less power overall. My project coincidentally is very similar to the one you shared via the Kickstarter campaign for the SunAirPlus board where I’m doing a TimeLapse Camera capture with the Pi.
Let me know if you have any other questions and I’ll try to get them answered for you. My background is programming and the tinkering with the hardware is a lot of trial and error for myself so please understand if I don’t fully understand the components I’m using.
Thanks,
-Brad
Brad,
Thanks for answering the questions. I see better now what you are doing. You still need a common ground and the computer interface of the SunAirPlus still needs power and ground from your Arduino. Power and ground from the Arduino to the SunAirPlus computer interface (I2C in this case) are needed to power the level changing buffers.
John
John,
So the connection to the VCC and Ground of JP13 is needed to power the SunAirPlus, but is also used to measure the values of the output?
I don’t want to wreck the SunAirPlus board so would it be feasible to pull the power off one JP23 and then split to the relay for the Pi and then to the Arduino which will always be powered? And they would both ground to the same ground as well? This is where my lack of knowledge of the hardware comes into play.
Thanks,
-Brad
Brad,
JP13 powers the incoming I2C interface (specifically the level shifters – that way SunAirPlus will work with both 3.3V and 5.0V I2C computers). The value of the output that is measured is VDD5 (which connects directly to the 5V Pin on the USB Out connector).
Always have a common ground. There are exceptions, but not in what you are doing. If you don’t have a common ground, nothing will work very well, if at all.
You don’t “pull power” from JP23. You pull power from the VDD5 pins or from the USB plug. Splitting VDD5 to power the Pi and the Arduino is fine. SunAirPlus will read the sum of the two currents however, not just the Pi in that case, however.
You supply power to the buffers from JP23. That is how you tell SunAirPlus whether you have 3.3V I2C (like on the Pi) or 5.0V I2C (like on the Arduino).
Hope that helps!
John
Thanks for the help John! You got me to where I needed to be. Now to integrate the watchdog timer!
John,
I just wanted to reply and say thanks again for helping me back 5 months ago. I’m going to finally be deploying my TimeLapse Camera Project out into the open air of New England. Hopefully in a year I will have a lot of pictures that I can stitch together that shows the building of my house! Very excited to both be building a new house and also finally deploying this project of which I’m using both a SunAirPlus board and a Dual WatchDog Timer.It certainly isn’t professional looking, but it is functional…at least thus far in the testing I’ve been doing with it.
Thanks again for your great products!
Brad,
Thank you for the update! We all love hearing about that. Let us know about the pictures!
SDL
Hi guys, is there a way to order this nice piece of electronics from Australia…? Amazon doesn’t have shipping to Australia.
Oops, sorry, sent the message and noticed tindie!
I Just ordered one of these and will be following the Instructables you guys put up about the solar powered weather station.
I was just wondering what kind of adjustments you might think were appropriate for use where it get cold in the winter, like northern coastal Maine, where temps can drop down -30F at night.
From what I’ve ready about LIPO batteries they don’t really like the cold…. I was thinking about putting the battery in a small separate enclosure and insulating it a little to try to keep some heat in the battery.
Any thoughts ?
I’m going to be drawing a bit more power since I’ll be running a RPI camera on it as well, so I’m not sure if I should increase the battery size and assume a reduction of battery power in cold conditions – maybe 2 batteries in parallel ?
It’s not for anything critical, but it’ll be 500 miles away if it acts up so I’d like to get a feel for it before putting it in the field.
Thanks for making some cool products !
Hello Kevin,
Thank you for the praise! We love hearing that.
1) LiPo batteries don’t like the cold. The real solution is to do like the Mars Rovers. Add solar panel and batteries and the actually run a little resistor based heater if the temperature inside gets too cold. Unfortunately, I’m not kidding. We are now building a solar powered rover and are facing the same thing. What are we going to do to keep the computers and batteries warm?
2) Putting in a separate enclosure will definitely help. Put a thermistor in there so you can read out the temperature and keep track of it. Plus data is cool.
3) The Pi Camera doesn’t take much power unless it is running, then it takes quite a bit. Measure it using the SunAirPlus INA3221 A/D and tell us how much. Take a look at what we did with Project Curacao (https://www.switchdoc.com/project-curacao-introduction-part-1/). Funny, but our problem with that project was getting rid of the heat. If you want to see the latest data, check out: https://milocreek.com/projectcuracaographs/
4) What you need to do is to increase your storage capability and your power generation capability. That means more batteries (in parallel – use the same kind and brand of LiPo if you are putting them in parallel) and add more solar panels. Your system will shutdown sometime because of lack of power, so make sure you really understand the shutdown and startup procedures and hardware (USB PowerController).
Keep us informed and send pictures. We will highlight your project on our site and with our partners.
Best regards,
SDL
Kevin,
Here is a bunch of cool data coming in from Project Curacao right now. 3500 miles away. This is a RasPiConnect control panel on my iPad.
Hello,
My SunAirPlus board seems to have given out. I had it running in a project for about a week at which point it stopped working. It doesn’t supply enough power when working from the battery only. If I add external charging power it has enough power to power my 3V Arduino Pro Mini but not the relay board I also have attached that triggers to turn on my raspberry pi. If I swap out the SunAirPlus board with the SunAir boar all is well except I no longer get my cool readings which I was using to determine when to power down the Pi.
Do you have any ideas on how to troubleshoot this or if it’s fixable?
Thanks,
-Brad
Brad,
It sounds like you have a bad board. Return it to us and we will send you a replacement. When and where did you buy the board?
Best regards,
SDL
I got the board through the Kickstarter campaign.
Hi guys, I’ve recently purchased SunAirPlus for my home autonomous solar powered webcam project.
To test my new toy I connected single 18650 3.7v (maybe 2200mah) battery to the LiPo input of the board and 12v two solar panels connected in parallel with safety diodes stepped down to 5v to the solar panel input via USB meter to see the output voltage and current the whole system draws. To the output of the board I connected my streaming Raspberry Pi.
I left it running overnight expecting at morning having sun on my batteries to see that lipo is charging and RPi is working again (in case lipo died overnight). But I see on the USB meter that with bright Australian sun the board draws just only 90mA and barely can charge the LiPo and if I turn on the output itstops charging the battery at all moreover it starts discharging it trying to keep RPi alive (90mA + whatever battery has). I noticed that SunAirPlus draws very discrete 90mA or 110mA, no more no less.
Just to make sure my solar batteries are okay I connected my powerbank to the 5v output of my step down converter on the solar and saw that it charges with around 500-600mA as I expect.
So I don’t understand what I’m missing here… why board draws just 90mA…
My suspicion was maybe it expects not 5v input from solar but 6v..? Don’t think so though.
Any suggestions are very appreciated!
Levon
Hi Levon,
You need more than 5V to get SunAirPlus to charge at the full rate. Remember that the whole charge controller is designed for 6V solar cells. Modifying your circuit to go to 6V instead of 5V will fix the problem. Check it out before hand with a variable power supply and you can absolutely see the dynamics of the system.
When designing a new project, we always use a variable power supply in place of the solar cells to test the system.
Here are some current results from SunRover. SAP0 is the SunAirPlus charging the motor batteries. The batteries are close to fully charged (we have 24000mAh for the motors – a bit of overkill). The 5V power supply of the SunAirPlus board is currently not driving a load, but SAP1 is driving a RaspberryPi 2 and is fully charged.
——–SAP0——–
LIPO_Battery Bus Voltage: 4.21 V
LIPO_Battery Load Voltage: 4.19 V
LIPO_Battery Current: -200.40 mA
Solar Cell Bus Voltage: 5.66 V
Solar Cell Load Voltage: 5.64 V
Solar Cell Current: 201.20 mA
Output Bus Bus Voltage: 4.98 V
Output Bus Load Voltage: 4.98 V
Output Bus Current: 1.60 mA
——–
——–SAP1——–
LIPO_Battery Bus Voltage: 4.19 V
LIPO_Battery Load Voltage: 4.19 V
LIPO_Battery Current: -4.00 mA
Solar Cell Bus Voltage: 5.54 V
Solar Cell Load Voltage: 5.50 V
Solar Cell Current: 462.40 mA
Output Bus Bus Voltage: 4.90 V
Output Bus Load Voltage: 4.94 V
Output Bus Current: 365.20 mA
——–
Hope that helps,
SDL
Thank you, 6v behaves much better!
Continue learning the board! 🙂
Best regards,
Levon
I have a question, I have uln 2003 board for stepper could I hook that up? If so what pins would go from ULN to the sunairplus or would i need to actually solder then chip on?
I don’t see much documentation and don’t want to burn any components out.
Thanks c:
Bob
Bob,
We have only tested the board with the LM293D. Sorry!
Best,
SDL
Ah, i see https://i01.i.aliimg.com/img/pb/353/538/531/531538353_146.JPG this is what i was referring to in terms of being able to connect it
Ah well Thanks for the response !
Hi, What is the difference between SunAir and SunAirPlus boards?
Both are solar power chargers and controllers. The main difference between the boards is SunAirPlus has I2C board data collection (voltage, current and power for all three – battery, solar panel, computer) and has an I2C on-board 12 bit 4 channel analog to digital converter.
Best,
SDL