Skip to the content
2 layers50 × 50 mmTesi, the printed circuit board in 3D

PMU (Power Management Unit) compatta per sistemi embedded. Integra Power Path automatico, ricarica Li-Po 1S, conversione DC-DC Buck-Boost a 5V e monitoraggio I2C tramite MAX17048. Progetto di Tesi in Ingegneria Elettronica.

Size
50 × 50 mm
Copper layers
2
Thickness
1.6 mm
Parts
65
Nets
39
Pads
161
Tracks, vias
266, 87
Pours
24
Routed
Yes
KiCad
KiCad 9.0 (file 20241229)
Created
3 May 2026
Updated
15 Jul 2026

Overview

Tesi is an open-source printed circuit board by EmaNeg, from the EmaNeg/Power_Management_Unit_Tesi repository on GitHub, published under the MIT licence. It is a 2-layer board of 50 × 50 mm with 65 parts on 39 nets, routed with 266 tracks and 87 vias.

It is built around the TPS63070RNMR, DW01A and SS33, with the BSS84, DMP1045U-7(ES) and FS8205 among its other parts. Its parts include 14 capacitors, 11 resistors, 4 ICs, 4 connectors and 3 transistors. It belongs with the power boards of this library.

Main components

6

README

README.md

Power Management Unit (PMU) per Sistemi Embedded

Status Hardware Firmware License

Render Top PCB                    Render Bottom PCB

Questo repository contiene tutti i file di progettazione hardware, le simulazioni e le librerie software per una Power Management Unit (PMU) integrata, sviluppata come progetto di Tesi di Laurea Triennale in Ingegneria Elettronica e Tecnologie dell'Informazione presso l'Università degli Studi di Genova.

Il modulo (dimensioni 50x50 mm su PCB a due strati) è progettato per superare il divario tecnologico tra le tensioni variabili delle batterie ai Polimeri di Litio (Li-Po) e le specifiche di alimentazione stabili a 5V richieste dai carichi digitali, garantendo continuità di servizio e sicurezza operativa.


✨ Caratteristiche Principali (Features)

  • Power Path Management: Commutazione automatica e trasparente tra sorgente esterna (5V) e batteria, dando priorità all'alimentazione di rete senza azzerare i transitori sul carico.
  • Conversione DC-DC: Uscita stabile a 5V tramite convertitore Buck-Boost, operante in modo trasparente indipendentemente dallo stato di carica della cella (da 3.0V a 4.2V).
  • Ricarica Li-Po 1S: Algoritmo CC-CV integrato basato su architettura lineare, con interruzione automatica a 4.2V.
  • Protezione Hardware (BMS): Modulo di protezione contro sovrascarica (< 2.4V), sovraccarica (> 4.3V) e cortocircuiti.
  • Fuel Gauging I²C: Stima accurata dello Stato di Carica (SOC) e alert hardware tramite algoritmo ModelGauge, senza necessità di resistenze di shunt, azzerando la deriva dell'errore.

🛠 Architettura Hardware

Il progetto è stato interamente sviluppato utilizzando KiCad 9.0. Il sistema si basa sui seguenti circuiti integrati:

SottosistemaModello ICProduttoreFunzione Principale
DC-DC ConverterTPS630701Texas InstrumentsConvertitore Buck-Boost 2.4 MHz fisso a 5V.
Battery ChargerMCP73831MicrochipController lineare per ricarica Li-Po 1S (CC-CV).
Fuel GaugeMAX17048Maxim IntegratedSensore SOC I²C con algoritmo ModelGauge.
Protection (BMS)DW01A + FS8205HM Semi / IC FortuneIC di protezione batteria e doppio MOSFET N-Channel.
Power PathDMP1045U-7Diodes Inc.MOSFET P-Channel per commutazione automatica.

📊 Prestazioni e Risultati Sperimentali

