Notice: Trying to access array offset on value of type bool in /srv/www/vhosts/ on line 649 FS#195 : Start re-recharge of battery sooner

OpenPandora Main OS

  • Status Closed
  • Percent Complete
  • Task Type Feature Request
  • Category Core
  • Operating System Release 1 (Zaxxon)
  • Severity High
  • Reported Version Hotfix 4
Attached to Project: OpenPandora Main OS
Opened by David - 22.10.2010
Last edited by Michael Mrozek - 21.06.2011

FS#195 - Start re-recharge of battery sooner

Increase battery LVL_4 and LVL_3 threshold. After reaching 100%, in some cases the charge circuit enters "battery full" state, stops charging, and begins to discharge. This is not entirely unexpected behavior according to the spec sheet, although I don't fully understand exactly the situations in which it completes charging. Once the battery is full, the battery will begin discharging. The charge circuit automatically restarts the recharge once the voltage has gone below a certain level (crosses below the LVL_3 voltage threshold) The default LVL_3 voltage threshold is 3.902 volts which is at about 80-85% battery level as recorded by bq27500 chip. In my opinion, this is way too low. Setting the BCIMFTH2 register to 0xCB increases the voltage threshold to about 4.003 volts which is about 93%. Setting it to 0xDC may also be worthwhile, which is just over 95%. By default, if a user leaves their Pandora plugged in overnight, they may wake up to find their Pandora has stopped charging and the capacity has dropped to almost 80%, which can be quite startling to some users who will then report it as a bug. This change will ensure that it never drops below 93-95%, a much more acceptable level. Specific code changes suggested, in the /drivers/power/twl4030_bci_battery.c file, somewhere in the twl4030_bci_battery_probe function (or a function called by it), add the lines: /********************************/ #define KEY_FTH2 0x7F #define REG_BCIMFTH2 0x017 ret = twl4030_i2c_write_u8(TWL4030_MODULE_MAIN_CHARGE, KEY_FTH2, REG_BCIMFKEY); if (ret) return ret; ret = twl4030_i2c_write_u8(TWL4030_MODULE_MAIN_CHARGE, 0xDC, REG_BCIMFTH2); if (ret) return ret; /********************************/ (Move defines to the top, as appropriate)
Closed by  Michael Mrozek
21.06.2011 22:31
Reason for closing:  Implemented
David commented on 26.10.2010 03:18
0xDC is still too low in my opinion. In low power mode it still drops to about 92% (95% under regular use), taking almost 4 hours to do so. Setting BCIMFTH2 to 0xED causes it to start recharging at about 96% in low power mode after just over two hours, and at 98% in regular usage after only a half hour. This seems like a reasonable level to drop over night. I personally wouldn't mind waking up to find my battery at 96% knowing that it does this charge cycle thing, whereas 80% would cause me major concern. Other users may have different opinions. Once again, talk to MWeston who should know this stuff better to make sure that this kind of "massaging" of the battery won't wear it out.
Chris Camacho commented on 15.04.2011 08:13
As I understand it you should leave a lipo charged at *less* than 100% for optimal life span it is possibly to make the pandora shutdown and completely stop charging - even while plugged in. While you wouldn't want this mode all the time - ie while playing games, it would be nice if the user could specifically set an "over night charging mode" see


Available keyboard shortcuts


Task Details

Task Editing