

Suntastic
An ultra low-power management board for IoT devices
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 120
- Nets
- 96
- Pads
- 321
- Tracks, vias
- 329, 14
- Routed
- Yes
- KiCad
- KiCad 7 (file 20221018)
- Created
- 4 Feb 2024
- Updated
- 19 Feb 2024
Overview
Suntastic is an open-source printed circuit board by snorkman88, from the snorkman88/suntastic repository on GitHub, published under the Apache-2.0 licence. It is a 2-layer board with 120 parts on 96 nets, routed with 329 tracks and 14 vias.
It is built around the TPL5010EVM, TPS22917DBV and XC6220B331MR, with the EVP-BF6C1A000, FBB04004-F40S1003K6M and PMEG10020ELRX among its other parts. Its parts include 25 capacitors, 11 connectors, 10 ICs, 8 resistors and 1 diode. It belongs with the power boards of this library.
Main components
6TPL5010EVM
-ModulesTexas InstrumentsTPS22917DBV
SOT-23-6-40℃~+125℃ 0V~5.5V 1 2A 80mΩ Active High Load Switch Output discharge function、Soft-start、Reverse current blocking SOT-23-6 Power Distribution Switches ROHSTexas InstrumentsPower Distribution SwitchesXC6220B331MR
SOT-23-5-40℃~+85℃@(Ta) 1 25uA 3.3V 400mV@(800mA) 5.5V 50dB@(10kHz) 900mA Fixed Over Current Protection、Over Temperature Protection Positive SOT-23-5 Voltage Regulators - Linear, Low Drop Out (LDO) Regulators ROHSTECH PUBLICVoltage Regulators - Linear, Low Drop Out (LDO) RegulatorsEVP-BF6C1A000
SMD,6x6mmTactile SwitchesPanasonicFBB04004-F40S1003K6M
SMD-55℃~+85℃ 0.4mm 2 300mA 40P 60V Gold Phosphor bronze Surface Mount,Vertical SMD Board-to-Board and Backplane Connector ROHSTXGABoard-To-Board And Backplane ConnectorPMEG10020ELRX
SOD-123W-65℃~+150℃ 100V 150nA@100V 2A 830mV@2A Independent SOD-123W Schottky Diodes ROHSNexperiaSchottky Diodes
README
README.mdDRAFT: Suntastic
An ultra low-power management board for meshtastic solar repeater devices.
Overview
This repository contains the design proposal of a power management board for ultra low power embedded devices. The board features a solar charger circuit with Maximum Power Point Tracking (MPPT) for 5V solar panels, two DC-DC converters, a load switch control with adjustable hysteresis and an external Watchdog Timer.

Why did I start this project?
MPPT is a must
I recently started working with Meshtastic and decided to deploy solar powered repeaters based on the WisBlock Core module that contains a RAK4631. So far it's been recommended to use this core module with any of the available base boards, however after inspecting RAK's 19007 base board, I noticed that the battery charging stage based on the TP4054 is not performing any kind of optimization to maximize the power available from the solar input.
In contrast to linear chargers, MPPT chargers excel in extracting energy from solar panels under conditions such as partial shading, changing light angles, and fluctuating weather conditions. This adaptability is crucial for maximizing energy harvesting in real-world scenarios. By efficiently managing the charging process, MPPT helps prevent overcharging or undercharging of the accumulators in small IoT devices. This contributes to extending the overall lifespan of the battery, reducing the frequency of maintenance or battery replacement, and enhancing the device's reliability.
Reduce the current consumption of all the additional electronics
The recommended Wisblock base board RAK19007 contains extra electronics that are not really necessary once the RAK4631 core module has been correctly configured and flashed. This extra electronics however, do imply extra power consumption.
As it's been empirically proven in this thread once the RAK4631 core is flashed, it only needs a proper 3.3V power source to start working.
However RAK actually recommends providing two voltage sources to the RAK4631, one that supplies power to the input of internal DC-DC buck converter and another 3.3V for the SX1262 chip. SEE THIS POST
Supercapacitors as main energy storage
Another point that motivated the start of this project is the use of supercapacitors instead of conventional LiPo or LiFePo batteries. Whether supercapacitors are better than batteries for IoT devices depends on the specific requirements of the application. Here are some factors to consider:
-
Power Density: Supercapacitors generally have higher power density than batteries. They can quickly charge and discharge, making them suitable for applications that require rapid bursts of energy. This can be advantageous in IoT devices that need to transmit data or perform periodic tasks quickly.
-
Cycle Life: Supercapacitors often have a longer cycle life compared to batteries. Compared to batteries, they can withstand a large number of charge-discharge cycles without significant degradation in their structure even when being completely depleted and its output voltage drops down to 0V. This is beneficial for IoT devices that may need to operate for extended periods without maintenance.
-
Lifetime and Maintenance: Supercapacitors can have a longer overall lifetime than batteries, as they do not suffer from the same degradation issues over time. They also require less maintenance since they do not have the same chemical processes that can lead to wear and tear in batteries.
-
Size and Weight: Supercapacitors can be more compact and lighter than batteries, which is important for IoT devices with size and weight constraints. This is particularly relevant for small, portable devices or those with limited space.
-
Temperature Sensitivity: Supercapacitors are known for their resilience to temperature variations, making them suitable for applications in harsh environments. This can be an advantage in IoT devices deployed in diverse environments where temperature fluctuations are common. Supercapacitors have a temperature range of operation og -40°C to 85°C or even higher in some cases.
-
Energy Density: Batteries typically have higher energy density, meaning they can store more energy per unit of volume or weight. If the IoT device requires long periods of operation without recharging, a battery might be a more suitable choice.

