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

Wrong discharged curve used in battery_level_in_percent method

I am not sure where to post this info so I do it here. We have been testing nRF51822 chips in a Rigado BMD-200 module powered by a single 2032 battery and have been getting capacity results significantly different than what was being reported using the battery_level_in_percent method located in app_util.h.

After reviewing the issue, I have determined that the battery_level_in_percent method implements a volt to capacity mapping derived from the continuous discharge curve ( see chart 1 in data.energizer.com/.../ However this is the incorrect discharge curve since as you know, the nRF51822 is not continuous draw but a pulse. The behavior we are seeing is much more like the discharge curve in chart 3 which is derived from a 1ms on / 14 ms off pulse. Not exactly what the nRF51 uses but significantly better match than continuous draw curve.

Related