the following description is presented to enable any person skilled in the art to make and use the invention , and is provided in the context of a particular application and its requirements . various modifications to the disclosed embodiments will be readily apparent to those skilled in the art , and the general principles defined herein may be applied to other embodiments and applications without departing from the spirit and scope of the present invention . thus , the present invention is not limited to the embodiments shown , but is to be accorded the widest scope consistent with the principles and features disclosed herein . the data structures and code described in this detailed description are typically stored on a computer - readable storage medium , which may be any device or medium that can store code and / or data for use by a computer system . the computer - readable storage medium includes , but is not limited to , volatile memory , non - volatile memory , magnetic and optical storage devices such as disk drives , magnetic tape , cds ( compact discs ), dvds ( digital versatile discs or digital video discs ), or other media capable of storing code and / or data now known or later developed . the methods and processes described in the detailed description section can be embodied as code and / or data , which can be stored in a computer - readable storage medium as described above . when a computer system reads and executes the code and / or data stored on the computer - readable storage medium , the computer system performs the methods and processes embodied as data structures and code and stored within the computer - readable storage medium . furthermore , the methods and processes described below can be included in hardware modules . for example , the hardware modules can include , but are not limited to , application - specific integrated circuit ( asic ) chips , field - programmable gate arrays ( fpgas ), and other programmable - logic devices now known or later developed . when the hardware modules are activated , the hardware modules perform the methods and processes included within the hardware modules . one embodiment of the present invention charges a battery through repetitions of a constant - current ( cc ) charging step followed by a constant - voltage ( cv ) charging step , wherein the parameters for the cc - cv charging steps are dependent on cell / battery temperatures . this improved cc - cv charging technique has a number of advantages over conventional charging techniques , including : eliminating lithium plating at low temperatures ; improving rebalancing of cells within a battery pack ; improving cycle life of battery cells ; and enhancing protection against internal shorts which can lead to fire hazards . a typical voltage - and - current profile for a charge cycle under this technique is illustrated in fig2 . fig2 illustrates a number of constant - current charging steps , which alternate with constant - voltage charging steps . note that during the constant - current charging steps the voltage rises , and during the constant - voltage charging steps the current falls . the efficacy of this new charging technique at 10 ° c . has been demonstrated empirically using a lithium reference electrode imbedded in the cell stack of finished cells . moreover , this technique allows the individual potential of the cathode and anode to be monitored separately in addition to the cell voltage . based on a review of the scientific literature , a reference benchmark has been developed , wherein the anode potential ( green line in fig3 and 4 ) versus a lithium reference electrode should exceed 30 millivolts at the end of the charging process . this voltage - measurement criterion was established to ensure that the lithium formed at the anode / electrolyte interphase during charging is properly intercalated into the active graphite particles that make up the anode . a less desirable alternative is to have the formed lithium deposit or plate onto the surface of the graphite where it is less stable . this instability results from the reactive nature of freshly plated lithium in contact with the electrolyte in the cell . note that the resulting reaction can consume a portion of the surface - deposited lithium and electrolyte . this reduces the available lithium for discharge , which leads to a reduction in energy output . it additionally reduces cycle life and increases internal cell impedance . a follow - up technique was also used to confirm that , at the end of the charging process , the lithium anode versus lithium reference potential was 30 millivolts . this technique involved disassembling cells after 10 consecutive cycles at 10 ° c . in the charged state to visually confirm whether or not lithium was present on the anode surface . this procedure was completed in a moisture - controlled environment . although production lithium cells are made according to stringent requirements , significant performance variations exist between cells as manufactured , and may also arise with cycle life . an important component of the observed variation in cell performance is the variation in internal cell impedance . cell impedance is influenced by several factors , including the diffusion rate of lithium ions into the active graphite component of the anode during charge . if the applied charging current exceeds the diffusion rate capability of the lithium into the graphite particles , then surface lithium plating will occur . this issue is especially prominent at charging temperatures below 15 ° c . the use of a conventional non - adaptive charging technique , such as a singular constant - current rate which can exceed the diffusion rate capability of the anode , will result in marginal charge efficiency , lithium deposition on the anode surface , and reduced cycle life . using a charging technique that can sense when a limit of the anode diffusion capability is reached and can adjust accordingly is preferred to address the performance deficiencies described above . the adaptive nature of this charging technique can be observed in fig3 , which illustrates the performance of a first cell , namely cell a , and in fig4 , which illustrates the performance of a second cell , namely cell b . cell a and cell b can be different types of battery cells , or they can be variations of the same type of battery cell . note that for cell a the capacity gained during the first 0 . 5 c constant - current portion ( cc1 ) of the adaptive - charging technique is shorter than that of cell b . this indicates that the diffusion rate capability of cell a is less than that of cell b for this particular charging step . the following constant - voltage cv1 charging step in the adaptive charging technique involves holding each cell at a constant 4 . 0v , and allowing the cell to charge at whatever current level it can accommodate between 0 . 5 c and 0 . 2 c . as can be seen in fig3 and 4 , cell a spends a longer time in the cv1 portion than cell b . for cc2 and cv2 , cell a again charges longer than cell b . in contrast , during the final cc3 and cv3 charging steps , the amount of time taken by cell a and cell b is nearly identical . a summary of charge capacity for cell a and cell b at each step is summarized in table 1 . by providing a constant - voltage charging portion following each constant - current charging portion , each cell was able to charge effectively , above the 30 millivolt threshold , at slightly different rates , to nearly the same total charge capacity in nearly the same amount of time . note that the observed differences are due to the differences in cell capacity . this adaptive cc - cv charging technique also has a demonstrated positive influence on low - temperature , 10 ° c ., cycle life performance . when the same multi - step cc - cv charge technique described above is applied to an exemplary cell , versus a single step 0 . 5 charge to 4 . 2v , the observed improvement in cycle life can be significant . note that this multi - step cc - cv adaptive charging technique decreases the capacity variability between the tested cells and increases the cycle life capacity retention during cycle life . although this multi - step cc - cv adaptive charging technique is effective in improving charging efficiency and cycle life , it can take a fairly long time to charge ( close to 4 hours ). in order to address this problem , this technique can be modified to vary the charging process as a function of temperature . for example , the multi - step cc - cv charging technique can be modified as a function of temperature as is shown in table 3 below . the advantage of this multi - temperature , adaptive charge technique is that it accounts for the increase in lithium - diffusion rate in the cells at higher temperatures . this allows for lower charging times at temperatures above 20 ° c ., while still ensuring efficient charging and long cycle life across the full temperature range from 10 ° c . to 45 ° c . this multi - temperature , adaptive charging technique also has a positive influence on cycle life and low temperatures , such as 10 ° c . fig5 illustrates a rechargeable battery system 500 , which uses a cc - cv charging technique in accordance with an embodiment of the present invention . more specifically , the rechargeable battery system 500 illustrated in fig5 includes a battery cell 502 , such as a lithium - ion battery cell or a lithium - polymer battery cell . it also includes a current meter ( current sensor ) 504 , which measures a charging current applied to cell 502 , and a voltmeter ( voltage sensor ) 506 , which measures a voltage across cell 502 . rechargeable battery system 500 also includes a thermal sensor 530 , which measures the temperature of battery cell 502 . ( note that numerous possible designs for current meters , voltmeters and thermal sensors are well - known in the art .) rechargeable battery system 500 additionally includes a current source 523 , which provides a controllable constant charging current ( with a varying voltage ), or alternatively , a voltage source 524 , which provides a controllable constant charging voltage ( with a varying current ). the charging process is controlled by a controller 520 , which receives : a voltage signal 508 from voltmeter 506 , a current signal 510 from current meter 504 , and a temperature signal 532 from thermal sensor 530 . these inputs are used to generate a control signal 522 for current source 523 , or alternatively , a control signal 526 for voltage source 524 . note that controller 520 can be implemented using either a combination of hardware and software or purely hardware . in one embodiment , controller 520 is implemented using a microcontroller , which includes a microprocessor that executes instructions which control the charging process . the operation of controller 520 during the charging process is described in more detail below . fig6 presents a flow chart illustrating operations involved in a cc - cv charging operation in accordance with an embodiment of the present invention . first , the system obtains a set of charging currents { i 1 , . . . , i n } and a set of charging voltages { v 1 , . . . , v n }( step 602 ). this can involve looking up the set of charging currents and the set of charging voltages in a lookup table based on a measured temperature of the battery and a battery type of the battery . as mentioned above , these lookup tables can be generated by performing experiments using a lithium reference electrode to determine how much current / voltage can be applied to the battery before lithium plating takes place . next , the system charges the battery cell at a constant current i = i i until the cell voltage v cell = v i ( t ) ( step 604 ). then , the system charges at a constant voltage v = v i ( t ) until the charging current i ≦ i i + 1 ( step 606 ). the system next determines if i i + 1 equals a terminal current i term ( step 608 ). if so , the process is complete . otherwise , the counter variable i is incremented , i = i + 1 ( step 610 ), and the process repeats . the above - described temperature - dependent multi - step cc - cv charge technique provides the following performance advantages over a conventional constant - current charging technique : ( 1 ) eliminating lithium plating at lower temperatures during charging ; ( 2 ) providing a cell - balancing capability ; ( 3 ) improving cycle life , thereby enabling extended longevity for portable devices ; ( 4 ) improving safety due to elimination of li plating ; ( 5 ) allowing for lower charging times at higher temperatures ; and ( 6 ) modifying the charge applied to cells as the cells age over the life of the system . the foregoing descriptions of embodiments have been presented for purposes of illustration and description only . they are not intended to be exhaustive or to limit the present description to the forms disclosed . accordingly , many modifications and variations will be apparent to practitioners skilled in the art . additionally , the above disclosure is not intended to limit the present description . the scope of the present description is defined by the appended claims .