In summary, the choice between supercapacitors and batteries for powering IoT devices depends on the specific requirements of the application. Supercapacitors may be a better choice for applications that require high power density, quick charge/discharge cycles, and long cycle life, while batteries may be preferable when higher energy density and longer operating periods without recharging are crucial. Each technology has its own strengths and limitations, and the decision should be based on the specific needs and constraints of the IoT deployment.
External Watchdog timers are sometimes needed
For IoT devices deployed in remote areas, the incorporation of an external watchdog timer becomes even more critical due to the challenges associated with limited accessibility and maintenance. Remote locations often entail harsh environmental conditions and restricted physical access, making it challenging to address issues promptly. The watchdog timer becomes a crucial asset in such scenarios as it autonomously monitors the device's operational state and intervenes in the case of failures. This capability ensures that even if a device experiences a software glitch or hardware malfunction, it can autonomously reset itself, mitigating potential downtime without requiring manual intervention.
The reliability and self-correcting nature of an external watchdog timer contribute significantly to the overall resilience of IoT devices in remote deployments, enhancing their ability to function autonomously and maintain consistent operation in challenging and hard-to-reach environments.
IMPORTANT
IMPORTANT: this board has been specifically thought to handle 5V solar panels and supercapacitors up to a voltage of 5.4V max.
Table of Contents
- Solar Charger Circuit
- DC-DC Converters
- UVLO - Schmitt Trigger Control
- External Watchdog timer
- Monitoring of the voltage seen on the accumulator [blocked]
Solar Charger Circuit
The solar charger circuit is designed to efficiently charge an accumulator using 5V solar panels. It incorporates Maximum Power Point Tracking (MPPT) to optimize the energy harvesting from the solar panels.
The SPV1040 device is a low power, low voltage, monolithic step-up converter with an input voltage range from 0.3 V to 5.5 V, capable of maximizing the energy generated by solar cells (or fuel cells), where low input voltage handling capability is extremely important. Thanks to the embedded MPPT algorithm, even under varying environmental conditions (such as irradiation, dirt, temperature) the SPV1040 offers maximum efficiency in terms of power harvested from the cells and transferred to the output. The device employs a voltage regulation loop, which fixes the charging battery voltage via a resistor divider.
It is possible to set the maximum output current according to charging requirements by a sense resistor .
DC-DC Converters
Boost Converter
The first DC-DC converter that is presented is a boost converter responsible for powering the control stage and the input of the internal DC/DC converter present in the nRF52840.
It is based on a TPS61202 from Texas Instruments and takes variable voltage seen at the accumulator (i.e a supercapacitor) and converts it to a 5V one.