Il circuito è stato collaudato strumentalmente, registrando ottimi risultati in termini di efficienza energetica e stabilità del segnale:

  • Efficienza Energetica ($\eta$): Compresa tra il 78.3% (a pieno carico, ~1.25A) e il 90% (a carico ridotto, ~100mA).
  • Ripple di Tensione: Estremamente contenuto, registrando un picco massimo di 60 mV a 300 mA (90 kHz) e 40 mV a 1.4 A (390 kHz).
  • Carico Elettrico Massimale: Il sistema sostiene in sicurezza carichi continui fino a 1.3A a 4.92V (circa 6.4W in uscita) prima dell'intervento del fusibile resettabile hardware (tarato per sgancio a 1.6A).
Analisi Ripple Oscilloscopio        Risposta al Gradino

💻 Libreria Software (Firmware)

A supporto dell'hardware, è stata sviluppata una libreria firmware in C++ dedicata al sensore MAX17048. La libreria permette ai microcontrollori host (es. Arduino, ESP32, STM32) di interfacciarsi facilmente con la PMU per:

  • Lettura in tempo reale della tensione della cella ($V_{cell}$) e del SOC (%).
  • Monitoraggio del rateo di ricarica/scarica tramite registro CRATE.
  • Gestione interrupt hardware sul pin ALRT per avvisi di sotto-tensione programmabili e sleep mode per il risparmio energetico.

📁 Struttura della Repository

text
├── Hardware/
│   ├── Kicad_files/        # File di progetto sorgente (Schematici, Layout PCB)
│   ├── Production/         # File Gerber e Drill pronti per la produzione industriale
│   ├── Assembly/           # File BOM (Bill of Materials) e CPL per assemblaggio SMT Pick & Place
│   └── 3D_Models/          # Rendering 3D della scheda top/bottom (STEP/PNG)
├── Simulations/            # File di simulazione SPICE dei blocchi funzionali (Proteus 8)
├── Firmware/               # Libreria C++ custom per MAX17048 e sketch di test (Arduino)
├── Datasheets/             # PDF dei datasheet originali dei componenti utilizzati
├── Docs/                   # Immagini, grafici di test termici/ripple, schemi e documentazione extra
└── README.md

Parts

65
QtyValueFootprintReferences
4MountingHole_PadLibrary:MountingHole_2.2mm_M2_DIN965_PadH1, H2, H3, H4
4SolderJumper_2_BridgedLibrary:SolderJumper-2_P1.3mm_Bridged_RoundedPad1.0x1.5mmJP1, JP3, JP4, JP6
3100kLibrary:R_0402_1005MetricR6, R9, R11
322uLibrary:C_0805_2012MetricC3, C4, C5
2100RLibrary:R_0402_1005MetricR4, R7
210uLibrary:C_0603_1608MetricC2, C7
210uLibrary:C_0805_2012MetricC8, C9
21kLibrary:R_0603_1608MetricR5, Rmos2
21uLibrary:C_0603_1608MetricC13, C14
24.7uLibrary:C_0603_1608MetricC11, C12
2470RLibrary:R_0805_2012MetricR3, R10
2LOGOLibrary:UniGe_logoG***, G***
2SS33Library:D_SMAD4, D5
10.1uLibrary:C_0402_1005MetricC10
11.5uLibrary:L_Coilcraft_XxL4020L1
1100kLibrary:R_0603_1608MetricR1
1100nLibrary:C_0402_1005MetricC6
110kLibrary:R_Array_Convex_4x0402RN1
110kLibrary:R_0603_1608MetricR2
110uLibrary:CP_EIA-3216-18_Kemet-AC1
12kLibrary:R_0603_1608MetricRPROG1
14ALibrary:Fuse_1812_4532Metric_Pad1.30x3.40mm_HandSolderF1
1AlertLibrary:Pin_D0.7mm_L6.5mm_W1.8mm_FlatForkTP1
1BSS84Library:SOT-23Q4
1Bat_ChrgLibrary:TestPoint_Pad_D2.0mmTP7
1Bat_connLibrary:KF3012PJ2
1DMP1045U-7Library:SOT-23-GATEQ2
1DW01ALibrary:SOT-23-6U1
1Ext_power_connLibrary:KF3012PJ1
1FS8205Library:FS8205Q1
1LED_amberLibrary:LED_0603_1608MetricLED_A1
1LED_greenLibrary:LED_0603_1608MetricLED_G1
1LOGOLibrary:MAICXEN_logoG***
1MAX17048G_T10Library:SON50P200X200X80-9NU3
1MCP73831-2-OTLibrary:SOT-23-5U2
1MCU_connLibrary:TerminalBlock_Xinya_XY308-2.54-5P_1x05_P2.54mm_HorizontalJ4
1Out_connLibrary:KF3012PJ3
1Power_sw_connLibrary:KF3012PSW1
1QstartLibrary:Pin_D0.7mm_L6.5mm_W1.8mm_FlatForkTP3
1SW_DIP_x02Library:SW_DIP_SPSTx02_Slide_KingTek_DSHP02TS_W7.62mm_P1.27mmSW3
1SolderJumper_3_Bridged12Library:SolderJumper-3_P1.3mm_Bridged12_RoundedPad1.0x1.5mm_NumberLabelsJP7
1Switch_pinsLibrary:PinHeader_1x02_P2.54mm_Vertical_SMD_Pin1LeftSW2
1TPS63070RNMRLibrary:TPS630701RNMRIC1
1V_CHRGLibrary:TestPoint_Pad_D2.0mmTP4
1VinLibrary:TestPoint_Pad_D2.0mmTP6
1VoutLibrary:TestPoint_Pad_D2.0mmTP2

