Free Charge Controller
Free Energy. Free Ideas.
Welcome to the main website for the open source Free Charge Controller project. The goal of this project is to design a charge controller with maximum power point tracking (MPPT). Maximum power point tracking allows a solar panel, wind turbine, etc to achieve maximum efficiency and deliver maximum power to a load. In this case, a load can be a battery, inverter, or the grid.
Latest Release: v4.04
What Is A Charge Controller?
A charge controller is an essential part of any alternative energy system. In its simplest form, a charge controllers job is to make sure the power source (such as a solar panel) 'plays nice' with the load (such as a battery). The simplest implementation of this is a single diode placed in between a solar panel and a battery. This ensures that the battery does not discharge into the solar panel at night. A more sophisticated implementation would be adding the ability for the charge controller to disconnect the solar panel when the batteries are fully charged - in order to prevent over-charging damage to the batteries. An advanced charge controller would implement features such as MPPT.
The Free Charge Controller project has just released its fourth hardware revision! Version 4.04 focuses on implementing a charge controller with MPPT for charging a 12V battery with an 60 Watt (or less) solar panel. The hardware is built on top of an Arduino shield protoboard and is controlled by an Arduino.
This is both an open source hardware and an open source software project. All documents, files, and anything you find on this website is free under the terms of the Creative Commons Attribution-Share Alike license. With enough help, it is hoped that future versions will support different battery voltages, off-grid and grid-tied systems, as well as other power sources such as wind turbines, micro-hydro turbines, etc.
The Free Charge Controller project is still in its infancy. Version 4.04 represents the first working version. The focal point of effort at this time is encouraging people to build the circuit, use and contributing to the documentation, and assist in the development of a custom PCB Arduino shield. Progress on these fronts, as well as general support, can be viewed on the project mailing list.
The current version of the open source Free Charge Controller is based on Tim Nolan's design and article which describes how to build a software controlled buck converter for charging batteries. The hardware (a buck converter) is built on top of an Arduino protoshield and controlled by an Arduino. A buck converter steps down voltage from a higher DC voltage level to a lower DC voltage level. In this case, it would step voltage down from the 18 volts of a solar panel to the 12 volts of a battery. Since the converter is software controlled, it can be programmed to charge any battery chemistry, change its drive frequency to achieve maximum conversion efficiency, as well as implement MPPT to allow a solar panel to deliver maximum power - all without any changes to hardware.
We are actively looking for members from the hardware and software communities to help us on our endeavor. Please join us in empowering people to generate their own power. Micropower generation gives people freedom from dependence on foreign oil as well as bills and taxes from the grid. Give people the freedom to use open source hardware and software to enrich their lives.
This website is the public face of this project. If you would like to become an active member, you should also join our Yahoo! group where all discussions on future development happen.
You can also find out more about the subject of solar and MPPT by exploring some of our Links.
Be sure to check out the podcast interview conducted by Open Source Hardware Junkies. It covers a lot of why this project was created, where it's at, and where it's heading.
The Free Charge Controller is composed of four main hardware blocks:
All schematics and board layouts are designed in Eagle v5.x.
How To Build
The software is under heavy development. We are actively seeking an embedded software expert to oversee the development of firmware
To program the charge controller, you will need an inexpensive AVRISP mkII compatible programmer. Here are a few sources:
- Mengjin Su @ Fun4DIY sells an inexpensive kit. All you need are basic soldering skills. (Currently out of stock)
- USBtinyISP AVR Programming Kit sells for $22 at adafruit industries.
- Search for 'AVRISP' on eBay to find many options.
Follow our guide for setting up the development environment on your computer:
Hardware and Software Downloads
Version 4.04 is the latest release. This version is based on the Tim Nolan's design. The buck converter circuity is built on top of an Arduino protoboard shield. The Arduino is used to drive the buck converter PWM input. It also senses the voltage input from the panel, the current in from the panel, and the voltage output to the load.
This version has been kitted and is sold through Jameco and Digikey. See our purchase info page for more details.
- Version 4.04 BOM & Schematic in Eagle and PDF format
- Version 4.04 Schematic in PDF Format
- EXPERIMENTAL Board Layout
- Version 3.00 Schematic in PDF Format
- Version 3.00 Gerbers + Eagle Schematic and Board files
- Version 3.00 Gerbers confirmed to work with BatchPCB
This is the second, prototype board. The design is being radically changed, but these design files are available for posterity.
- Version 2.00 Schematic & Board Layout in PDF Format
- Version 2.00 BOM with ordering information
- Gerber and Eagle files for creating a V2.00 Board
This is the first, prototype version of the board.