This boost converter features a very low start-up voltage (0.5V) and Iq=50uA when in operation.
For the very first version of this board, in order to save schematic and PCB design time, it would be ideal to use a ready-to-use board like the Pololu U1V10F5.
For more info about this module visit Pololu Site
Buck-Boost Converter or LDO for obtaining 3.3V
The second voltage regulator is in charge of supplying power to the 3.3 V bus to which the SX1262 chip (present in the WisBlock RAK4631) and watchdog timer are connected.
This regulator should only start operating after the load switch controlled by the UVLO is closed.
It is very important to remark that clean power supplies are essential for RF transceivers to maintain optimal performance. RF signals are sensitive to electrical noise, and any disruptions in the power supply can lead to signal degradation.
In the case a buck-boost converter (like the TPS63020) is adopted, then it could either take as an input the variable voltage from the supercapacitor or the 5V constant output coming out of the TPS61202. This approach however, necessitates more filtering of the output voltage.
Using LDOs on the other hand, requires an input votlage higher than the one desired at the output (in this case 3.3V). Ergo, connecting its input directly to the supercapacitor is not an acceptable approach.
Although taking 5V coming from the TPS61202 as input voltage might bring some input ripple, the PSRR of an LDO contributes to suppress it at the output.
In the case the output of the LDO still shows some ringing at high frequencies (usually as peaks on the waveform), ferrite beads should be placed to filter the desired frequencies.
For more detailed info about this visit this Application Note from Analog Device - AN101
or watch this video
Why are there two DC-DC converters?
It is desirable that the UVLO control circuit starts operating as early as possible if there is enough input power (around Vin=0.7V) and BEFORE any other electronic device. The opposite behaviour is also desired. In other words, when the input voltage coming from the accumulator decreases, the UVLO should be last part that is turned off.
Since it's expected that the control stage consumes only a few microamps when operating, the output voltage of 5V should remain steady while the accumulator (i.e: supercapacitor) continues to charge. Once the voltage seen accross the terminals of the accumulator reaches the lock-in voltage, the second converter, external watchdog timer and microcontroller will be energised.
UVLO - Schmitt Trigger Control
The project includes an UVLO circuit with with adjustable hysteresis that enables or disables a load switch. The load connected to the switch will be the main Buck-Boost Converter that feeds power the RAK431 or another microcontroller.
Since the supercapacitor bank I have at the moment (250F x 5.4V) already comes with an extra PCB to protect them against overvoltages higher than 5V, and for this simulation only, a value of 3V was chosen for the upper limit and 1V for the lower one.
Since it's the intention to make the supercapacitor charge up to a voltage value close to the maximum, the final version will have a lock-in voltage closer to 5V or 5.4V if I get a bank without the overvoltage protection. The lower limit of the hysterisis window will be kept at 1V.
In order to avoid flickering of the output when the supercap voltage reaches the lock-in and -out values, an SR latch based on NOR gates will either SET (and keep it HIGH even if the input flickers) when the lock-in voltage is reached; and RESET its output when reaching the lock-out value.
The circuit consists of two TLV3691 nano-power comparators powered by the 5V bus.
For the voltage references, it's yet to be defined if specific high-precision voltage references like REF35 will be used or simply get those reference values from a voltage divider. Current consumption reduction is PRIORITY.
For the latching of the output, low power SN74AUP2G02 NOR gates will be used. These gates will also be powered by the 5V bus.
The load switch will be a TPS22917.
In summary this circuit makes sure the embedded device stays de-energised until the supercapacitor is fully charged.
Watchdog timer
If for any unforeseen reason, the voltage supplied to the core module drops low enough that the device shuts down or to a level that causes a brown-out, it may not be able to resume its normal operation by itself without external intervention (manually or by automation) that either removes and reconnects the voltage supply or issues a reset.
An external watchdog timer will issue a reset in case of a software bug/glitch or brownout will be a TPL5010 from Texas Instrument.

The DONE signal resets the counter of the watchdog only. If the DONE signal is received when the WAKE is still high, the WAKE will go low as soon as the DONE is recognized.

For this feature to be fully functional, two GPIO pins and CHANGES IN THE CORE MODULE FIRMWARE ARE NEEDED to monitor the WAKE signal and generate a DONE pulse to reset the counter of the WDT.
Images taken from the datasheet.
Monitoring the current voltage on the supercapacitor
Also mentioned in this thread. A voltage divider must be connected to Pin40 (P0.05/AIN3) of the RAK4631.

