Friday, November 21, 2014

Open source MPPT controller

OK, this is somewhat boating related :-)    As part of the other battery charging projects I have been doing (ala, DC generator, Alternator Regulator), I have now turned to three new areas:
  1. Solar MPPT controller
  2. Battery BMS
  3. CAN based network connecting all charging sources together...
I started doing this after observing some interesting interactions between different charging sources.  For example on Viking Star we have Solar + the mains alternator, and our little Kubota DC generator for energy sources while away from the docks.  Ideally one would like to see each of these sources (and yes, they CAN be all enabled at the same time) working towards the same goals; e.g., all having the same idea what target voltage should be, or when the battery is ready to move from Bulk to Acceptance phase.   In practice, each has their own idea and I can at times see undesirable interactions between them.  The target battery voltage from the Alternator might be a bit higher then the solar panels - and when things get to the final stages of recharging, the solar panels enter Float mode early, while leaving the mains alternator still charging.  Would be better if it was the other way around, turn off the mains alternator and let the the solar panels finish things up.

There are ways to 'work' around this, assuming equipment has the flexibility and configuration options.  Example, could set the Solar controller to a higher target voltage.  But that can leave the battery undercharged if working only on mains alternator (ala on a cloudy day) as the Alternator would need to be set for a lower voltage.  My vision is a 'systems' approach, a device installed on the battery would decide what the battery needs and communicate those needs to all charging sources.  This way everyone is working towards the same goal.  And it can reduce the wiring mess as well - we have 6 devices sampling battery temperature and voltage on Viking Star.  Those 12 sets of wires can be replaced with one CAT-5 cable.

I am just getting started on this, and have been working on a couple of hardware developments:

Each of these will communicate over a CAN network via CAT-5 cables.  Once I have those two working, will revise the Alternator regulator to participate in this system, and the DC generator as well.

Still have a lot of work to do, the two developments + the CAN protocols (am hoping to leverage on of the existing protocols out there), but today I just posted up the 1st cut hardware design for the solar MPPT controller.

Like my other projects it is open source and I have posted all the CAD files; will add the firmware as it gets developed.

Another reason I kind of think this is Boat Related: more then one of these controllers can be used on your boat and act in a coordinated way (due to the CAN).  For example, on Viking Star we have two solar panels.  At times one panel gets partly shaded.  Depending on how things are wired up, a partial shaded panel can either constrain the output of the whole system,  drop the whole panel out of participation, or some combination in between.   A separate MPPT controller dedicated to each panel should be able to fully optimize each panel, allowing the shaded panel to participate as much as it is able to, without impacting the other panel.

Design calculations look that this could come in under $100 in cost, and operate in the 98-99% efficiency range.  Am just now ordering hardware to build one up and look forward to trying it out next year on Viking Star.


  1. Your project is amazing, i really feel good when i see stuff related to renewable energy. I have Designed my own Mppt with given specification Electrical specifications:

    1.Rated Voltage= 12V

    2.Maximum input current = 5A

    3.Load current support up to =10A

    4. Input Voltage = Solar panel 12 to 24V

    5.power of Solar panel = 50 Watts

    1. Thanks. And fun to look at your project. I am interested in the ESP modules, something to play with at a later time I think.