PDA

View Full Version : Warning: BOINC on android may damage batteries



zombie67
02-08-13, 11:57 AM
FYI

There have been a few messages to the dev list about BOINC on android. Batteries can be permanently damaged.


From: David Anderson
Subject: [boinc_dev] Android battery issues
Date: February 7, 2013 4:33:48 PM PST

We've observed a couple of battery-related problems on Android,
and added fixes for them:

1) Computing while the battery is recharging can cause the recharging
rate to be reduced or become negative;
the latter happens especially when recharging via USB.
To fix this, we added the following hysteresis mechanism:
- computing starts when the battery charge level exceeds 95%
- then computing stops if the charge level falls below 90%

2) On at least 1 device (HTC One),
computing while the battery was recharging caused the battery to overheat.
We now stop computing if the battery overheats
(Android provides a way of detecting this).
However, this is possibly not good enough for 2 reasons:
a) battery overheat on this device caused the display to go blank
and the status light to alternate red/green.
We don't want this to happen to users.
I'm not sure if stopping immediately will avoid this state.
b) the battery on this device seems to have been damaged by this incident,
and now overheats quickly.
So we may need to continuously monitor the battery
temperature and suspend computing if it rises by some amount.

-- David



From: Raistmer the Sorcerer
Subject: Re: [boinc_dev] Android battery issues
Date: February 8, 2013 12:05:36 AM PST



So we may need to continuously monitor the battery
temperature and suspend computing if it rises by some amount.

AFAIK it's already implemented in NativeBOINC. Check freely available sources.

Crunching on Android devices can be devastating for them indeed.
I have example of 3 identical Viewsonic G-tablet devices, two of them were bought simultaneously.
Device that runs BOINC (NativeBOINC + MilkyWay+WUprop+ some other projects) few weeks on power plugged now lost ability to recharge its battery (and to work on battery) completely. Other 2 have working battery still. Less than 1.5 years from purchase.

In view of this maybe proposed hysteresis not enough to make such device happy. AFAIK battery doen't like to be partially discharged. Proposed option can result in repetitive 5% battery dicharge/recharge cycle.
Maybe it's worth to allow almost complete discharge then stop until almost complete recharge to save battery life. Full battery cycle recommended in most device manuals I read so far.



From: David Anderson
Subject: Re: [boinc_dev] Android battery issues
Date: February 8, 2013 12:18:56 AM PST




So we may need to continuously monitor the battery

temperature and suspend computing if it rises by some amount.


AFAIK it's already implemented in NativeBOINC. Check freely available sources.

Do you know what their policy is?


In view of this maybe proposed hysteresis not enough to make such device happy.
AFAIK battery doen't like to be partially discharged. Proposed option can result
in repetitive 5% battery dicharge/recharge cycle.

Maybe a better policy is:
start computing only when the battery is 95% charged.
stop computing if the charge goes down
resume computing then the charge returns to its max level




From: Raistmer the Sorcerer
Subject: Re: [boinc_dev] Android battery issues
Date: February 8, 2013 1:14:35 AM PST





AFAIK it's already implemented in NativeBOINC. Check freely available sources.

Do you know what their policy is?
NativeBOINc has option in local preferences/computing: While battery temperature less than xxx C. Default is 100.0C.
But user can set lower value to prevent overheating. That is, BOINC can be stopped before Android OS reports overheat with all manifestations you described. Perhaps, some experimentation reuqired to determine optimal "BOINCN shutdown temp" for most devices.




In view of this maybe proposed hysteresis not enough to make such device happy.
AFAIK battery doen't like to be partially discharged. Proposed option can result
in repetitive 5% battery dicharge/recharge cycle.

Maybe a better policy is:
start computing only when the battery is 95% charged.
stop computing if the charge goes down
resume computing then the charge returns to its max level
Maybe, if this option aimed to particular goal of preventing discharge when plugged. But from battery life position maybe it may be not the best possible solution.
If tablet regularly used for other than BOINC activities it will be unplugged sometimes and battery discharge/recharge cycle will be made.
But if tablet leaved for few days untouched (for example, user work with it only when travel (somewhere far enough) and use PC when working season) but, cause user BOINC fan, leaved plugged and running BOINC rather than just switched off, battery will remain fully charged or even overcharged all this time. It's recommended to do full discharge/recharge cycle time to time when device works plugged. Of course, user will not care about it. So, it should be BOINC function to allow user to leave device plugged w/o big risk to discover dead battery when he returned. That is, time to time (just as regular CPU benchmarking done, and better instead of it) BOINC should allow almost full battery discharge then stops until battery will be recharged.
Unfortunately, this policy can work only with those devices where negative charging observed with running BOINC. It's not big fraction of devices, especially if such leaved plugged device will be leaved on charger, not on USB wire for recharge.

Fire$torm
02-09-13, 03:43 PM
Maybe they should include some kind of pop-up Warning message with app installer so users realize the potential hazard....?

Slicker
02-09-13, 11:55 PM
Who thinks a smart phone is a good BOINC platform in the first place? Probably the same person who thinks a table knife makes a good screwdriver.

zombie67
02-10-13, 12:10 AM
Who thinks a smart phone is a good BOINC platform in the first place? Probably the same person who thinks a table knife makes a good screwdriver.

TRVTH