Anyone tackling solar power for the first time will quickly find there’s a truly dizzying amount of information to understand and digest. You might think you just need to buy some solar panels, wire them together, and just sort of plug them in. But there are a hundred and one different questions about how they’ll be connected, the voltage of the panels, and the hardware for driving a load. [Michel], [case06], and [Martin Jäger] have set out to create a simpler and easier to understand charge controller named LibreSolar.

a diagram showing how the libre solar is wired up

A charge controller is fundamentally a simple idea. The goal is to charge a battery with solar panels, which means it’s essentially just a heavy-duty DC/DC buck converter. What makes this project different is that it is an open platform built for extensibility.

There are UEXT connectors included for adding extra peripherals, and with some tweaks to the STM32 firmware, it would be easy to handle small wind turbines (with some rectification to convert to DC, of course). LibreSolar seems to be designed with an eye towards creating a nano-scale localized networked grid. For example, they’ve developed a Raspberry Pi Zero module that uses WiFi to create a CAN bus allowing the boxes to communicate their maximum voltage to each other. This makes the system as plug-and-play as possible, as the bus doesn’t require a master controller to communicate.

With features such as MPPT (Maximum Power Point Tracking), 20 amp peak charging, a USB interface for updating, and several built-in protection mechanisms, it’s clearly a well thought through project. We look forward to seeing it deployed in the real world!