I really like these little micro-controllers. They’re ESP-32 based, dual core, 4 megabyte flash, devices that have an integrated screen and a few GPIO pins. A built-in AXP192 power controller handles the small lithium battery. They even work with OSC!
After being in storage for a few months, I pulled an M5StickC out to program and couldn’t get it to connect to my PC over the USB C port. I knew the battery was probably dead, but every time before it would turn on shortly after being plugged in. Alas, the battery was so low that it wouldn’t turn on at all.
After reading about the issue on the M5Stack forum, I figured I could get it going again by charging the battery using an external power supply. Conveniently, the battery + pin is exposed on the GPIO at the top of the device. I set my bench power supply to 4.00V and 0.040A to slowly bring the cell back up to operating range. On first connection, the lithium battery in the M5StickC showed only a dead-beyond-dead 2.8V. Yikes!
Usually 3.7V is considered discharged. I hoped that if I could charge up to above that cut-off voltage the device would turn back on. I periodically pressed the power button and reconnected the USB C cable, and at around 3.9V the M5StickC turned back on. Good to go!
From that point I disconnected my bench power supply and let the internal charging circuit do the rest. I suspect the battery life will be permanently shortened from being discharged to such a low level, but hey, at least it’s working again.