I am going down a similar path to the OP, and this topic title is ideal for my observations, so …
I am not asking for specific help here, but trying to present an overview of my conclusion … and partly venting my frustration.
TL;DR … my conclusion is that the current range of “Solar Power Managers” (with the notable exception of PiJuice which works with a Raspberry Pi) are ok only for trivial applications like charging a powerbank, powering garden or christmas lights, or providing short-term mains power UPS function - where the power can suddenly stop without warning when the battery runs out.
The designers & marketing folks assume optimal solar power and battery in order to ignore the real world. I note that in the past month DFRobot have removed the example of powering an Arduino from their product pages and wiki, leaving only a simple solar battery charger, and a mains powered UPS examples.
My use case
I am a 64-year-old former computer programmer - not an electronics engineer - so looking for plug and play components, and something that will allow the computer to shut down before the power dies.
I am wanting to setup an ESP32 with several sensors in my small greenhouse which will require powering from a solar panel & battery. I purchased a DFRobot Solar Power Manager 5V (DFR0559) to use with my 6600mAh 3.7V Li-Po battery, and added a 20W 5V Solar panel (which being Aliexpress, was actually a 4W model). Should be all I need to do the job, yes ? At least enough for a first pass and I will tweak as necessary … or so I thought.
Since I already want to monitor various greenhouse sensors, I would also like to monitor the battery, and solar panel output. Am I getting enough sunlight and power from the solar panel to keep the battery topped up ? Has the battery life run out and it’s time to replace it ? These need a history to see the trends. The Solar Power Manager board is the logical device to collect these data as a side-effect of managing the power.
I want my system to run remotely - ie without a human there watching it - and ideally for 3 rainy days before I need to top up the battery. Is it reasonable for the microcontroller to let me know, and do a controlled shut-down before the battery dies ? Apparently not. A couple of the Solar Power Managers include battery indicator LEDs (which requires a human to be standing there watching it), but NONE have any reporting capability built in.
Am I being unreasonable ? Am I really the only person who wants info on the power being managed ? I note that aspects of this topic are raised regularly in HA and Adafruit forums.
What about the commercial applications mentioned in the product descriptions ? Are they happy for their devices to just power off without warning ? Do they go for overkill on the battery and solar panels … but surely they don’t want to throw that sort of money around unnecessarily ?
To achieve remote solar operation
I can purchase additional products (eg INA219 or INA3221) to monitor voltages and report via i2c bus to the microcontroller, as per this diagram (which has since been removed from DFRobot’s DFR0580 page).
So with an automation on the microcontroller I can now be informed remotely if the battery voltage is low, hopefully giving me enough time to top up the main battery before it dies.
And what should the microcontroller do about these over- or under- voltage conditions ? Turn off the input or the load … so now I am adding relays ?
Also we keep hearing about fires caused by lithium batteries; and as the OP pointed out, many Li-Po batteries (currently all Core’s ones over 6000mAh) come with a 3-wire connector … which won’t fit the 2-wire connectors on any of Core’s current Solar Power Manager boards. We are told to cut the 3-wire connector off, connect the +ve and -ve to the Solar Power Manager, and either ignore the thermistor (to invalidate the whole purpose for having the thermistor), or extend the third wire to our microcontroller.
Even if you have a large battery (>=10,000mAh), and the largest 5V solar panel you can find (at least 20W) … sooner or later a run of rainy weather will run the battery flat.
And when the sun comes out and the battery starts recharging ? Your microcontroller will start to reboot and quickly drain the battery as quickly as it can charge. Apparently we also need something like a KA75330 to stop the microcontroller from attempting to reboot until the battery reaches 3.3V.
So, why buy a Solar Power Manager ?
I started my project thinking to use a Raspberry Pi and PiJuice (which does provide battery information to the Raspberry Pi; so is not the focus of my tirade here) but decided the Raspberry Pi would be overkill processing power, and the overhead would chew though the battery quicker. FWIW at that time, I got the impression that PiJuice was intended as a UPS due to the limited battery capacity; but I see now much higher capacity batteries available.
The BMS to control multiple battery cells for a house or EV needs to be much more sophisticated than for my maker project.
But surely the title “Solar Power Manager” implies that the boards do some managing;
Solutions ?
Curiously the ESPHome documentation for INA3221 component provides a link to switchdoc.com whose SunAir product did this back in 2016 (with a successful kickstarter), and at 2020 they had 5 products a user could select from. But with covid and parts shortages they exited the maker market and moved on to weather monitoring and hydroponics.
I note that Adafruit have several solar/LiPo charger boards, but unlike DFRobot and Waveshare they have avoided overselling them as power Managers. If we cannot find any existing power manager board maybe they would consider the market for one ? Certainly LiPo and solar have moved from fringe products in 2016 to almost mainstream now; and I expect there are plenty like me who would rather pay a little extra to get a true power manager so they can focus on their actual application.