Strange 'stair-step' of battery voltage under light load (Energizer L91)  - Page 1
Forum section: electronics / general

author: tom66
author_rank: Super Contributor
timestamp: May 30, 2024, 03:21:23 pm
content: We were recently doing some battery life tests on a product of ours which uses Energizer Lithium L91. At the terminal end of the discharge the product has switched off and load on the battery is <10mA. The voltage quickly recovers to around 5V then over the next 2hrs there is a peculiar stair-stepping effect going on. I am curious if anyone knows what might be causing this. I know L91 cells do have a pronounced step in voltage under light load around 50% SoC but I've never seen anything quite like this before. I have ruled out scope/datalogger behaviour as the on-load discharge looks as expected (just a curved slope).The oscillation period appears to be roughly 200-250 seconds, and each plateau lasts around 100-150 seconds.

author: mikerj
author_rank: Super Contributor
timestamp: May 30, 2024, 04:16:18 pm
content: Just to confirm, during this plot the battery is still connected to your circuit that is drawing a non-zero current? If so it seems quite possible this is the behaviour of the load in it's powered down state rather than the battery itself.

author: tom66
author_rank: Super Contributor
timestamp: May 30, 2024, 04:32:09 pm
content: It is still connected with a ca. 10mA load, yes. The load *should* be constant power, there is no intentional cycling of power states or anything like that.I haven't ruled out the possibility that this is a characteristic of the switching regulator's load varying slightly. I will investigate that tomorrow, using a precision multimeter to see if the input current into it varies along similar lines. So far I have not noticed anything like that, but it might be a very subtle effect.

author: eTobey
author_rank: Super Contributor
timestamp: May 30, 2024, 05:12:22 pm
content: Looks like single bits of the ADC, which are averaged.I guess it can measure to at least 21V?

author: Nominal Animal
author_rank: Super Contributor
timestamp: May 30, 2024, 06:07:52 pm
content: You can get that kind of effect by averaging many ADC samples with less than half an ULP of noise.Here, it looks like each ADC reading is about 0.167 V, and there is only about 0.042 V of noise, or ±0.25 in the ADC scale.When the voltage corresponds to ADC reading intervalN+0.25 ...N+0.75, it will always produceN, giving the flat part.WithinN-0.25 ...N+0.25, it produces eitherN-1 orN, the counts and thus average corresponding to the voltage. This is why there is no discrete jump to another integer level, but a rounded corner before and after each level.For averaging to work, there must be at least ±0.5 units in the least significant place (or ±0.5 with respect to the ADC reading scale) of noise for averaging to work intuitively.Here is a synthetic example of what happens when there is ±0.25 units of noise, and you take a running average over 32 samples:

author: tom66
author_rank: Super Contributor
timestamp: May 30, 2024, 09:18:54 pm
content: Quote from: Nominal Animal on May 30, 2024, 06:07:52 pmI did consider sampling error, but the scope (PicoScope 2202A using PicoLog to capture the data) had no such apparent error when measuring the battery under a high discharge situation. So I am not convinced it is a measurement error. It appears the quantization interval at the range selected is around 20mV, not 167mV.

author: Faringdon
author_rank: Super Contributor
timestamp: May 31, 2024, 05:42:24 am
content: id say its just the way that Li's discharge in light load....they hold up for a bit, then just cant keep the voltage up any longer, so they go over the mini "cliffs", that you are showing.Its just the chemistry...its weird, like el caps are weird, when discharged and then taken off load, their voltage jumps up a bit. just the weirdness of battery chemistry.

author: uer166
author_rank: Super Contributor
timestamp: May 31, 2024, 05:50:10 am
content: Quote from: Faringdon on May 31, 2024, 05:42:24 amLol.. what bollocks. Capacitor/battery voltage recovery has nothing to do with what OP is seeing.It's 99.99% ADC quantization, you can see the flat spots match in amplitude in the rising and falling locations in your graph.

author: tom66
author_rank: Super Contributor
timestamp: May 31, 2024, 09:06:42 am
content: ADC quantization probably makes the most sense given the possibilities available, but doesn't explain why the on-load discharge (~400mA) has a non-stairstep profile. Nor why the apparent interval of quantization noise is some 3-4x that of the ADC's actual resolution.I was hoping for something like a chemical behaviour of the battery, given the known stair step at 50% SoC under light load. But, I can't find this behaviour elsewhere documented, so it's hard to believe. It's also a little too regular to be a purely chemical process.

