This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Best practice for monitoring coin cell battery voltage given ESR

I'm using an NRF51 w/ S130 operated directly from a coin cell battery. I use the ADC with a voltage divider to successfully measure analog voltages. One of the challenges of the coin cell is that its ESR is not insignificant and degrades overtime. This means that if I have a substantial current pulse (for example from RF activity) the battery voltage droops in a meaningful way (sometimes ~200 mV). The ESR is not fixed and usually gets worse over time. Suppose my system cannot operate below 2.4V and I want to monitor the battery voltage and [do something] when there's a low battery condition. What's the best way to do this given the ESR? For example with a multimeter I might see "2.6V", but with a healthy current pulse the battery might actually droop to 2.4 momentarily, which could brownout my system. Is there a way to synchronize sampling the ADC with RF activity so I can measure the worst case battery voltage?

Parents
  • @David: I'm probably misinterpreting your situation, but you don't need a voltage divider for measuring the battery voltage (when your microcontroller is connected directly to the coin cell) using the aforementioned technique. On the issue of sampling when the transmit is occurring, have a look into the "Radio Notification Events Handler". If this doesn't work out, you could always connect an unused GPIO to VDD_PA and configure the GPIO to interrupt on state changes.

Reply
  • @David: I'm probably misinterpreting your situation, but you don't need a voltage divider for measuring the battery voltage (when your microcontroller is connected directly to the coin cell) using the aforementioned technique. On the issue of sampling when the transmit is occurring, have a look into the "Radio Notification Events Handler". If this doesn't work out, you could always connect an unused GPIO to VDD_PA and configure the GPIO to interrupt on state changes.

Children
No Data
Related