# Reduce output current ripple on hysteretic buck converters

I am learning to use a new type of regulator: a buck with hysteretic control, therefore with no fixed frequency and no output capacitor.

As example, I was trying out the ILD4001 for an LED driver. Everything seems to work as expected, but then I also wanted to filter the output ripple on the LED more.

I've implemented the suggested schematic shown in the datasheet:

Where I use:

• LED Vf = 2.8 V (only one in my circuit)

• Rsense = 0.3 ohm

• Input capacitor of 2.2 µF

• L = 68 µH

• Vref = 0.116 V

• Vs = 12 V

• Vdiode = 0.25 V

The operating frequency is calculated as the time of the inductor to reach the reference current plus its threshold (with this part it is +15%), from the reference current minus its threshold (-15%), so with a theoretical delta of 30% in total. According to the rise and fall slopes of the inductor current, the Rsense drop and the Vled drop, I achieve on paper frequency results (with calculations shown later here to let you check) of 299 kHz.

So I set up the circuit and the scope, at an Iset = 386 mA, I have measured the ripple, which translates in the upper current of 493 mA and lower of 343 mA, with a delta of 150 mA (32% of total hysteresis) for the hysteresis control. Therefore I verified by applying the measurements on the scope to the calculations (with the same formulas used for the calculations on paper):

$t_r\ =\ \frac{150\ mA}{12\ V\ -\ 2.9\ V}\cdot 68\ \mu H\ =\ 1.12\ \mu s$

$t_f\ =\ \frac{150\ mA}{2.9\ V\ +\ 0.25\ V}\cdot 68\ \mu H\ =\ 3.24\ \mu s$

Which brings it to a frequency of 1/4.36 µs = 230 kHz. Assuming the formulas are right (are just derived from the inductor equation), the uncertainties in the sense resistor, in the inductor, diode and LED, the Vs voltage, including also the imprecision of the scope's cursors and the reference voltage, I feel in the same ballpark of 316 kHz shown in the acquisition, and even more in the theoretical calculations of 299 kHz. The acquisition shows the two voltages at the sense resistor and is filtered a bit on the scope to have a clean purple trace, otherwise there were just some switching noise on the edges:

