Harold Hallikainen wrote: > On detecting the battery state of charge, you could use a "columb > counter." There are "fuel gauge" chips available for this, or, since your > charger chip gives you a voltage proportional to charge current (I used > this or a similar LTC chip in a project a few years ago), you could > integrate this sample over time to see how many maH you put in to the > battery during charging. Though I haven't investigated it, I suspect that > many systems learn about the battery through repeated charge/discharge > cycles. The LTC chip, I believe, turns off charging when the charge > current drops to 10% of the programmed value when in the final constant > voltage mode. During discharge, you can also set a cutoff voltage where > you declare the battery dead. You can fully charge the battery, then fully > discharge it with your circuit, then fully charge it with your circuit to > get some initial mAH values for charge and discharge. Use these values > until the next time the battery is run dead (it's more likely the user > will run the charge cycle to termination than running the discharge cycle > to termination). > > Good luck! > > Harold > > Hi Harold, others. I have looked in to some of the available chips. The I2C and 1wire "fuel gauges" seem overly complex to interface to... I will have to re-arrange a bunch of stuff on the main board. Additionally all the registers and other control values seem like too much effort to get to grips with. The Coulomb counters though seem like a grand idea. The simplicity of the LTC4150 device which gives a pulse per unit charge is great. I am also developing a bias for Linear since their datasheets explain things in a way I can understand .... ;-) The problem as I see it, is that the charging process will charge at a much higher current (up to 1.5A), but the device will drain that current at about 40mA on average. Now, I understand that the coulomb counter just measures current (charge). The amp is a SI unit, and the coulomb is a derived unit defined as the amount of charge delivered by 1 Amp for 1 second. By counting all the "coulombs" that are used to charge a cell, I can calculate it's "charged" capacity because, if 1 amp for 1 second is 1 coulomb, then 1 amp for 1 hour is 3600 coulombs, or 3600coulombs is 1000mAh. see http://en.wikipedia.org/wiki/Coulomb The problem is that the capacity of a cell changes depending on the drain current. The greater the drain current, the lower the capacity. This is quantified by Peukert in Peukets Law: http://en.wikipedia.org/wiki/Peukert%27s_law Peukert's law assumes that each type of battery (or is that each individual battery) has some constant that can be used to determine it's capacity at a given discharge rate. It seems the law is somewhat incomplete, and does not reflect reality all that well. Still, given that the recharge curve for the cell is not going to change much, and the discharge curve will be stable as well, I believe I can calculate an Peukert constant for my system with a little bit of training. Install a discharged cell, charge it and track it. Count the coulomb units required for a charge (Cc). Then, discharge it at the regular rate, and count the discharge coulombs (Cd). Cc/Cd gives me a factor I can use to measure the capacity available in a cell given that each discharge coulomb will require (Cc/Cd) charging coulombs to replace. This should work out to be accurate enough to be within 10% or so, and that would be fine. I think I will track down some LTC4150's for some testing. It seems that there is something in there to be learned. It will be easy as well because I only need 1 pin on the PIC to count it all up (I already know the which direction the charge is going when the LTC4150 interrupts....). See any flaws in the logic? Thanks all. Rolf -- http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist