-
• #2
Isn't the accelerometer used to turn the Bangle.js / display on when rotating (the wrist)? Changing the interval for polling the accelerometer, does that not have an impact on that behavior?
-
• #3
... and cutting edge builds now have changes in which fix this.
Normal power consumption has halved, and if you do:
Bangle.setPollInterval(1000); Bangle.accelWr(0x18,0x0A);
Power consumption drops to under 0.15mA from the 1mA that it was originally!
Just filed an issue for sleeping: https://github.com/espruino/Espruino/issues/1921
-
• #4
Isn't the accelerometer used to turn the Bangle.js / display on when rotating (the wrist)? Changing the interval for polling the accelerometer, does that not have an impact on that behavior?
Yes, which is why I'm not doing it by default.
However it seems many people turn off the behaviour and just use buttons for wakeup, in which case it doesn't matter.
-
• #6
Ok, most recent changes put the accelerometer into standby if it's not moving for 1 minute. In that case Bangle.js now draws around 0.15mA, so 90 days standby (around 6x longer than it was on Monday :)
We're also down to 0.36mA with polling at the default 80ms - so that's roughly 40 days even if you're moving about.
So I'm pretty happy with that - hopefully 2v07 (or cutting edge builds now) will make Bangle.js a much more interesting proposition!
-
• #7
Ok, most recent changes put the accelerometer into standby if it's not moving for 1 minute.
Tagging @Graham_Jones in case this affects your app porting.
-
• #8
Luckily it won't - the power save detects if you're using the
Bangle.on('accel'
event or not and doesn't go into low power mode if you are :) -
• #10
Thanks. If it did stop sending data when there was no movement, it would have been an issue for my automated dault detection. But it sounds like it is ok.
Hi!
By default Bangle.js polls the accelerometer about 12 times a second to handle step counting and twist to wake, which obviously raises power draw.
With some JS code it's possible to lower the power draw substantially by disabling the accelerometer:
So you can get down to 0.52mA pretty easily, which almost doubles standby time. It's conceivable that we could detect inactivity (eg at night time) and drop to a low power mode automatically.
However Puck.js draws
0.03mA
while awake and advertising so you'd hope we could manage to get down to almost0.1mA
on Bangle.js if everything else draws0.07mA
when the processor is off.It turns out the issue is actually the accelerometer polling which uses a hardware timer, even when lowered to a polling interval of 1 second. This is very much not recommended, but:
I've just filed an issue at https://github.com/espruino/Espruino/issues/1920 but potentially Bangle.js battery life (when idle) could be raised by around 7 times!