Also, the two channels are showing a toothsaw because of the drop on the Vs line I suppose (may be matter of another question), where the actual drop of the sense resistor is the purple trace (you can see that the slopes of the channels 2 and 4 are not perfectly parallel: this is due to the sense resistor's drop, which should be the useful value).

So, coming to the question, with such regulators basically - as far I've understood - you cannot use an output capacitor, as it will introduce a very slow time constant (I think a lower frequency pole) putting down the switching frequency. But reading the Infineon App Note 213, I realized that they put a capacitor across the LEDs, in order to absorb the higher frequency component.

So I tried to calculate my required value to reduce the ripple with the support of a TI datasheet of the LM3404, which explain what to calculate from the equivalent circuit of the capacitor in parallel with the LED:

I've found, by checking the I/V curves of the LED, a dynamic LED resistance of 0.35 ohm. From a desired ripple to reduce from the 30%, I can find my desired $\Delta I_f$, and so Zc. From which I can find a capacitance and the issue that led me to ask this question.

Now, I tried to brief what I've achieved, to show that things seems to work, but something is wrong here with the ripple reduction. I've found from the calculations a capacitor of 6 µF to reduce more than half the ripple. But I put 3 x 2.2 µF X7R ceramics and tried with one and two 22 µF X5R. It does not change a single bit; it only cleans super high frequency noise, like with 100 nF cap which I tried as well.

The impedance of the 2.2 µF is shown here:

The one of the 22 µF is here:

They look lower to me than the possible ESR of the LED (which was measured from two points of the LED I/V curve, not just the LED voltage over the LED current).

Should I find a really super low ESR capacitor more than mine? Or increase the number of LEDs? Or, which is the deep reason of this question, should I find a different filtering method?

The calculations for the filtering capacitor are done starting from $\Delta I_f$, shown before in the datasheet from the LM3404, from which is just the current divider formula between the capacitor and the LED.

$R_d$ is extracted from the I/V curve of the LED (difference of two voltages, divided by the difference of the two currents):

$R_d\ =\ \frac{2.86\ V\ -\ 2.825\ V}{0.6\ A\ -\ 0.5\ A}\ =\ 0.35\ \Omega$.

For example, the requirement is to reduce ripple to +-2.5% (5% total):

$\Delta I_{f-reduced}\ =\ \Delta I_f \cdot \frac {2.5}{15}\ =\ 25\ mA$ and since the sense resistor current is equal to $\Delta I_{f}$ because it is the total current in the inductor and sense resistor, $\Delta I_f\ =\ \Delta I_L$:

$Z_c\ =\ \frac{\Delta I_{f-reduced} \cdot R_d}{\Delta I_{L} - \Delta I_{f-reduced}}\ =\ 0.07\ \Omega$ and $Z_c\ =\ \frac{1}{2 \pi f_{sw} C}$ so from the measured $f_{sw}$ I have: $C\ =\ \frac{1}{2 \pi \cdot 314\ {kHz} \cdot 0.07 }\ =\ 7.2\ \mu F$

With this example the difference is because I started from a different requirement of +-2.5%, but it tells the order of magnitude we are talking about, if it is correct.

• So - after you put caps in parallel with the LED, Rsense no longer tells you the LED current, only the overall current flowing through the LED//Cap together. You'll have to work out a way to measure the LED current more directly in that case. – brhans Jul 10 '18 at 21:42
• @winny I put caps graphs just for completeness – thexeno Jul 10 '18 at 21:47
• Do you understand ripple of 30% is by design of IC hysteresis? – Sunnyskyguy EE75 Jul 10 '18 at 21:47
• goo.gl/St7fqf a better filter with SRF tuned cap and inductor – Sunnyskyguy EE75 Jul 10 '18 at 22:53
• Because I was thinking more than 1 LED. I checked your math. I ran the LM3404HV on WebBench with a 230Khz clock, Vin min and max=12V, Iled=.39, Vf=2.85, Rd=0.35 with and without an output cap. Cap = 10µF 0.001Ω ESR and ripple = 0.112 A. No cap ripple= 0.060. Changing clock had very little effect. With o cap L increased to 180µH from 100µH. With 500khz clock L=47µH, ripple remained about the same. I feel your frustration. I do a lot of LED design work but have digital background so I use TI for their documentation and WebBench. I tried many drivers and went with LM3414HV. – Misunderstood Jul 13 '18 at 1:03

This circuit has clear analogy with a thermostat. It switches heating ON when the temperature has dropped to the lower limit. According with that the mosfet is turned ON when inductor current has dropped to the lower limit. When the mosfet is ON, inductor current grows slowly until the upper limit of the current is reached. Then mosfet is turned OFF and inductor current decays when the magnetic energy is dissipated in resistances and also partially converted to light. Temperature has the same role as inductor current. Thermal capacitance mens the same as inductance.

If you add a capacitor in parallel with LEDs you can in theory lower the light output swinging during the operation cycle, because the cap can supply a part of the led current when inductor current decays. Respectively charging the cap absorbs the peak of the inductor current. But the benefit is neglible because nobody can notice LED current high frequency swinging by eyes. Of course radio interference, which is spred by the led stripe, diminishes.

To get some benefit the total impedance of the capacitor at the operating frequency must be much smaller than the calculated dynamic impedance of the led stripe. Fast calculation shows that 15uF does all which is doable, you get nothing more if you have 2000uF. 15uF must be free of unwanted resistance and inductance to be useful. I'm not at all sure how it should be made using smaller capacitors to keep total impedance less than 35mOhm at 300 kHz.

Now the answer: If there's no unwanted radio interference nor visible light fluctuation, keep that 100nF ceramic or nothing.

• Yep, I suppose you calculated 15uF for a reduction of the ripple the you freely chosen, probably that's the maximum you can reasonably get. But then, how to verify the LED current (and not the LED+capacitor)? – thexeno Jul 10 '18 at 22:30
• @thexeno 1)have a current probe or 2)add a sense resistor in series with the led, say 50mOhm, use differential mode & two probes or 3)calculate the capacitor current I=C(du/dt) and subtract it from the total current point by point – user287001 Jul 10 '18 at 23:10
• What I don't get, is that if I put a shunt resistor across the LED, this will affect the contribute of the capacitor. Because from the equations of the LM3404, Zc is found also from the dynamic resistance of the LED, and since this must be added to the shunt, the required capacitance will change, in lower I think. So what I will read (using the shunt) is a current which will be different without the shunt resistor – thexeno Jul 12 '18 at 21:43
• @thexeno I didn't write shunt across the led, I wrote a sense resistor. It's in series with the leds and it must have quite small resistance compared to the dynamic resistance of the led stripe. – user287001 Jul 12 '18 at 21:45
• Alright my fault: with shunt I meant a resistor in series to read the current. So, this just for learning purposes, when you say that the series resistor shall be small compared to the whole LED driven, is because what I found in the previous comment? --- If so, I get now why. – thexeno Jul 12 '18 at 22:18

My solution and workarounds

