As you figured, at 2.8v the CR2032 batteries are basically only 10% charged.
is the "flashing red to indicate low battery" a feature?
It's not an intentional feature, but it does happen on the v2 for certain charge levels.
Basically at boot the accelerometer draws a bunch of power a fraction of a second after startup, so while Puck.js boots and flashes the red LED, the accelerometer pulls the battery voltage too low and causes a reboot loop.
Espruino is a JavaScript interpreter for low-power Microcontrollers. This site is both a support community for Espruino and a place to share what you are working on.
As you figured, at 2.8v the CR2032 batteries are basically only 10% charged.
It's not an intentional feature, but it does happen on the v2 for certain charge levels.
Basically at boot the accelerometer draws a bunch of power a fraction of a second after startup, so while Puck.js boots and flashes the red LED, the accelerometer pulls the battery voltage too low and causes a reboot loop.