CHANGES IN THE CORE MODULE FIRMWARE ARE NEEDED TOO in order to properly reflect the current voltage value on the supercapacitor based on the resistors ratio from the voltage divider.
Parts
120| Qty | Value | Footprint | References |
|---|---|---|---|
| 17 | SolderJumper_2_Open | Jumper:SolderJumper-2_P1.3mm_Open_RoundedPad1.0x1.5mm | JP1, JP2, JP3, JP6, JP7, JP10, JP11, JP13, JP15, JP17, JP21, JP22, JP24, JP26, JP27, JP28 +1 |
| 12 | 0.1uF | Capacitor_SMD:C_0603_1608Metric_Pad1.08x0.95mm_HandSolder | C2, C4, C5, C6, C7, C10, C12, C14, C16, C17, C18, C24 |
| 6 | SolderJumper_3_Open | Jumper:SolderJumper-3_P1.3mm_Open_RoundedPad1.0x1.5mm_NumberLabels | JP9, JP12, JP19, JP20, JP23, JP25 |
| 5 | 1uF | Capacitor_SMD:C_0603_1608Metric_Pad1.08x0.95mm_HandSolder | C3, C13, C19, C21, C23 |
| 4 | FerriteBead | Inductor_SMD:L_0603_1608Metric_Pad1.05x0.95mm_HandSolder | FB1, FB2, FB4, FB5 |
| 4 | Jumper_2_Open | Jumper:SolderJumper-2_P1.3mm_Open_RoundedPad1.0x1.5mm | JP18, JP29, JP30, JP31 |
| 4 | MountingHole | MountingHole:MountingHole_3mm_Pad | H1, H2, H3, H4 |
| 4 | TestPoint | TestPoint:TestPoint_THTPad_4.0x4.0mm_Drill2.0mm | TP15, TP16, TP17, TP18 |
| 3 | Fiducial | Fiducial:Fiducial_1mm_Mask3mm | FID1, FID2, FID3 |
| 2 | 10u | Capacitor_SMD:CP_Elec_4x4.5 | C20, C22 |
| 2 | 1uF | Capacitor_SMD:CP_Elec_4x4.5 | C11, C25 |
| 2 | 2.2uF | Capacitor_SMD:CP_Elec_4x5.4 | C1, C9 |
| 2 | 3.3M | Resistor_SMD:R_0603_1608Metric_Pad0.98x0.95mm_HandSolder | R1, R7 |
| 2 | 4.7uF | Capacitor_SMD:CP_Elec_4x5.4 | C8, C15 |
| 2 | 9.3M | Resistor_SMD:R_0603_1608Metric_Pad0.98x0.95mm_HandSolder | R2, R6 |
| 2 | Conn_01x04_Pin | Connector_PinHeader_2.54mm:PinHeader_1x04_P2.54mm_Vertical | J7, J8 |
| 2 | SolderJumper_2_Bridged | Jumper:SolderJumper-2_P1.3mm_Bridged_RoundedPad1.0x1.5mm | JP4, JP5 |
| 2 | SolderJumper_3_Open | Jumper:SolderJumper-3_P1.3mm_Open_RoundedPad1.0x1.5mm | JP14, JP16 |
| 2 | TLV3691IDCKR | Package_TO_SOT_SMD:SOT-353_SC-70-5_Handsoldering | U1, U4 |
| 2 | TPS22917DBV | Package_TO_SOT_SMD:SOT-23-6 | U6, U9 |
| 2 | TestPoint | TestPoint:TestPoint_Bridge_Pitch5.08mm_Drill1.3mm | TP21, TP22 |
| 1 | 1.8M | Resistor_SMD:R_0603_1608Metric_Pad0.98x0.95mm_HandSolder | R4 |
| 1 | 120k | Potentiometer_THT:Potentiometer_Bourns_3296W_Vertical | RV1 |
| 1 | 3.3V | TestPoint:TestPoint_Bridge_Pitch5.08mm_Drill1.3mm | TP23 |
| 1 | 3.9M | Resistor_SMD:R_0603_1608Metric_Pad0.98x0.95mm_HandSolder | R3 |
| 1 | 5.6M | Resistor_SMD:R_0603_1608Metric_Pad0.98x0.95mm_HandSolder | R5 |
| 1 | Conn_01x08_Pin | Connector_PinHeader_2.54mm:PinHeader_1x08_P2.54mm_Vertical | J9 |
| 1 | EVP-BF6C1A000 | Button_Switch_SMD:SW_SPST_EVPBF | SW1 |
| 1 | FBB04004-F40S1003K6M | suntastic_footprints:FBB04004F40S1003K6M | J4 |
| 1 | GND_FROM_MPPT | TestPoint:TestPoint_THTPad_4.0x4.0mm_Drill2.0mm | TP9 |
| 1 | GND_TO_MPPT | TestPoint:TestPoint_THTPad_4.0x4.0mm_Drill2.0mm | TP7 |
| 1 | INPUT FROM EXT MPPT | TerminalBlock:TerminalBlock_bornier-2_P5.08mm | J11 |
| 1 | LED1 | TestPoint:TestPoint_Pad_D1.0mm | TP5 |
| 1 | LED2 | TestPoint:TestPoint_Pad_D1.5mm | TP4 |
| 1 | OUT TO EXT MPPT | TerminalBlock:TerminalBlock_bornier-2_P5.08mm | J10 |
| 1 | OUT_FROM_MPPT | TestPoint:TestPoint_THTPad_4.0x4.0mm_Drill2.0mm | TP8 |
| 1 | PMEG10020ELR | Diode_SMD:D_SOD-123F | D1 |
| 1 | PV IN | TerminalBlock:TerminalBlock_bornier-2_P5.08mm | J12 |
| 1 | PV_GND | TestPoint:TestPoint_THTPad_4.0x4.0mm_Drill2.0mm | TP11 |
| 1 | PV_TO_MPPT | TestPoint:TestPoint_THTPad_4.0x4.0mm_Drill2.0mm | TP6 |
| 1 | PV_VIN | TestPoint:TestPoint_THTPad_4.0x4.0mm_Drill2.0mm | TP10 |
| 1 | Pololu U1V10F5 | Connector_PinHeader_2.54mm:PinHeader_1x03_P2.54mm_Vertical | J2 |
| 1 | R | Resistor_SMD:R_0603_1608Metric_Pad0.98x0.95mm_HandSolder | R8 |
| 1 | REF35102QDBVR | Package_TO_SOT_SMD:SOT-23-6_Handsoldering | U2 |
| 1 | REF35409QDBVR | Package_TO_SOT_SMD:SOT-23-6_Handsoldering | U3 |
| 1 | SC_GND | TestPoint:TestPoint_THTPad_4.0x4.0mm_Drill2.0mm | TP20 |
| 1 | SC_VIN | TestPoint:TestPoint_THTPad_4.0x4.0mm_Drill2.0mm | TP19 |
| 1 | Supercap IN | TerminalBlock:TerminalBlock_bornier-2_P5.08mm | J3 |
| 1 | TC7WH02FU_LJCT | Package_SO:TSSOP-8_3x3mm_P0.65mm | U5 |
| 1 | TC7WH08FK_LJCT | Package_SO:TSSOP-8_3x3mm_P0.65mm | U10 |
| 1 | TPL5010 | Package_TO_SOT_SMD:SOT-23-6 | U7 |
| 1 | Thermistor_PTC | Resistor_SMD:R_0603_1608Metric_Pad0.98x0.95mm_HandSolder | TH1 |
| 1 | Vin_TO_buck_boost | TerminalBlock:TerminalBlock_bornier-2_P5.08mm | J5 |
| 1 | Vout_FROM_buck_boost | TerminalBlock:TerminalBlock_bornier-2_P5.08mm | J6 |
| 1 | Vout_switch | TestPoint:TestPoint_Pad_D1.5mm | TP3 |
| 1 | Vref_high | TestPoint:TestPoint_Pad_D1.5mm | TP1 |
| 1 | Vref_low | TestPoint:TestPoint_Pad_D1.5mm | TP2 |
| 1 | XC6220B331MR | Package_TO_SOT_SMD:SOT-23-5_HandSoldering | U8 |
Questions
What parts does the Suntastic use?
120 parts, built around the TPL5010EVM, TPS22917DBV, XC6220B331MR and EVP-BF6C1A000. 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 Suntastic KiCad files?
From the snorkman88/suntastic repository on GitHub, at the commit this page was made from: the board is pcb/suntastic/suntastic.kicad_pcb and its schematic pcb/suntastic/boost_for_uvlo.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the Suntastic design in my own project?
Its repository publishes it under the Apache-2.0 licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).
Similar boards
- 4 layers33.8 × 46 mm

- 2 layers65 × 40 mm

- 4 layers85 × 85 mm

- 2 layers57 × 57 mm

Mold detect
christopher-besch/mold_detect
Warn residents of mold-friendly atmosphere and log opened windows.
46 parts4MIT - 2 layers17.8 × 25.4 mm

- 4 layers80 × 80 mm

- 2 layers124.1 × 112 mm

Ag diy pro
Open-Air-Foundation/pcb-one
AirGradient ONE is a desktop indoor air quality monitor built around an ESP32-C3 module. It measures particulate matter (Plantower PMS5003), CO₂ (Senseair S8), temperature and humidity (SHT4x), and VOC (SGP41), with…
65 parts1CC-BY-SA-4.0 - 2 layers57 × 44 mm

Openair main
Open-Air-Foundation/pcb-openair-main
The Open Air main board carries the monitor's ESP32-C3 MCU, USB-C power input with a 3.3 V LDO, a TPL5010 hardware watchdog, status LEDs and a push button, and the Molex connectors the plug-in sensor modules attach to.
38 parts1CC-BY-SA-4.0