Thanks to the other answers, the main issue was found: simply measure the actual LED current and not the overall voltage divider with the capacitor (of course!), and you will be fine. But how to do so? Collecting the answers here, you either:

• Measure with a sense resistor in series with the LED(s), given that the resistor is overall way lower than the overall LED(s) dynamic resistance. This may be complicated but doable.
• Extract with calculations the current capacitor, since $I = C \frac{dV}{dt}$, basically consisting in multiplying the slope of the V/s by the capacitance and subtract it from the overall current, but with this you can just assume and never really measure.

But I found a better way to directly address the issue: at 400 mA the light flux vs current is fairly linear, so I qualitatively measured the light with a photosensor (the OPT101). The frequency is 10 times its bandwidth in the bare minimum stable configuration, but with the ripple still quite visible.

Here is the setup, made just with what I had around. Is not perfect, dirty, but seems enough to work qualitatively:

The setup on the LED driver side chosen was the one in the OP which led me to use a 7.2 µF to reduce the ripple from 30% to 5% on the LED current. A 6x reduction. The calculations which led to 7.2 µF are in the OP.

As shown in the schematic, with the OPT101 with DC gain of 0.5, directly reading on the scope in AC mode the pin 5, with proper mechanical light attenuation, consisting in just keeping the LED far/inclined enough to not saturate the output. It's important to not dim from the driver! This will change the LED bias characteristics, dynamic resistance and consequently ripple attenuation efficiency with a given capacitor.

So, by reading the results I got, with no capacitor, an output from the photosensor of 35 mVp-p. Spoiler: pictures taken on the scope, not acquisition, be aware.

Then with a 2.2 µF capacitor, 25 mVp-p.

And finally with 6.6 µF (which is less than 7.2 µF, but was what I had at the moment) I've measured 11 mVp-p.

Now, theoretically with 6.6 µF, without considering parasitics, the ripple can be reduced down to 27 mA, which is 5.5 times lower than the original 150 mA. From measurements described above, the output voltage of the sensor is reduced more than 3.2 times.

I consider it within the same ballpark, since I haven't taken into account various parasitics, non-idealities and rounding from graphs which may contribute to a lower ripple attenuation. From this result I feel confident in the attenuation that could be obtained with 7.2 µF, since at least the theoretical calculations seems to be correct.

• Quite an idea! Harmfully I didn't invent it. But what is the practical benefit which is achieved by making LED current less swinging at several hundred kHz (other than reduce radio interference)? – user287001 Jul 14 '18 at 15:25
• I wanted to understand the boundaries of such architecture. But trying to answering, the only "practicality" I can think of at the moment, is just lumen stability very high. But primarily my concern was related to EMI. – thexeno Jul 14 '18 at 20:21

The ripple current of 30% for LED light at this frequency is no different in appearance if it were absent. THis is by design since the hysteresis spec is 30%. {±15% typ} . Reducing the current slew rate also reduces radiated and conducted emissions.

But for a hypthetical SMPS design that requires say 1% ripple , there is a lot of work to do. The irregular triangle current wave occurs due a much faster charge current than load. If the charge currents were exactly equal, there would be no ripple but then it would be linear and low efficiency.

To make it have lower triangular ripple means the hysteresis has to be reduced. This raises the frequency of switching and also increases switching loss whic rise with frequency of each transition, but then it means smaller values for LC&C and lower ESR for both.

The storage energy of the capacitor often exceeds that of the inductor and it is this Ratio of $\sqrt{L/C}=Z_o$ that defines the avearge output impedance of the source at the fundamental switching rate. The lower the source impedance to load ratio, the less load regulation error, which are inverse equals.

The consideration of adding a capacitor to regulate the triangle wave ripple has less effect than the lead-lag compensation ( gain limited differentiator ) This also improves the stability phase margin. But whatever load cap is used low ESR is essential.

The Rule of Thumb for ultra low ESR for me is << 10us=ESR*C=T~1/2f ceramic offers several orders of magnitude over electrolytics here, but has other tradeoffs. Low ESR Electrolytics are around 1~10us or 50k~500kHz so if a SMPS is operating above this frequency, the performance is marginal or poor.

• "The irregular triangle current wave occurs due a much faster charge current than load." Right. But " If the charge currents were exactly equal, there would be no ripple but then it would be linear and low efficiency." I think you mean that I obtain a regular triangle current wave. Isn't it? – thexeno Jul 14 '18 at 20:25
• Yes triangular is low loss inductive stored energy pulses being integrated. Hysteresis and switching frequency control the amplitude – Sunnyskyguy EE75 Jul 14 '18 at 20:59