When there's a high power draw (eg GPS) the voltage from the battery drops because of the internal resistance, and so it shows a lower capacity. In some sense it's true though - you could run the watch at 0% for a while normally, but if you run the GPS when it's at say 5% it might cause the watch to turn off.
The temperature can have an effect too, and I guess maybe there is a possibility of adjusting the reported voltage by some fudge factor based on temperature - but it's all really handwavey and I imagine probably depends on the age and batch number of your battery. I think there's a significant chance of overcompensating and making the battery read too high on some watches - so I wonder if it's just better to leave it as-is.
However nothing at all stops you making a new 'compensated battery' widget (or even boot code that replaces the E.getBattery function with a compensated one). You could even check the power status of the main users (GPS + screen) and adjust based on those too.
edit: potentially you could make an app that deliberately turns the GPS and LCD on and measures the difference in battery voltage when you install it, and then applies those tweaks i the future.
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 @Ganblejs says really...
When there's a high power draw (eg GPS) the voltage from the battery drops because of the internal resistance, and so it shows a lower capacity. In some sense it's true though - you could run the watch at 0% for a while normally, but if you run the GPS when it's at say 5% it might cause the watch to turn off.
The temperature can have an effect too, and I guess maybe there is a possibility of adjusting the reported voltage by some fudge factor based on temperature - but it's all really handwavey and I imagine probably depends on the age and batch number of your battery. I think there's a significant chance of overcompensating and making the battery read too high on some watches - so I wonder if it's just better to leave it as-is.
However nothing at all stops you making a new 'compensated battery' widget (or even boot code that replaces the
E.getBattery
function with a compensated one). You could even check the power status of the main users (GPS + screen) and adjust based on those too.edit: potentially you could make an app that deliberately turns the GPS and LCD on and measures the difference in battery voltage when you install it, and then applies those tweaks i the future.