Solar Battery Management System Switch

The switch board is used to interconnect the source input, batteries and loads in various combinations, controlled by the microcontroller. The only restriction is that the batteries must never be allowed to connect together directly. A healthy distrust of microcontroller reliability dictates that protection against this possibility should be provided in hardware. A simple circuit using digital demultiplexers and inverters provides for this. In the rare event that the solar panel (or other) source lacks protection against reversal of polarity, a Schottky diode is added. Strictly speaking the battery inputs should also be protected by a diode, but the voltage drop, though small, is significant for such low battery voltages. Therefore the protection is omitted. If necessary suitable diode protection can be added in series with the MOSFETs to allow current flow to the loads but not between the batteries. For higher voltage systems in which the voltage drops are less important this would be highly recommended

The circuit for the switching MOSFETs is straightforward. These are PMOS type; the loads are placed in the drain circuit and the batteries in the source circuit. The solar panel is placed in the source circuit with the batteries in the drain circuit. The MOSFETs are turned on by pulling the gate to ground.

Regulated 9V power circuit is derived from the switch output to the loads so that the power drawn from the electronics is included in the load power consumption measurements. Each of the the battery inputs also provides a contribution so that the electronics power is not cutoff when the loads are disconnected. This is added in through two diode drops to ensure that the contribution from the load outputs has priority.

The digital part of the circuit uses a 74HC139 dual 4-line demultiplexer to select the battery to be connected to each load. A second  74HC139 is used to select the battery to connect to the solar panel source. The outputs must be inverted and level shifted to activate the MOSFET switches. The circuit only shows one set of switches relevant to the first battery. The other two batteries have an identical set of switches. Note the PWM signal on pin 8 of the connector causes the panel to be disconnected from any battery during the PWM off-period. The MOSFET drivers are only low speed so the PWM frequency needs to be less than 5kHz or so.

The microcontroller may select any combination of loads for each battery, zero, one or two. The batteries can be completely disconnected from the loads and source inputs if necessary simply by selecting the zero output line (which is left unconnected).


This version of the board was created using gEDA PCB.

The tracks between the MOSFETs and the batteries and loads are provided by heavy single strand wire to reduce the voltage drops that could form. Tracks were provided between the panel and MOSFETs as voltage drops are not significant in that circuit, however when a second panel was added in parallel the currents flowing in these tracks caused excessive heating and a small fire destroyed the board. A later version of the board will replace these tracks with provision for heavy wire jumpers.


First created
30 August 2013
Last Modified 6 April 2015
Ken Sarkies 2013