I’ve delved into the battery driver and it looks like there’s a bug in the driver that’s causing it to shut down the charge too early…
Temperature is measured via an ADC via a probe (on the battery, hopefully…), but the measurement on the ADC seems to need to be compensated for some adjustment factor (it appears in the driver as TCompensation). The cutoff doesn’t use the compensation factor before it shuts off the charge circuit, which is probably causing the problem.
It is interesting to note that GSM users don’t really have this problem unless they tether and bittorrent, which leads me to believe that 1xRTT just takes a LOT of power…
Anyway, once I creatively design a way to adjust the cutoff temperatures, I’ll be releasing a new version of nueBatteryDriver with cutoff temperature control. Also, once I get my hands on a Touch Pro2 CDMA battery.dll, I’ll be releasing a version of nueBatteryDriver for that platform as well.