author: Siwastaja
author_rank: Super Contributor
timestamp: May 31, 2024, 09:46:18 am
content: Quote from: tom66 on May 31, 2024, 09:06:42 amIt is going faster, therefore spending less time on those exact regions where quantization produces always the same results due to having too little noise (compared to the step size).As Nominal Animal points out, it's the noise which is providing you with those nice ramps between the flat regions. Flat regions are narrow voltage ranges where the small amount of noise is not able to push the value over so that signal would alternate between the different levels, for averaging to find the "correct" value.If you are seeing one quarter of the expected resolution, re-check and re-re-check the ADC config. Verify with very slow ramps from a simple RC circuit with large enough C value and long time constant, which would be also be less noisy than e.g. any random function generator.

author: tom66
author_rank: Super Contributor
timestamp: May 31, 2024, 09:50:07 am
content: Quote from: Siwastaja on May 31, 2024, 09:46:18 amThe initial discharge takes longer - about 6 hours. The 10mA discharge at the end is with the battery effectively at 0% SoC, so it takes only about 2 hours to completely exhaust the battery after the main processor shuts off.

author: AndyC_772
author_rank: Super Contributor
timestamp: May 31, 2024, 09:59:49 am
content: When it's in the higher power state, could there just be more noise on the measurement, which means a better average and a smoother plot?Perhaps it's worth trying another measuring device just to confirm whether or not what your logger is seeing is 'real'. Add a 6.5 digit DMM in parallel and see if its reading also changes in steps.

author: Siwastaja
author_rank: Super Contributor
timestamp: May 31, 2024, 10:42:28 am
content: Quote from: tom66 on May 31, 2024, 09:50:07 amOK, then maybe as AndyC suggested, more noise during the discharge where the problem does not show?Try to do a full dump of raw ADC values before any averaging. That dataset could be revealing. I mean, conceptually it should look like this:999989998998989889888988889888888788887888788787...which would average to a pretty smooth transition, but if it looks like this:999989898888888888888888888888787877777777777777777...then there's the problem: too little noise for averaging to work. That would not explain the lack of resolution (step size 3-4x too big as you say) you are seeing though, it would be another mystery.

author: Nominal Animal
author_rank: Super Contributor
timestamp: May 31, 2024, 10:48:56 am
content: Quote from: tom66 on May 30, 2024, 09:18:54 pmWhoops, sorry, I read the scale on the left wrong.. I blame the ambient temperatures; it is too hot here right now for my brain to work well.Quote from: tom66 on May 30, 2024, 09:18:54 pmI would personally expect the noise to be higher on a high load, though. Given the stepped shape –– note how the curved part signal is within the two levels it transitions between? –– I'd say 0.04 Vpk noise at low loads, 0.08 Vpk or more at high loads, should reproduce the stepped effect and its vanishing.I would personally double-check the channel options in the PicoLog application. As I understand it, the settings are applied on the PicoScope itself, and not just a post-processing or view setting; they affect the captured data. If your range was ±10V, because the ADC is 8-bit, the resolution is 20V/2⁸ = 0.078125 V. Your graph has about 12 steps per volt, or 1/12 V ≃ 0.083 V per step. The two figures arewaytoo close for this to be a coincidence, thus I stand behind my claim that it is an ADC resolution and averaging artefact.

author: shapirus
author_rank: Super Contributor
timestamp: May 31, 2024, 10:56:44 am
content: Does it reproduce with a different (different resolution) ADC?

author: voltsandjolts
author_rank: Unknown
timestamp: May 31, 2024, 10:59:54 am
content: Quote from: tom66 on May 30, 2024, 03:21:23 pmDatasheet shows similar effect. Must be some electrochemical thing but can't imagine what.

author: tom66
author_rank: Super Contributor
timestamp: May 31, 2024, 11:10:29 am
content: Yes, I did notice that in the datasheet too. Which is what got me thinking, but it also could be a rendering artefact.Quote from: Nominal Animal on May 31, 2024, 10:48:56 amGood point. Looking at the log data again, it looks like it was set to the ±10V range with a 10:1 probe. So that does seem like an interesting coincidence and hints much more towards the ADC theory. I had thought it was on the ±5V range with an offset which would set the quantization interval around 40mV. With averaging, it appears in the data log to have around 20mV steps. On the next test, I'll try to set it up on the ±5V range with the offset to see if the phenomena changes.Correction: it's a PicoScope 2205A (I don't think they have a 2202A) but it does have an 8-bit ADC.

author: voltsandjolts
author_rank: Unknown
timestamp: June 01, 2024, 09:05:21 am
content: I can give you a good deal on a lightly used Pico ADC20 or ADC24 if that helps