Mppt-2420-lc
LibreSolar·mppt-2420-lc
About the Mppt-2420-lc PCB
Mppt-2420-lc is an open source STM32 PCB design by LibreSolar, published on GitHub under the CC-BY-SA-4.0 license. It is a board measuring 114.5 × 60.5 mm, with 141 components from 62 distinct parts.
Its main chip is the STM32F072CB, from the STM32 family. Other key parts include the LM5107, AZ1117, MP2459, AP2210-3.3 and 24AA01. By type, the board carries 50 resistors, 40 capacitors, 9 diodes, 8 ICs, 7 transistors and 7 connectors.
It belongs with the power & battery designs in this gallery.
From the project
Hackable and open source MPPT solar charge controller
Important: As we are currently developing a new revision of this charge controller with several improvements, it is not recommended to rebuild this device anymore. Please see this forum thread and feel free to contribute your ideas.

Main components on the Mppt-2420-lc
Mppt-2420-lc bill of materials (BOM)
141 components, 62 distinct parts — part numbers from the project's BOM.
| Qty | Part | Footprint | Refs |
|---|---|---|---|
| 1 | LM5107 Texas Instruments | SOIC-8_3.9x4.9mm_Pitch1.27mm | U1 |
| 1 | STM32F072CB STMicroelectronics | LQFP-48_7x7mm_P0.5mm | U2 |
| 1 | AZ1117 Diodes Inc. | SOT-223-3_TabPin2 | U3 |
| 1 | MP2459 Monolithic Power | SOT-23-6 | U4 |
| 1 | AP2210-3.3 Diodes Inc. | SOT-23-5 | U5 |
| 1 | 24AA01 Microchip | SOT-23-5 | U6 |
| 1 | LM258 Texas Instruments | SOIC-8_3.9x4.9mm_Pitch1.27mm | U7 |
| 1 | TJA1042T/3 NXP | SOIC-8_3.9x4.9mm_Pitch1.27mm | U8 |
| 4 | CSD18540Q5B Texas Instruments | 5X6_MOSFET | Q1, Q2, Q3, Q4 |
| 3 | BSS84 Fairchild | SOT-23 | Q5, Q6, Q7 |
| 1 | 8MHZ 8MHz Murata | Resonator_Murata_CSTCE_G | Y1 |
| 1 | SOLAR Phoenix Contact | Phoenix_Contact_MKDS_5-2-952 | J1 |
| 1 | LOAD Phoenix Contact | Phoenix_Contact_MKDS_5-2-952 | J2 |
| 1 | BAT Phoenix Contact | Phoenix_Contact_MKDS_5-2-952 | J3 |
| 1 | UEXT | Box_Header_2x05x2.54mm_Straight | J4 |
| 1 | CONN_01X03 Phoenix Contact | Phoenix_Contact_MC_1,5_3-G-3,81 | J5 |
| 1 | CONN_01X02 | PinHeader_1x02_P2.54mm_Vertical | P1 |
| 1 | USB Micro B FCI | USB_Micro-B_10103594-0001LF | P3 |
| 1 | 25A Keystone | KEYSTONE-FUSE-3557-2 | F1 |
| 2 | 200MA 200mA Bel | R_1206_3216 | F2, F3 |
Show 42 more
| Qty | Part | Footprint | Refs |
|---|---|---|---|
| 2 | RJ45_NS Amphenol FCI | RJ45_8P8C | JP1, JP2 |
| 1 | Jumper_NC_Small | PinHeader_1x02_P2.54mm_Horizontal | JP3 |
| 1 | 10K 10k TDK | R_0603_1608 | RT1 |
| 1 | SW_PUSH C&K Components | SW_SPST_EVQP7A | SW1 |
| 1 | ST_Nucleo_SWD | PinHeader_1x06_P2.54mm_Vertical | SWD1 |
| 4 | MMBT3904 Diodes Inc. | SOT-23 | T1, T2, T3, T4 |
| 1 | LED_red Lite-On | LED_0603_1608Metric | LED1 |
| 1 | LED_green Lite-On | LED_0603_1608Metric | LED2 |
| 3 | 1N4148 Diodes Inc. | D_SOD-123 | D1, D9, D10 |
| 1 | SS16FP Diodes Inc. | D_PowerDI-123 | D2 |
| 1 | USBLC6-2SC6Y STMicroelectronics | SOT-23-6 | D3 |
| 1 | NUP2105L ON Semiconductor | SOT-23 | D4 |
| 1 | SMBJ36A Bourns | D_SMB | D5 |
| 1 | LM4040CYM3-2.5 Microchip | SOT-23 | D6 |
| 1 | MM3Z12VT1G ON Semiconductor | D_SOD-323 | D8 |
| 1 | 22UH 22uH Feryster | L-FERYSTER-DTMSS-27 | L1 |
| 1 | 4.7UH 4.7uH Murata | L_0805_2012Metric | L2 |
| 1 | 47UH 47uH Tayo Yuden | Bourns_SRN6045TA | L3 |
| 1 | 600R Murata | L_0603_1608Metric | L4 |
| 2 | 1000U 1000u United Chemi-Con | CP_Radial_D16.0mm_P7.50mm | C1, C2 |
| 3 | 4.7U 4.7u Murata | C_1210_3225 | C3, C4, C15 |
| 1 | 820U 820u Panasonic | CP_Radial_D10.0mm_P5.00mm | C5 |
| 1 | 1n Murata | C_0603_1608 | C6 |
| 4 | 1u Murata | C_0805_2012 | C7, C8, C14, C27 |
| 15 | 100N 100n Murata | C_0603_1608 | C9, C10, C16, C19, C22, C25, C26, C29 +7 |
| 5 | 10N 10n Murata | C_0603_1608 | C11, C13, C17, C18, C28 |
| 5 | 2.2U 2.2u Murata | C_0603_1608 | C12, C23, C33, C36, C38 |
| 3 | 10U 10u Murata | C_0805_2012 | C20, C21, C24 |
| 1 | 100P 100p Murata | C_0603_1608 | C35 |
| 3 | 3.3 Yageo | R_0805_2012 | R1, R3, R10 |
| 4 | 1M Yageo | R_0603_1608 | R2, R39, R40, R50 |
| 1 | 2.2 Yageo | R_1206_3216 | R4 |
| 6 | 100K 100k Yageo | R_0603_1608 | R5, R24, R25, R33, R46, R47 |
| 2 | 2m Bourns | R_Bourns_CRE2512 | R6, R17 |
| 14 | 2.2K 2.2k Yageo | R_0603_1608 | R7, R8, R11, R12, R13, R18, R19, R20 +6 |
| 4 | 56K 56k Yageo | R_0603_1608 | R9, R30, R45, R49 |
| 4 | 150K 150k Yageo | R_0603_1608 | R14, R15, R21, R22 |
| 7 | 10K 10k Yageo | R_0603_1608 | R16, R23, R27, R29, R37, R44, R48 |
| 1 | 5.6K 5.6k Yageo | R_0603_1608 | R26 |
| 1 | 110K 110k Yageo | R_0603_1608 | R28 |
| 1 | 120 Yageo | R_1206_3216 | R36 |
| 2 | 330 Yageo | R_0603_1608 | R42, R43 |
Mppt-2420-lc design files
The KiCad project lives in the LibreSolar/mppt-2420-lc repository on GitHub; these links point at the commit this page was built from.
Mppt-2420-lc: common questions
What microcontroller does the Mppt-2420-lc use?
The Mppt-2420-lc is built around the STM32F072CB, from the STM32 family.
How big is the Mppt-2420-lc PCB?
The Mppt-2420-lc measures 114.5 × 60.5 mm and is 1.6 mm thick.
How many components are on the Mppt-2420-lc?
141 components, from 62 distinct parts, with part numbers taken from the project's own BOM. The full bill of materials is listed on this page.
Where can I download the Mppt-2420-lc design files?
From the LibreSolar/mppt-2420-lc repository on GitHub, which has the KiCad layout and the BOM; the links under Design files point to each one.
Can I use the Mppt-2420-lc design in my own project?
Yes, under the terms of its CC-BY-SA-4.0 license, which LibreSolar chose for the repository.
Can I test firmware for the Mppt-2420-lc without the hardware?
Yes. HardLabs builds a simulation of the board from its netlist and BOM, so you can run and debug STM32 firmware against it before you order a PCB.
Similar boards
STM32
LumenPnP Motherboard
opulo-inc
149 × 95 mm296 parts4LCC-BY-SA-4.03.7kSTM32
AxxSolder
AxxAxx
39 × 82.5 mm122 parts2LGPL-3.01.7kSTM32
AIOC
skuep
21 × 31.5 mm47 parts2LMIT1.4kSTM32
Ferris
pierrechevalier83
208.8 × 86.8 mm102 parts2LSHL-2.11.3kSTM32
176 pin board
rusefi
61.8 × 73.2 mm76 parts2LGPL-3.01.2kSTM32
Brain board STM32F407
rusefi
61.8 × 73.2 mm69 parts2LGPL-3.01.2k