Similar boards

  • 2 layers330 × 300 mmMelbourne Live Train Map, the printed circuit board in 3D

    Melbourne Live Train Map

    CDFER/Melbourne-Live-Train-Map

    A curcuit board with RGB leds to show the live position of trains in Melbourne!

    1,260 parts5GPL-3.0
  • 4 layers66.9 × 66.9 mmTemp Monitor, the printed circuit board in 3D

    Temp Monitor

    Alex-C-EE/Reliable-Temp-Monitor

    A CAN Node designed to take temperature measurement from 3 analog-output sensors and control 2x 24V fans

    127 parts1
  • 2 layers76.5 × 57 mmBuckconverter, the printed circuit board in 3D

    Buckconverter

    GeoffWilliams/usb_buck_converter

    USB powered buck converter 5V -> 3.3V

    15 parts
  • 2 layers111.2 × 76.5 mmThermostat, the printed circuit board in 3D

    Thermostat

    jamesrwaugh/thermostat

    AVR-based Residential Thermostat Hardware / Firmware

    47 parts
  • 4 layers48.3 × 52.9 mmDynaButton, the printed circuit board in 3D

    DynaButton

    manhoosbilli1/dynaboard-button-controller

    Dynaboard - large button/control interface board (102 syms, 590 tracks)

    68 parts
  • 2 layers147.4 × 63.2 mmGuitar down octave, the printed circuit board in 3D

    Guitar down octave

    MR-DOS/guitar_down_octave

    A octave-down effect for guitar. All analog, no microcontroller, no DSP.

    219 parts5GPL-3.0
  • 4 layersPower board v1, the printed circuit board in 3D

    Power board v1

    N-Pulse/EEG-HW-System

    EEG acquisition board, power board and headset development

    79 parts
  • 2 layers111.5 × 76.8 mmLul left, the printed circuit board in 3D

    Lul left

    weteor/LuttUnLutt

    Lütt Un Lütt is a small 3x5+2 split ortho keyboard with encoder

    54 parts70CERN-OHL-P-2.0

Questions

How big is the Tesi PCB?

It measures 50 × 50 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Tesi use?

65 parts, built around the TPS63070RNMR, DW01A, SS33 and BSS84. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the Tesi KiCad files?

From the EmaNeg/Power_Management_Unit_Tesi repository on GitHub, at the commit this page was made from: the board is Hardware/Kicad_files/Tesi.kicad_pcb and its schematic Hardware/Kicad_files/External_Data_MCU.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Tesi design in my own project?

Its repository publishes it under the MIT licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).