A PWM-Type solar charger for 24V systems. Maximum current: 20A
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Thomas Kolb 4ea968c1f8 Apply license: CERN-OHL-P v2 1 year ago
.gitignore Initial commit 1 year ago
LICENSE Apply license: CERN-OHL-P v2 1 year ago
LNSC-2420-cache.lib Initial commit 1 year ago
LNSC-2420.kicad_pcb Apply license: CERN-OHL-P v2 1 year ago
LNSC-2420.pro Fixed input polarity of INA139 1 year ago
LNSC-2420.sch Apply license: CERN-OHL-P v2 1 year ago
README.md Apply license: CERN-OHL-P v2 1 year ago
control.sch Apply license: CERN-OHL-P v2 1 year ago
switching.sch Apply license: CERN-OHL-P v2 1 year ago


Hardware for the LNSC-2420 Solar Charger

The LNSC-2420 is a PWM-based solar charge regulator for 24 V systems supporting up to 20 A charging current.


The version 1.0 currently in the repository contains a mistake will destroy the driver MOSFETs (the power MOSFETs are safe)! Do not build it as-is!

This notice will be removed once the design is fixed.

Noteworthy Features

  • High-side switching with N-Channel MOSFETs:
    • Gate voltage is provided by a charge pump which doubles the battery voltage.
    • Using N-Channel MOSFETs allows to drastically reduce the Rds_on compared to P-Channel MOSFETs, resulting in lower loss.
    • High-side switching allows to have a shared ground connection between solar panel, battery and all devices connected as load.
  • Current and voltage measurement:
    • The solar current, load current, solar voltage, battery voltage and charge pump output voltage are measured using the internal ADC of the STM32F030.
    • The voltages are measured via high-resistance voltage dividers which are buffered using ultra-low-power OpAmps.
  • Low power usage:
    • The charge pump is disabled if both power FETs are off.
    • Additionally, the microcontroller is put into deep sleep (Stop Mode) if no solar power is available and the battery voltage is in undervoltage protection.
    • During normal operation (with LEDs on), the controller itself consumes below 300 mW.
    • In deep sleep, power consumption is below 25 mW.
  • LED status display:
    • 6 LEDs show the internal charging and discharging state.
    • The LEDs are controlled using Charlieplexing (i.e. only 3 GPIOs are needed)
  • Protections:
    • Solar panel reverse current
    • Battery overvoltage
    • Battery undervoltage
    • Load current limit


The design in this repository is licensed under the CERN Open Hardware Licence Version 2 - Permissive (CERN-OHL-P.