Three weeks ago my Nest thermostat suddenly would go off line due to low batter voltage, I pull the thermostat off the base and charged with an external micro USB charger, it charged fine.
I put the thermostat back onto the base, and within a few hours the battery voltage dropped again, causing the thermostat to go off line.
After trying and getting the same result a few more times, I started focusing on the base as the source of the problem.
I only did one thing to the base which has rectified the problem, what I did is depress the small spring loaded tab that holds each wire in place and making electrical connection, then move each wire back and forth a few times, as I suspect one of the wires was not making good electrical contact and causing the battery to not charging properly.
This has fixed the problem 100% the past three weeks, the battery level is always at least 3.8 volts, where it would go down to 3.7 volts when it was disconnecting from my home network, it has not dropped off line even once since I made this zero-cost repair.
Hope this helps the folks before they automatically go buy a new battery or new unit.
EDIT: Follow up Aug 10th, 2021, the low battery voltage problem returned when I noticed the unit disconnected from the wifi network, I did the same steps loosening each contact and moved the wires back and forth to clean the contacting surface of the wires, the thermostat started charging right away and the network reconnected after about 30 minutes.
EDIT 2: The above fix only worked for a day, then the no-charge issue returned and could not be solved with even lighting sanding all the wires and re-insert, looks like there is some sort of active electronics and maybe even firmware in the base as it has a version number. This time I decided to use the additional wires I asked the technicians to run when the new furnace was installed, and ran a dedicated “C” (common) wire per many web articles, this has worked solidly for two weeks.