- Status Closed
- Percent Complete
- Task Type Patches
- Category
-
Assigned To
hohensoh - Operating System
- Severity Low
- Priority Very Low
- Reported Version
- Due in Version Undecided
-
Due Date
Undecided
- Votes
- Private
FS#2443 - More aggressive Recorder V1 charging
More aggressive charging for the software-controlled V1
AJR. The changes are:
* If the deltaV (charge complete detection) fails, this
goes directly into trickle charge mode. Previously, it
would disable futher charging for 60 minutes (thus
draining the batteries for that period of time).
* Trickle charge is forever (enable it in your
settings!). Previously, trickle charge stopped after
12 hours. At that point, the recorder would be
discharging the batteries.
Justification:
* The trickle charge will not exceed the 0.10C maximum
continuous charge level typically recommended by
battery manufacturers (trickle charge limits the charge
current via PWM of the charge control).
* If deltaV detection didn't succeed or if a time limit
expired, the recorder disabled charging, discharging
the batteries. If "deep discharge" is OFF, we should
never totally disable charging. The hazzard to the
batteries for trickle charging is zero (see previous)
and the aggrevation to the user is huge if they run out
of battery power prematurely.
Configuration:
In your battery settings, turn "deep discharge" _OFF_
and "trickle charge" _ON_.
2005-03-03 18:22
Reason for closing: Accepted
Additional comments about closing: Warning: Undefined array key "typography" in /home/rockbox/flyspray/plugins/dokuwiki/inc/parserutils.php on line 371 Warning: Undefined array key "camelcase" in /home/rockbox/flyspray/plugins/dokuwiki/inc/parserutils.php on line 407
Logged In: YES
user_id=741001
Committed, I leave this open for a while
to capture Jerry's
improvements.
Loading...
Available keyboard shortcuts
- Alt + ⇧ Shift + l Login Dialog / Logout
- Alt + ⇧ Shift + a Add new task
- Alt + ⇧ Shift + m My searches
- Alt + ⇧ Shift + t focus taskid search
Tasklist
- o open selected task
- j move cursor down
- k move cursor up
Task Details
- n Next task
- p Previous task
- Alt + ⇧ Shift + e ↵ Enter Edit this task
- Alt + ⇧ Shift + w watch task
- Alt + ⇧ Shift + y Close Task
Task Editing
- Alt + ⇧ Shift + s save task
Updated the patch and build:
* Reviewing my code, I found a couple of places where I
inadvertantly used "ifdef" when I should have used "ifndef"
(love/hate relationship with cut & paste).
* I increased the maximum trickle charge % to 59/60 (was 24
seconds max out of 60). If you are using a charge voltage
less than about 10.5v (especially as you drop to 9v or
less), the amount of current going to charging the batteries
drops significantly.
Justification for increasing the max %:
* Based on the Battery FAQ, the AJR takes ~100mA minimum,
~130mA with the backlight on, and much more when the disk
spins up. At 350mA charge current (>= 10.5v input), (24/60)
* 350mA = 140mA. At 9.0v input, we need to run 100% duty
cycle to achieve the same 140mA.
* The trickle charge algorithm runs a closed loop control
which will automatically adjust the on/off % to Do The Right
Thing[tm] if the charger voltage is higher or lower.
gvb
Attached is a New Improved patch which is a substantial
.
reworking of the powermgmt.c (AJRv1 battery charging)
routine. This is not fully tested but is working well for
me so far. I've posted the patch update to show progress
gvb
Gerald,
I just patched th current CVS-tree with this patch, but
there seems to be an error in the implementation:
If I disconnect the Recorder from external power even with
fully charged batteries, I'll see a blinking battery-sign
and if I try to flash rombox I'll get a "Battery too low"
message…
Bye, Carsten
BTW…the blinking battery sign is fully filled which means
batterys are full, but it's still blinking…
More updates… * Fixed the blinkin' battery problem (power low warning)
* Start cleaning up for other targets (other than AJR) - NOT
DONE YET
* This includes changes in powermgmt.c up to 1.69
WARNING: This creates a debug file "/powermgmt.csv" with
once-per-minute save of battery charge/discharge values.
Just so you know, your work on this is very much appreciated.
Compiles cleanly on the Archos Player, Recorder, FM
Recorder, V2, and Ondios. The link for the FM & V2 breaks
"region FLASH is full" - I don't have experience with these
targets so I don't know off-hand why.
Interesting test trivia: I ran 2 hours creating md5sums of
files over a usb1.1 link (e.g. lots of disk usage over USB)
and the charger kept up (battery voltage ~5.4v, charger
running 60/60, unit warm).
This is getting close to Ready for Prime Time.
Tweaked the initial charge level
* 95% < bat 100% - trickle
* 85% < bat < 95% - topoff (unchanged)
* bat < 85% - full charge
More clean ups.
Updated doc/CHARGING_ALGORITHM
Fixed my #if defined() error which inhibited the creation of
the debug file powermgmt.csv even when I _wanted_ it. Note
that the attached patch has the debug file turned OFF.
Also attached is a ajbrec.ajz which has the powermgmt.csv
debug file turned ON for testing purposes.
This is as good as it is going to get for now. I am happy
with what I am seeing for recharging and maintaining the
battery charge. It is time for the project maintainers to
review the changes and apply the patch if it is acceptable.
Feedback welcome (via email list preferred).
gvb
Jörg tried the patch on his Ondio and found that the battery
voltage was not being reported correctly (sorry, Jörg). The
problem was with the sleep and associated exponential filter
on the battery – when there was no charger, the sleep just
slept and thus the filtered battery voltage never was
calculated. Oooops. Sorry Jörg.
The attached 050302.patch file should fix the problem.
Sorry Jörg.
gvb
P.S. Did I apologize for messing up your Ondio Jörg? Sorry.
I think you owe Jörg an apology!
Committed, I leave this open for a while to capture Jerry's
improvements.