Monday, September 24, 2114

Solar MPPT controller

Last updated:  Nov 21, 2014

The SmartMPPT controller is a solar panel charge controller utilizing the Arduino IDE to allow for simple updating and modification. It is sized to support one or two 'large' solar panels (charge current up to 25A, and solar panel input up to 85v) supporting 12v, 24v, 32/36v, or 48v battery systems.  In its final form a wide range of charge profiles will be included, and when combined with the remote smartBMS module ( ) will allow advanced battery charge management capabilites (such as measuring battery acceptance rate) to assure not only a fully charge battery, but also protect it from overcharging (as well as chronic undercharging).

By using a module approach, multiple SmartMPPT controllers may be installed into a system to allow near unlimited solar capacity scaling.  In addition, each solar panel / mppt controller module will optimize power output independently - allowing optomial power production when say a port of your solar systems panels are shaded (highly important in movable structures, ala boats or RVs).  Simple CAT-5 cables connect the  SmartMPPT controller (s) allowing coordination of solar charging, as well as intelligent integration into other charging sources for the canBAT network (  )

Currently the 1st hardware design has been completed.  After fabrication the MPPT algorithm from Tim Nolan's efforts will be ported to proof the hardware.  From there will develop more advanced firmware to include concepts from the Smart Alternator Regulator ( such as configurable battery charge profiles, ASCII commands to allow customization w/o recompiling, as well as CAN protocols for communicaiton.  I am interested in experimenting with advanced MPPT algrosums, as well as other optomizaiton algrosiums (ala, self optomizing dead-time for the FETs)


  1. it will be greatful if u can provide me the circuit diagram of the mppt tracking ,
    because im making a project on solar panel charging mobile phone like a solar power bank.
    can you please share your circuit and design on pcb diagram with me

  2. Replies
    1. Hello! That person has some good info!.

      For my design, here is the resource for it:

      My primary reason for doing it was that I wanted a controller with CAN communications capability. Along the way I was contacted by: and at that point I stopped working on my design and instead am looking to work with him. He does have a workable prototype, my design had not progressed much past the Smoking FETs phase. But in the future I will likely revisit it as it is a higher capacity approach.

      Hopefully this helps! (Like your blog, fun stuff to read though)